【GitHub】SSH接続の方法とメリットについて解説します【初心者向け】

スポンサーリンク
GitHubでssh接続する方法 ノウハウ
GitHubでssh接続する方法
この記事は約6分で読めます。

こんにちは。よっしーです。

今日は、GitHubにssh接続する方法を説明します。

先日、GitHubについて説明しましたが、GitHubにSSH接続する方法について説明をしていなかったため、gitコマンドの一部が実行できなかった可能性があると思いました。

なので、今日は補足として、GitHubへのSSH接続について説明します。

スポンサーリンク

SSHとは

SSHとは、Secure Shellの略で、安全な通信を行うためのプロトコルの一つです。

SSHを使用することで、ネットワークを介して別のコンピュータに安全にアクセスすることができます。

具体的には、パスワードやデータなどの情報を暗号化して送信し、盗聴や改ざんなどの攻撃から保護されます。

SSHは、主にリモートでのコンピュータの管理やファイル転送、トンネリングなどに使用されます。

また、SSHには、パスワード認証だけでなく、公開鍵認証にも対応しており、より高いセキュリティを提供します。

SSHは、LinuxやUnixなどのサーバーにリモートでアクセスするために広く使用されています。

SSHクライアントとSSHサーバーの両方が必要で、SSHクライアントを使用してSSHサーバーに接続し、操作を行います。

GitHubでSSH接続するメリット

GitHubでSSH接続を使用する主な理由は、セキュリティと便利さです。

SSH接続を使用することで、パスワード認証に比べてより高いセキュリティを提供できます。

SSHキーを生成してGitHubに登録することで、GitHubにアクセスする際にパスワードを入力する必要がなくなります。

また、SSHキーはパスワードよりも長く、ランダムに生成されるため、より安全性が高くなります。

つまり、SSH接続を使用することで、ユーザー名やパスワードなどの機密情報を暗号化し、不正アクセスを防止することができます。

GitHubでは、SSH接続を使用することで、リモートリポジトリへのアクセスがより簡単になります。

SSH接続を設定すると、毎回ユーザー名やパスワードを入力する必要がなくなり、自動的に認証されるため、作業効率が向上します。

また、SSH接続を使用することで、パブリックなリポジトリであっても、自分のプライベートキーを使ってセキュアにアクセスすることができます。

これにより、コミットやプッシュなどの操作を、安全に行うことができます。

そのため、SSH接続はGitHubの使用をよりセキュアかつ便利にするために推奨される方法です。

GitHubにSSH接続する方法

GitHubでSSH接続する方法は以下の手順で行います。

  1. SSHキーの生成
  2. 公開鍵の登録
  3. SSH接続のテスト

以上の手順で、GitHubにSSH接続することができます。

SSH接続を使用することで、より安全で便利なGitHubの利用が可能になります。

それでは、一つづつ作業を説明していきます。

SSHキーの生成

ローカルマシン上でSSHキーを生成します。

ターミナルを開いて、ssh-keygenコマンドを実行します。

ssh-keygen -t ed25519 -C "自身のメールアドレス"

このコマンドは、SSHキーペアを生成するために必要な情報を求めます。

Enter file in which to save the key (/Users/username/.ssh/xxx): 

ホームディレクトリの .ssh というディレクトリに xxx という名前の鍵を作成するかどうかを聞いていきますので、特に変更がなければ、エンターを押しましょう。

すでに、xxx というファイルが存在すると上書きされるので、注意しましょう。

もし、違う場所にxxxを作成したければ、ファイルパスを入力して、エンターを押しましょう。

Enter passphrase (empty for no passphrase):

パスフレーズの入力を求められますが、エンターを押しましょう。パスフレーズを入力してもよいですが、自分はなしで作成しています。

Enter same passphrase again:

上記と同じパスフレーズの入力を求められますので、同じパスフレーズを入力したら、エンターを押しましょう。パスフレーズなしの場合は、そのままエンターを押します。

これで指定の場所に鍵ファイルが作成されますので、確認しましょう。

ls -l /Users/username/.ssh/

xxx と xxx.pub の2つのファイルが作成できていることが確認できます。

xxx が秘密鍵で、xxx.pubが公開鍵になります。

なので、xxxの秘密鍵は自分以外に知られないようにしましょう。

公開鍵の登録

先程生成したSSHキーの公開鍵をGitHubに登録します。

GitHubのWebサイトにアクセスし、[Settings]→[SSH and GPG keys]の順にクリックします。

下記のサイトにアクセスすると目的のサイトに遷移できます。

[New SSH key]ボタンをクリックして、SSHキーのタイトルと公開鍵を貼り付けます。

SSH接続のテスト

SSH接続が正しく設定されているかどうかをテストします。

ターミナルで以下のコマンドを入力し、SSH接続を試みます。

$ ssh -T git@github.com
# 接続が成功した場合、GitHubからのメッセージが表示されます。

補足

複数のアカウントがある場合

上記の説明した方法では1アカウントしか接続できません。

ここでは、複数アカウントがあり、使い分けたい場合の説明をします。

仮に aaa と bbb というGitHubのアカウントを持っていたとします。

各アカウントの公開鍵、秘密鍵は作成済みで、GitHubに公開鍵を設定済みの状態だとします。

このとき ~/.ssh/config というファイルに下記の文字列を追加します。

# aaa 用のgithub.com のホスト名
Host aaa.github.com
  HostName github.com
  IdentityFile ~/.ssh/aaa.private # aaaの秘密鍵のパス
  User git

# bbb 用のgithub.com のホスト名
Host bbb.github.com
  HostName github.com
  IdentityFile ~/.ssh/bbb.private # bbbの秘密鍵のパス
  User git

そうすると、下記のコマンドでSSH接続が確認できます。

$ ssh -T git@aaa.github.com
# aaaのアカウントで接続が成功した場合、GitHubからのメッセージが表示されます。

$ ssh -T git@bbb.github.com
# bbbのアカウントで接続が成功した場合、GitHubからのメッセージが表示されます。

こうすることで、各アカウントのホスト名でGit操作(git clone)をすることができるようになります。

公式ガイド

下記の公式サイトでもSSH接続する方法の記載がありますので、参考にしてみてください。

おわりに

今日は、GitHubでSSH接続する方法について説明しました。

GitHubを利用するときは、大抵の現場で使用されている方法だと思いますので、是非試してみてください。

それでは、またあしたー

コメント

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