GitHubから公開鍵を取得する

GitHubからSSHの公開鍵を取得する方法を試してみました。自分用にメモしておきます。

GitHubに公開鍵を登録しておくと、SSHを使って接続できるようになります。この登録した鍵を公開する機能がGitHubにはあり、他のサービスのログイン設定から利用できます。例えばcould-initには計算機のインスタンスを初期化するときにSSHの公開鍵をGitHubから持ってくる機能があり、これによりインスタンスの初期化が終わると同時にログオンできるようになります。

一方で、クライアントPCを更新するなどして鍵が変化する場合があります。この場合、GitHubに対しては手作業で古い鍵を消したうえで新しい鍵を設定します。ところが、これが自動的に伝搬するわけではありません。

ということで、SSHの公開鍵をGitHubから取得する方法を試してみました。

やってみると、至極簡単です。どのような鍵が公開されているか確認するには以下のコマンドを実行します。<user-name>はGitHubのアカウント名です。

curl https://github.com/<user-name>.keys

話題のcurlコマンドです。例えば、私のアカウントに対して実行するとこうなります。

takemasa@DESKTOP-RYZEN5-3600:~$ curl  https://github.com/suikan4github.keys
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJM2GIzIgt2JcAImnzumtiu+rfS9YsmAY7RZT5F2P/X2
ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIHkOLf4svt0fmaItKOt2/IkB2NHgdFZgRJJq4D8DrjSs

したがって、GitHubから公開されている鍵でauthorized_keysを上書きアップデートするには

curl https://github.com/<user-name>.keys | tee ~/.ssh/authorized_keys

を実行します。すでに機能しているauthorized_keysを上書きするのが嫌ならば

curl https://github.com/<user-name>.keys | tee -a ~/.ssh/authorized_keys

とすれば追記できます。

コメントする

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください