특정 사용자가 sudo를 사용하여 특정 명령을 실행하도록 허용하려고 하는데 CentOS 7에서는 비밀번호를 묻는 메시지가 표시되지 않습니다. 그래서 visudo
파일의 첫 번째 줄과 마지막 줄에 다음 줄을 추가해 보았습니다.
testuser ALL=(ALL) NOPASSWD: /home/testuser/script.sh
나도 시도했다
testuser ALL= NOPASSWD: /home/testuser/script.sh
그런 다음 루트로서 su -u testuser
해당 사용자로 전환을 실행했는데 sudo ./script.sh
여전히 sudo /home/testuser/script.sh
비밀번호를 묻는 메시지가 표시됩니다. 이 스크립트를 비밀번호 없이 실행하려면 추가로 수행해야 할 작업이 있나요?
답변1
댓글에 내 답변을 다시 게시합니다.
다른 포럼에서 작동하는 솔루션이 있는 스레드를 찾았습니다. sudoers 파일을 편집하지 말고 /etc/sudoers.d/xxxx
.
sudo visudo -f /etc/sudoers.d/testuser
그런 다음 추가했습니다.
testuser ALL=NOPASSWD: /home/testuser/script.sh
파일에 추가하고 마침내 비밀번호 없이 스크립트에서 sudo를 실행할 수 있습니다.