다른 사용자를 가장하려면 sudoers에서 user:group을 지정해야 합니까?

다른 사용자를 가장하려면 sudoers에서 user:group을 지정해야 합니까?

특정 사용자가 sudoers 파일에서 실행할 수 있는 명령을 제한하려고 했습니다. 예를 들어 다음과 같은 것이 있습니다.

dummy myserver=(ALL:ALL) /usr/sbin/reboot,/usr/sbin/shutdown

내 더미 사용자는 시스템을 재부팅하거나 종료하는 것만 허용됩니다. 의도적으로 더미 사용자가 다른 사용자를 가장하도록 허용하지만 언제든지 sudo의 -u 옵션을 사용하려고 합니다.sudo -u anotheruser whoami

다음 오류가 발생합니다.

Sorry, user dummy is not allowed to execute '/usr/bin/whoami' as anotheruser on myserver.

sudoer에서 가장하려는 사용자와 그룹을 구체적으로 호출할 수 있다는 것을 이해하지만 ALL:ALL이 작동하지 않는 이유가 궁금합니다.

귀하의 답변에 크게 감사하겠습니다.

답변1

작동 (ALL:ALL)하지만 dummy사용자는 실행할 수 없습니다 whoami. /usr/bin/whoami허용되는 명령 목록에 추가해야 합니다 . 현재 규칙에 따르면 다음 과 같이 dummy실행할 수 있습니다 ./usr/sbin/reboot/usr/sbin/poweroff어느사용자와어느그룹. 에 전화할 수 있습니다 sudo -u anotheruser /usr/sbin/reboot. 시스템을 재부팅하지 못하는 것은 아무 관련이 없습니다.sudo.

게다가 시스템에 실행 파일이 /usr/sbin/reboot없을 수도 있습니다 . /usr/sbin/poweroff필수 명령이므로 에 있어야 합니다 /sbin.

요약: /etc/sudoers파일에는 다음과 같은 줄이 포함되어야 합니다.

dummy myserver=(ALL:ALL) /sbin/reboot, /sbin/poweroff, /usr/bin/whoami

관련 정보