メインコンテンツへスキップ
  1. Posts/

Ubuntuインストール時にGitHub経由でSSHキーを登録する方法

  ·   ·1436文字
Tech Ubuntu GitHub SSH
目次

久しぶりに型落ちのPCにUbuntu Serverをインストールし直したのですが、SSH接続設定を楽にする便利な機能があったので紹介します。
GitHubに登録したSSH公開鍵をインストールするUbuntu ServerのSSHキーに設定する方法です。 Ubuntu Server 24.04.1 LTS

簡単な図解
#

記事の流れを説明した図
記事の流れを説明した図

鍵の生成
#

今回はWindowsで鍵を生成します。GitHubの公式ドキュメントもあわせて参照してください。 新しいSSHキーを生成する

ssh-keygenで鍵生成
#

公式はコメントにメールアドレスを入力することを推奨していますが、個人的には分かりづらいのでなんの用途かをコメントするようにしています。
PowerShellを開いて.sshフォルダーに移動してファイ名を指定して生成。passphraseは空にしました。

ssh-keygen -t ed25519 -C "ubuntu server test" -f "ubuntu-test"
PowerShellで鍵を生成
PowerShellで鍵を生成

.sshフォルダーに公開鍵ubuntu-test.pubと秘密鍵ubuntu-testファイルが生成されます。

.sshフォルダー画面
.sshのフォルダー画面

キーの確認
#

キーの確認もしておきます。

ssh-keygen -l -f ubuntu-test.pub
PowerShellで鍵確認
PowerShellで鍵確認

GitHubにSSH公開鍵を登録
#

今回は自環境を汚したくないのでWeb経由で公開鍵を登録します。GitHubアカウントへの新しいSSHキーの追加 決してghコマンドをつかえないわけではありませんよ🫣

GitHubへログインし、 Settings > SSH and GPG keysNew SSH keyボタンから公開鍵を登録します。(https://github.com/settings/keys
Titleに好きな名前、Keyに公開鍵(ubuntu-test.pub)の中身をコピペします。

GitHubのSSH Key追加画面
GitHubのSSH Key追加画面
鍵が追加されたか確認
鍵が追加されたか確認

API経由からも確認しておきましょう。https://github.com/<username>.keys

Ubuntu Serverのインストール
#

Ubuntu Serverインストール時に言語やユーザー名を決めた後にSSHの設定があります。

Import SSH keyからGitHubを選択してユーザー名を入力するとGitHubアカウントに登録されているSSH Keyをすべてインポートします。

Ubuntuインストール時のSSH Keyインポート画面

すべてのSSH Keyをインポートした後につかわないものは削除しましょう。

インポート後のSSH Key削除画面

余談

1枚目のAllow password authentication over SSHはチェック外してもよかったかも
実機を想定してこの記事を書いてますが、Virtual Boxでインストールする場合は自動インストールをスキップに✅を入れてください。 仮想マシンへのSSH接続設定はもっとよい方法があるのでこんな面倒なことしないでください。

Ubuntu ServerへSSH接続
#

.ssh/configの設定
#

.ssh/configにUbuntu Serverの接続情報を追記します。

Host test #設定名
HostName 127.0.0.1 #Ubuntu ServerのIPアドレス
User ubuntu-test #Ubuntu Serverのユーザー名
Port 22
IdentityFile "C:\Users\main\.ssh\ubuntu-test" #秘密鍵

接続確認
#

.ssh/configHostで設定した名前を指定してSSHで接続します。

ssh test
Ubuntu ServerへSSH接続
Ubuntu ServerへSSH接続

無事にUbuntu ServerにSSH KeyをGitHub経由でインポートし、SSH接続の確認ができました。

最後に
#

最近追加された機能なのかなと思ったのですが、18.04.2 LTSからある機能らしいです。
よく考えてみたらいつもDesktopの方をインストールしてました。🫠

関連記事

Komgaの使い方とMihonアプリでの閲覧
  ·   ·1893文字
Tech Media Server Komga Mihon
Komgaのインストール:NASのマウント方法とDockerをつかった構築
  ·   ·1255文字
Tech Media Server Komga Docker TrueNAS NAS
ローカルネットワークの名前解決のためだけに使う Pi-hole on Docker
  ·   ·2495文字
Tech Domain DNS Docker Pi-hole
ずぼらな人のための Squarespace(旧Google Domains)から CloudFlare へのドメイン移管
  ·   ·1827文字
Tech Domain Cloudflare Squarespace Google Domains