セキュリティを強化するために、Ubuntuサーバーでsudoを使用するには秘密鍵が必要です。以下の説明に従ってsudoの秘密鍵認証を追加しました。https://superuser.com/questions/164078/how-to-make-shared-keys-ssh-authorized-keys-and-sudo-work-together。また、/etc/pam.d/sudo
次のように読んでパスワードベースの認証を無効にしてみました。
#%PAM-1.0
auth required pam_env.so readenv=1 user_readenv=0
auth required pam_env.so readenv=1 envfile=/etc/default/locale user_readenv=0
auth [success=1 default=ignore] pam_ssh_agent_auth.so file=/etc/security/authorized_keys
auth requisite pam_deny.so
auth required pam_permit.so
auth optional pam_cap.so
@include common-account
@include common-session-noninteractive
うまくいくようですが、大きなセキュリティホールを見落としたのではないかどうかを確認したかったです。また、秘密鍵なしでsudoを使用しようとすると、失敗する前に3回試みます。
Sorry, try again.
Sorry, try again.
Sorry, try again.
sudo: 3 incorrect password attempts
あまりありませんが、セキュリティ警告メールが毎回来るので、一度だけやってみるのが最善です。
答え1
この設定を変更できるはずです。
auth [success=1 default=ignore] pam_ssh_agent_auth.so file=/etc/security/authorized_keys
これに関して:
auth [retry=1 success=1 default=ignore] pam_ssh_agent_auth.so file=/etc/security/authorized_keys