どうもIbukishです。
GitLabにあるリポジトリをクローンして、ソースコード管理する際の認証方法には2つあります。
「パスワード認証」と「SSH認証」です。
パスワード認証は言葉の通り、アカウント名に対応するパスワードを入力することによって、本人であることを確認します。
一方で、SSH認証はGitLabに登録した公開鍵に対応する秘密鍵を持っている人のみが本人として認証されます。
SSH認証はパスワード認証に比べると最初の設定が少し手間ではありますが、パスワード設定に比べてよりセキュアな設定が可能です。
今回はそんなSSH認証の設定方法を紹介します。
SSH認証鍵の作成方法
まずはSSH認証鍵の作成をする必要があるので作成方法の説明をします。
Terminalを開き以下の鍵を保存するためのディレクトリに移動します。下記コマンドを実行してください。
cd .ssh/
ディレクトの移動が完了しましたら下記コマンドを実行し鍵の作成を実施します。
ssh-keygen -t rsa -b 4096 -C “GitLab登録時のメールアドレス”
ssh-keygenだけでもSSH認証鍵の作成は可能ではありますが、Gitアカウントのメールアドレスをコメントを入れて作成することが多いそうなので、それに則って作成しようと思い上記コマンドで実行しようと思います。
パスフレーズの入力を求められるので、任意のパスフレーズを入力します。
パスフレーズの設定をしない場合は何も入力せずにEnter押下で問題ありません。
パスフレーズを設定するとSSH鍵を使った認証を行う際にパスフレーズの入力を求められるようになります。
ちなみにここで入力するパスフレーズは忘れないようにしてください。忘れてしまうとSSH認証鍵の再作成が必要になります。
再作成するということはGitLabへのSSH公開鍵の再登録も必要になります。
鍵の作成に成功すると下図のような表示がされると思います。
SSH認証鍵が作成できたら次はGitLabへの登録ですね。
GitLabに公開鍵を登録する方法
GitLabに公開鍵を登録するために、まず以下のコマンドを実行して鍵の情報をクリップボードにコピーします。
公開鍵を登録する必要があるので、ファイル名は.pub拡張子が付いているファイルを選択するようにしてください。
cat ~/.ssh/ファイル名.pub | pbcopy
ちなみにですが、pbcopyはMacでのみ使用可能なコマンドでターミナルの出力内容をクリップボードにコピーしてくれます。
個人的には頻繁に使うので、ぜひとも覚えて起きたいコマンドですね。
コピーが完了しましたら、GitLabに移動します。
GitLabログインすると、ユーザーアイコンから[Settings] – [SSH Keys]を順番にクリックしていきます。
登録画面に遷移すると、先程クリップボードにコピーした公開鍵を貼り付けます。
ペーストができたら後は[Add key]を押下するだけです。押下すると以下のような画面に遷移すると思います。
これで登録が完了しました。
正しく登録できたかどうか確認しましょう。
ターミナルで下記コマンドを実行します。
ssh -T git@gitlab.com
SSH鍵の設定に成功していたら、下図のようにGitLabに歓迎されます。
では次はローカルでリポジトリをクローンする方法の紹介です。
MacでSSHを使ってGitLabのリポジトリをクローンする方法
まず、GitLabにログインします。
ログインしたらリポジトリをクローンしたいプロジェクトの画面に移動します。
ヘッダー左側の[Projects]から[Your projects]を選択するとプロジェクトの一覧画面に遷移すると思います。
一覧の中から今回自分がクローンしたいと考えているリポジトリを選択します。
選択すると詳細ページに遷移すると思います。
青い[Clone]を押下するとURLが表示されると思うので、SSHの方をコピーします。
コピーが出来たら、Terminalに移動します。
Terminalを起動したら、リポジトリをクローンしたいディレクトリに移動します。
移動できたら以下のコマンドを実行するとクローンが出来ます。
git clone コピーしたSSH用URL
無事にクローンができました。
いかかでしたか?無事に設定が完了したでしょうか?
ここまできたもう開発ができますね!
みなさまの参考になりましたら幸いです。
コメント
[…] 【GitLab】SSH認証鍵を設定する方法どうもIbukishです。GitLabにあるリポジトリをクローンして、ソースコード管理する際の認証方法には2つあります。「パスワード認証」と「SSH認証」です […]