公開日:2022年12月29日

オリジナル公開日:2022年8月12日

最終更新日:2022年12月29日

クライアントPCからsshで公開鍵認証接続

この記事は2021年8月12日に投稿した記事を編集したものです。

経緯


ここまで、クライアントPC(Mac)からネットワーク上にあるラズパイに接続する際は、

$ ssh ユーザ名@ipアドレス
password: パスワードを入力

この形でログインしていました。

セキュリティを高めよう!


ここでセキュリティを向上するために、公開鍵認証に切り替えます。
PCで以下のコマンドを入力します。

 $ ssh-keygen -t rsa -f id_rsa_raspberry

-t で暗号化タイプを
-f で作成するファイル名を指定します。

ここでファイル名を指定しないと
過去に作ったものがあれば、上書きされてしまうので、
サービス名などを入れて差別化しておきます。

デフォルトではid_rsaとid_rsa.pubが作られます。

必要があれば、パスフレーズを入力します。
このパスフレーズは、このキーを使用するためのパスワードとなります。

この場合では
.ssh/id_rsa_raspberry.ssh/id_rsa_raspberry.pub が作られることになります。

ここで作成した.pub(これが公開鍵です)を接続先のホスト(この場合ラズパイが対象)の
~/.ssh/authorized_keys
の中に公開鍵の中身をそのまま貼り付けます。

設定と接続


.ssh/config に接続情報を記載します
ここの秘密鍵のパスを記入してなかったので接続できませんでした

Host ホスト名
    Hostname ホスト名(ipアドレス)
    User ユーザー名
    IdentityFile ~/.ssh/id_rsa_raspberry   //使用する秘密鍵のパス


ここで改めて接続してみます。
ここで、パスフレーズを設定していれば、パスフレーズを入力します。

$ ssh ユーザ名@ipアドレス
パスフレーズ: パスフレーズを入力

これで公開鍵認証を使用したssh接続ができました