前書き
今回初めてQiitaに公開をさせて頂きます。拙い知識ですがどなたかの参考になれれば幸いです。
環境について
クライアント MacOS Sonoma 14.5
サーバー側 Ubuntu Desktop 24.04 LTS
クライアント側での準備
まずはSSH Keyの作成をする必要があります。ターミナルを開いて下記のコマンドを入力してください。
ssh-keygen
保存するファイル名や場所、パスフレーズと順番に聞かれて公開鍵と暗号鍵が生成されます。
下記のような表示がされたら成功です。
The key's randomart image is:
+--[ED25519 256]--+
| ++oo . |
| ...= * |
| .* B.o . |
| ..=o. o|
| o S.o . + |
| . B.= .. + .|
| = E.=.. o |
| ..oo@ . |
| .+*.*o |
+----[SHA256]-----+
ls ~/.ssh
と叩くと
id_* //こちらが暗号鍵
id_*.pub //こちらが公開鍵
の二つのファイルが生成されていることが分かります。このうち公開鍵であるid_*.pubファイルをサーバーに転送します。
サーバー側での準備
まずopenssh-serverがインストールされていることを確認してください。ここから先はインストールされているものとして続けます。
sudo vi /etc/ssh/sshd_config
中身の下記の#を外して有効化してあげてください。
# Port 22 // ポート番号 デフォルトのまま
# PasswordAuthentication yes //パスワードログインの許可
できたらsshdを再起動して設定を反映します。
sudo systemctl restart sshd
公開鍵の転送
クライアントに戻ります。
ssh-copy-id -i .ssh/id_*.pub [username]@[相手のIPアドレス]
これでサーバーに公開鍵が送られました。
以上になります。お疲れ様でした。
補足
とても参考にしました。ありがとうございます。
補足の補足
sudo systemctl restart sshdで起動できなかった時
systemctl list-unit-files | grep ssh
でサービスの名前を確認します。きっとsshdな筈。
systemctl status sshd
enableか確かめる。