Raspberry PiのSSH接続、まだパスワード認証になっていませんか?
安全にSSH接続するには、公開鍵認証方式にするべきです。
今回、Raspberry PiのSSH接続をパスワード認証から公開鍵認証に変更する方法について解説します。
また、更にセキュリティを強化するため、ポート番号も変更しちゃいましょう!
TeraTermで公開鍵、秘密鍵の生成
公開鍵、秘密鍵を生成する方法はいくつかありますが、今回は私が簡単だと思うTeraTermを使った方法を紹介します。
TeraTermウィンドウの「設定」->「SSH鍵生成」を選択すると次の画面が表示されます。
鍵の種類はRSAを選択し、生成ボタンを押しましょう。
次に鍵のパスフレーズを入力し、「公開鍵の保存」、「秘密鍵の保存」ボタンを押し、鍵ファイルを保存します。
これだけで公開鍵、秘密鍵の生成は完了です!簡単ですね。
公開鍵をRaspberry Piに登録する
次に公開鍵をRaspberry Piに保存します。
保存はTeraTermのSCP転送機能を使うと楽ちんです。
SCP転送機能はTeraTermウィンドウに公開鍵ファイルをドラッグ&ドロップするだけ。
以下の画面が現れますのでOKを押しましょう。Raspberry Piのホームディレクトリに公開鍵ファイルが保存されます。
公開鍵をRaspberry Piに保存したら名前をauthorized_keysに変更し.sshディレクトリに移動します。
$ mv id_rsa.pub .ssh/authorized_keys
所有者がauthorized_keysを実行出来るよう.sshのパーミッションを変更しておきます。
$ chmod 700 .ssh
SSHの設定変更
SSHの設定ファイルsshd_configを変更し、パスワード認証から公開鍵認証にします。
まず、念のためsshd_configをバックアップしておきます。
$ cp /etc/ssh/sshd_config /etc/ssh/sshd_config_backup
続いてsshd_configのファイル書き換え作業です。
$ sudo nano /etc/ssh/sshd_config
以下のようにポート番号変更、公開鍵ファイルの指定、パスワード認証を無効化します。
#Port 22
Port XX
AuthorizedKeysFile %h/.ssh/authorized_keys
#PasswordAuthentication yes
PasswordAuthentication no
これで公開鍵認証に変更されたはずです。
SSHサーバー再起動
最後にSSHサーバーを再起動しましょう。
$ sudo /etc/init.d/ssh restart
TeraTermでSSH接続
パスワード認証から鍵認証に変更したので、TeraTermのSSH接続方法が変わります。
まず、TCPポート欄に設定したポート番号を入力します。
次の表示に進んだらパスフレーズに鍵生成時に設定したパスワードを入力します。
そして、秘密鍵を指定する流れです。
SSH接続出来たでしょうか?
まとめ
Raspberry PiのSSH接続をパスワード認証から公開鍵認証に変更する方法について解説しました。
安全にSSH接続するために、公開鍵認証方式にしましょう!
最後までお読み頂きありがとうございました。