1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

GitHubへのアクセスをSSH認証に切り替える初期設定方法

Posted at

GitHubへのアクセスをSSHに切り替えることで、より安全にリポジトリを操作できるようになります。この記事では、SSHキーの生成からGitHubへの登録、設定確認までの初期設定方法を分かりやすく解説します。

1. SSHキーを生成する

まずは、SSHキーを生成します。以下のコマンドをターミナルに入力してください。

ssh-keygen -t ed25519 -C "your_email@example.com"
  • -t ed25519 は最新の推奨される暗号方式です。
  • -C はキーに紐づけるメールアドレスを指定します。

コマンドを実行すると、キーを保存する場所を聞かれます。デフォルトの場所(~/.ssh/id_ed25519)で問題ないので、そのままEnterを押します。次に、パスフレーズを設定するかどうかを聞かれますが、空でも設定しても構いません。

2. SSH公開鍵をGitHubに登録する

次に、生成したSSH公開鍵をGitHubに登録します。

公開鍵の確認

以下のコマンドで、公開鍵を確認します。

cat ~/.ssh/id_ed25519.pub

コマンドを実行すると、公開鍵が表示されるので、これをコピーします。

GitHubに公開鍵を登録

  1. GitHubにログインし、右上のプロフィールアイコンをクリックして、「Settings」を選択します。
  2. 左側のメニューから「SSH and GPG keys」を選び、「New SSH key」をクリックします。
  3. 「Title」に任意の名前を入力し、「Key type」はAuthentication Keyを選択、「Key」欄に先ほどコピーした公開鍵を貼り付けて「Add SSH key」をクリックします。

3. SSH接続の確認

次に、GitHubとSSH接続が正常に行えるか確認します。

ssh -T git@github.com

初めて接続する場合、ホストを確認するメッセージが表示されるので、「yes」と入力します。成功すると、次のようなメッセージが表示されます。

Hi username! You've successfully authenticated, but GitHub does not provide shell access.

このメッセージが表示されれば、SSH接続の設定は完了です。

4. グローバルにGitの設定を変更する方法

まず、Gitの設定を変更して、すべてのリポジトリでデフォルトでSSHを使うように設定します。

  1. Gitの設定ファイル(~/.gitconfig)に設定を追加することで、常にSSHで接続するようにします。以下のコマンドをターミナルに入力して、SSHをデフォルトに設定します:

    git config --global url."git@github.com:".insteadOf "https://github.com/"
    
  2. これで、HTTPSのURLでクローンしたり、GitHubのリモートにアクセスしようとすると、自動的にSSHのURLに置き換えてくれます。

5. 手動でSSHを指定してクローンする方法

もし新しいリポジトリをクローンする場合は、最初からSSHでクローンすることもできるよ。GitHubのレポジトリページで「Code」ボタンをクリックして、SSHのURLを選んでクローンします。

git clone git@github.com:username/repository.git

6. 既存のリポジトリをSSHに変更する

もし既にクローンしたリポジトリがHTTPSで設定されている場合も、SSHに簡単に変更できます。

  1. リモートURLを確認する:

    git remote -v
    
  2. リモートURLが https://github.com/username/repository.git のようになっていたら、以下のコマンドでSSHに変更します:

    git remote set-url origin git@github.com:username/repository.git
    

username/repository の部分は、実際のGitHubのユーザー名とリポジトリ名に置き換えてください。これで、GitHubに接続する際に毎回SSHを使うように設定しました。

まとめ

これでGitHubへのアクセスをSSH認証に切り替える初期設定が完了しました。セキュリティ面で強化されるため、今後のプロジェクトで積極的にSSHを利用していきましょう。


必要に応じて、GitHubの公式ドキュメントも参考にしてください。

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?