GitLabへの公開鍵の登録(2026年)
はじめに_
事前にGitLabの管理者(先端情報システム工学研究室の場合は後藤)にアカウントを作成してもらい、アカウントを有効化しておくこと。
なお、Windows上(WSL上のLinux含む)やmacOSの場合は公開鍵ではなく、アクセストークンを用いること。アクセストークンの設定は以下のリンク先を参照のこと。
研究室のサーバ上でGitLabのリポジトリを使う場合はこのページで説明する公開鍵を用いる。
作業のながれ_
以下の手順で公開鍵をGitLabに登録する。
- Linuxサーバ上で公開鍵・秘密鍵のペアを作成する。
- 公開鍵をGitLabに登録する。
- 公開鍵を用いて、GitLabのリポジトリをクローンする。
Linux環境(OpenSSH)を用いた鍵ペアの作成_
まず、ssh-keygenコマンドが存在するかを確認する。ssh-keygenコマンドが存在するパスが返ってきたら、ssh-keygenコマンドを利用できる。そうでなければ、まずOpenSSHをインストールすること。
% which ssh-keygen /usr/bin/ssh-keygen (このような絶対パスが返ってきたらOK。パス自体はこれと同じでなくてもよい)
鍵ペアを作成する。Linux環境でのログイン名がgotohの場合以下のようになる。
% cd % ssh-keygen -t ed25519 -C "識別用の文字列。たとえば「KeyForUbuntuServer」" Generating public/private ed25519 key pair. Enter file in which to save the key (/home/gotoh/.ssh/id_ed25519): /home/gotoh/.ssh/id_ed25519_for_gitlab #秘密鍵のファイル名をデフォルトから変える。例えば例のようにする。 Enter passphrase (empty for no passphrase): #ログインパスワードとは異なる任意の文字列を入力する Enter same passphrase again: #もう一度同じ文字列を入力する Your identification has been saved in /home/gotoh/.ssh/id_ed25519_for_gitlab Your public key has been saved in /home/gotoh/.ssh/id_ed25519_for_gitlab.pub The key fingerprint is: #以下は鍵ペアごとに違うので注意! SHA256:62ftC4dNF7r4TQ8HDGQTjn66krhakOVFZ4HKrx/u2ww KeyForUbuntuServer The key's randomart image is: +--[ED25519 256]--+ ~中略~ +----[SHA256]-----+
鍵ペアが存在するかを確認する。id_ed25519_for_gitlab(秘密鍵)とid_ed25519_for_gitlab.pub(公開鍵)があればOK。
% ls -l .ssh ~中略~ id_ed25519_for_gitlab id_ed25519_for_gitlab.pub
GitLab用の鍵を~/.ssh/configで登録しておく。configが無い場合は以下のように作成する。
% cd ~/.ssh % touch config % chmod 600 config
configに設定を追加する。以下のコマンドを実行する。なお、以下の「GitLabのFQDN」は、GitLabが設置されているマシンのFQDN(ホスト名+ドメイン名)を記載すること。
% echo "Host aise-gitlab" >> config % echo " HostName 「GitLabのFQDN」" >> config % echo " IdentityFile ~/.ssh/id_ed25519_for_gitlab" >> config
内容を確認する。内容が間違っている場合はファイルごと作り直すこと。
% tail config
公開鍵の登録_
次にGitLabで公開鍵を登録する。
まず、GitLabにサインインする。サインインした後の画面の右上のアイコン(下の画像の赤枠)をクリックする。
アイコンをクリックしたら表示されるメニューのうち「設定」をクリックする。
左メニューの「アクセス」をクリックし、表示されるメニューから「SSHキー」をクリックする。
SSHの公開鍵を登録する。「新しいキーを追加」をクリックする。
この画面で先ほどの公開鍵を登録する。各項目については画像の後に説明する。
- 「キー」の部分には id_ed25519_for_gitlab.pub の中身をそのままコピーする。
id_ed25519_for_gitlab.pub の中身はたとえばcatコマンドなどで表示する。
% cat ~/.ssh/id_ed25519_for_gitlab.pub
- 「タイトル」部分には、「キー」を登録すると自動的に入力されるが、自分で変更してもよい。たとえば「研究室のサーバの公開鍵」とする。
- 「使用タイプ」は標準のまま(「認証と署名」)でよい。
- 有効期限は自分の卒業・修了年度末を指定する(たとえば、2027年3月卒業ならば、2027-03-31)。
入力内容を確認して、「キーを追加」をクリックする。
これで、公開鍵の登録は終わりとなる。
GitLab上のリポジトリのクローン_
Linuxサーバ上でGitLabのリポジトリのクローンをする。まず、Linuxサーバにログインする。
このサーバ上で初めてgitを使う場合は以下のコマンドでユーザ名とメールアドレスを設定しておく。以下は私の入力例。
% git config --global user.name "Yuichi GOTO" % git config --global user.email gotoh@mail.saitama-u.ac.jp
設定を確認する。
% git config -l
リポジトリをクローンする。GitLab上のリポジトリ(プロジェクト)名が「hogehoge-project」とする。
% cd % git clone git@aise-gitlab:hogehoge-project.git % cd hogehoge-project
その他のLinux上でのGitの使い方は以下を参照のこと。