#author("2020-01-20T01:36:31+09:00","","") #author("2020-01-20T01:43:43+09:00","","") [[Raspberry Pi]] ---- #contents ---- *sshd 設定 [#dcfb12fd] デフォルトでは、ユーザー名とパスワードで、ssh ログインできる状態です。 少しでもセキュリティを強化するために、認証キー必須の方式に変更します。 **ssh key の生成 [#nc858053] +ssh 接続のための秘密鍵 id_rsa と公開鍵 id_rsa.pub を生成します。 $ ssh-keygen -t rsa -b 4096 -C [メールアドレスなどのコメント] ※ .ssh 配下に、id_rsa, id_rsa.pub が生成されます。 +id_rsa.pub を .ssh/authorized_keys に追記します。 $ cat .ssh/id_rsa.pub >> .ssh/authorized_keys +ファイルアクセス権限を変更します。 chmod 700 .ssh chmod 600 .ssh/* +.ssh/id_rsa ファイルを接続元PC側に持ってきます。 ++例) Tera Term Pro を利用している場合 $ mv .ssh/id_rsa . $ chmod 644 id_rsa ++Tera Term Pro の「ファイル(F)」→「SSH SCP...」を選択する。 ++下図の設定をし、[Receive] を押下する。 +-------------------------------------------+ +-------------------------------------------+ | From: [ ] [ Send ] | | To: [ ] [Cancel] | | ----------------------------------------- | | From: [~/id_rsa ] [Receive] | | From: [id_rsa ] [Receive] | | To: [<任意のディレクトリ> ] | +-------------------------------------------+ ++Raspberry Pi 上から秘密鍵 (id_rsa) を削除する。 $ rm id_rsa ※本来は、秘密鍵(id_rsa)をネットワーク上に流さないようにするため、接続元PC上で公開鍵(id_rsa),秘密鍵(id_rsa.pub)を作成し、id_rsa.pub を接続先の .ssh/authorized_keys に追加します。 **sshd の設定 [#rb389373] /etc/ssh/sshd_config ファイルの設定変更ポイントを以下に記します。 +Port (default:22) # 変更しておくと、気休め程度であるがセキュリティUP # 変更した場合、クライアント側はポート番号を明示的に指定する必要があります。 Port [任意のポート番号] +PermitRootLogin # no を指定して、root ログインを拒否します。 # ※きちんと一般ユーザーでログインが可能であること、 # su または、sudo コマンドでルート権限での操作が可能であること # を確認した上で設定してください。 # # 以下のオプションも指定可能であるが、基本的に no を設定しましょう。 # without-password : パスワード認証の場合だけ拒否 # forced-commands-only : 公開鍵認証でパスフレーズが設定されている場合のみ許可 PermitRootLogin no +PasswordAuthentication # パスワードのみによる認証を無効化する。 PasswordAuthentication no +ChallengeResponseAuthentication # チャレンジレスポンス認証を無効にする。 # PasswordAuthentication だけを no にしても、チャレンジレスポンス形式の # パスワードによる認証機能が無効化されないため、 # パスワードのみによる認証を無効化したい場合、本設定も no にする。 ChallengeResponseAuthentication no ---- その他設定(必要に応じて実施) + **sshd の再起動 [#l82d7518]