GitLabにSSH接続する

もともとGitLabにはhttps接続していたが、毎回IDパスワードを聞かれるのでSSH接続を試した。

接続手順

SSHキーの作成

ローカルPCのPowerShellでSSHキーを生成する。

ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

解説

  • -t rsa:暗号化方式(type)を RSA に指定
  • -b 4096:鍵の長さを 4096 ビットに指定
  • -C “your_email@example.com”:鍵を識別するために付与するコメント

鍵の保存場所を聞かれるので、場所だけ確認してそのまま Enter。※鍵の保存場所を変えたければ、ここで指定する。

パスフレーズを聞かれるので、特に設定せずにそのまま Enter。※設定したければ設定する。

先ほど確認した保存場所に、以下のファイルが作成される。

  • id_rsa:秘密鍵
  • id_rsa.pub:公開鍵(GitLab 等に登録する)

後で使うので、id_rsa.pub をテキストエディタ等で開いておく。

■ GitLabに公開鍵を登録する

GitLab > 自分のアイコンをクリック > Edit Profile
サイドバーの「SSH Keys」 > Add new key

先ほどテキストエディタで開いておいた id_rsa.pub の内容を貼り付けて登録する。

GitLabに公開鍵を登録する

GitLab > 自分のアイコンをクリック > Edit Profile
サイドバーの「SSH Keys」 > Add new key

先ほどテキストエディタで開いておいた id_rsa.pub の内容を貼り付けて登録する。

インシデント

SSHキーを登録したのに、username や password を聞かれる場合がある。どの形式で通信するかは、リモートの設定に依存する。

以下のコマンドで設定を確認する。

git remote -v
  • origin https://~~ となっていたら HTTPS 接続になっている。
  • origin git@gitlab.com:~~ となっていたら SSH 接続になっている。

HTTPS 接続になっていた場合は、以下のコマンドで SSH 接続に変更する。

git remote set-url origin git@gitlab.com:username/repo.git

そもそもまずSSH接続できるのか確認したい場合は以下。

ssh -T git@gitlab.com

コメント

タイトルとURLをコピーしました