サーバーに公開鍵を追加しようとしていますが、それを有効にするためにsshdサービスを再起動したくありません。その理由は、sshサービスを再起動すると、その時点でsshサービスを使用できる他のユーザーにとって混乱を招くように見えるためです。ほとんどのドキュメントでは、公開鍵を$HOME/.ssh/authorized_keys
に追加してから、sshd
サービス(systemctl restart sshd
)を再起動することを推奨しています。対象のOSはLinuxです。
私の質問は:
sshd
の再起動は必要ですか?sshd
が再起動された場合、その時点でサービスが停止していますか?$HOME/.ssh/authorized_keys
に追加した後、sshd
サービスを再起動する必要なく、sshを使用してパスワードなしの認証を設定する方法はありますか?Sshdの再起動は必要ですか?
通常はありません。 Linuxディストリビューションは通常、公開鍵認証を許可するデフォルト構成で出荷されるため、通常は構成を編集してenableに編集する必要がないため、再起動します不要です。 sshd_config
で何かをしなければならなかった場合でも、そのファイルを編集した後に一度だけ再起動する必要があります。承認されたキーファイルの後の編集ごとではありません。
Sshdを再起動する必要さえないことに注意してください。 man sshd
から:
sshdは、ハングアップシグナルSIGHUPを受信すると、それを開始した名前とオプションを使用して自身を実行することにより、構成ファイルを再読み取りします。
/usr/sbin/sshd
。
また、sshdの一般的なsystemdサービスはこれを認識しているため、代わりにsystemctl reload sshd
を実行できます。
Sshdが再起動された場合、その時点でサービスが停止していますか?
サービス停止の定義によって異なります。 sshdを再起動するだけでは既存のssh接続は終了しませんが、sshdの再起動が完了するまで新しい接続は受け入れられません。
最良の方法は使用することです
ssh-copyid [email protected]
ここで、NはIPアドレスです。
OR
ssh-copyid user@fqdn
ここで、fqdnは完全修飾ドメイン名です(例:server.domain.com)
これはデーモンの再起動を必要としません