前回、Raspberry Pi 4 model B 2GBを購入し、「さて、何しよう?」ってことになりました。
設定作業の際、Windowsマシンからリモート接続する機会が多いため、まずは、公開鍵認証によるSSHリモートログインの設定をすることにしたため、その備忘録として、下記に手順を載せます。
(1)Raspberry Pi側のSSH設定
下記画像の通り、SSHを有効にして、Rasperry Piを再起動します。
(2)公開鍵認証の設定(公開鍵と秘密鍵の作成)
下記コマンドを実行します。
$ ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/home/[サーバーアカウント名]/.ssh/id_rsa): 【Enterを押す】
Created directory '/home/[サーバーアカウント名]/.ssh'.
Enter passphrase (empty for no passphrase): 【自分で考えた秘密鍵のパスワード入力】
Enter same passphrase again: 【確認のため、同じパスワード入力】
(3)公開鍵のファイルをOpenSSHサーバへコピーする
下記コマンドを実行
$ ssh-copy-id [サーバーアカウント]@[サーバー名]
Are you sure you want to continue connecting (yes/no)? yes 【yesを入力して、Enter】
[サーバーアカウント]@[サーバー名]'s password: 【サーバーアカウントのパスワードを入力】
Number of key(s) added: 1
(以下省略)
(4)クライアント側(Tera-term)からのSSH接続
※秘密鍵(id_rsa)をクライアント側の任意のフォルダにコピーしておく
(デフォルトで、/home/[サーバーアカウント名]/.ssh/に保存されている)
Tera-termの接続で、下記の設定で、OKを押す。
ユーザ名:サーバーのアカウント名
パスフレーズ:(2)の秘密鍵で設定したパスフレーズ
認証方式:「RSA/DSA/ECDSA/ED25519鍵を使う」を選択して、サーバーからコピーした秘密鍵を選択。
公開鍵によるSSH接続成功!
(5)Rootログイン及びパスワード認証の無効化
公開鍵によるSSH接続できたため、Rootログインとパスワード認証によるログインを無効化します。
下記コマンドを実行し、下記の通り、記述を変更します。
$ sudo vim /etc/ssh/sshd_config
32行目 Rootログインの無効化
変更前) #PermitRootLogin prohibit-pass
変更後) PermitRootLogin no
56行目 パスワード認証の無効化
変更前) PasswordAuthentication yes
変更後) PasswordAuthentication no
SSH再起動
$ sudo systemctl restart ssh
以上で、パスワードによるSSHログインが出来ない様になりました。
これで安全性も高まったかな。。
最近のコメント