사용자가 다음 명령을 사용하고 다른 디렉토리로 이동하는 것을 제한하기 위해 visudo에서 다음 명령을 사용하려고 시도했지만 작동하지 않는 것 같습니다.
myuser ALL=!/home/ubuntu,!/usr/sbin/service,!/usr/bin/apt,!/usr/bin/vi,!/usr/bin/touch
visudo를 저장했는데 변경 사항이 sudoers에 잘 반영되었습니다. 내가 여기서 뭘 잘못하고 있는 걸까?
답변1
이는 예상된 동작입니다. sudoers 파일은 sudo를 실행할 때만 참조되므로 명령에 대한 사용자 액세스가 거부되고 관련 오류 메시지가 표시됩니다.
sudo su
Sorry, user xxxx is not allowed to execute '/bin/su' as root on yyyyy.
사용자가 명령을 직접 실행하려고 하면 sudo가 관련되지 않으므로 사용자의 권한 부족으로 인해 개별 명령이 실패하면 오류 메시지가 표시됩니다.
파일 앞에 느낌표(!)를 붙여 사용자가 특정 파일을 실행하는 것을 방지할 수 있지만, 사용자가 파일을 다른 위치로 복사한 다음 해당 위치에서 실행하는 것을 방지할 수는 없습니다.