보안을 강화하기 위해 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