
샌드박스 VM 환경에는 방화벽이 설정되어 있고 로컬 시스템 외부에서 액세스할 수 없는 Ubuntu Linux가 설정되어 있습니다. 따라서 해당 VM에서 관리자(내가 설정한)에게 비밀번호 없이 sudo를 사용하여 무엇이든 실행할 수 있는 기능을 제공하고 싶습니다.
이것이 안전하지 않다는 것을 알고 있지만 이 VM은 항상 켜져 있지 않으며 실행하려면 개인 비밀번호가 필요합니다. 따라서 이것이 "안전"하지 않더라도 원하는 기능을 얻을 수 있는 방법이 있습니까?
답변1
에서남자 sudoers:
NOPASSWD and PASSWD
By default, sudo requires that a user authenticate him or herself
before running a command. This behavior can be modified via the
NOPASSWD tag. Like a Runas_Spec, the NOPASSWD tag sets a default for
the commands that follow it in the Cmnd_Spec_List. Conversely, the
PASSWD tag can be used to reverse things. For example:
ray rushmore = NOPASSWD: /bin/kill, /bin/ls, /usr/bin/lprm
would allow the user ray to run /bin/kill, /bin/ls, and /usr/bin/lprm
as root on the machine rushmore without authenticating himself.
또 다른 태그는 ALL
ray 사용자가 비밀번호 없이 모든 호스트에서 명령을 실행할 수 있도록 허용하는 것입니다.
ray ALL= NOPASSWD: ALL
답변2
언급한 대로 시스템이 특정 보안 환경에서 실행되지 않는 한 암호 프롬프트를 비활성화하는 것은 좋지 않습니다.
가능한 해결책 중 하나는 NOPASSWD 옵션보다 기억하기 더 쉬운 이 한 줄짜리 솔루션입니다. 관리자권한 받아 실행해보세요
$ visudo
그리고 다음 줄을 추가하세요
기본값: 사용자 이름 !인증하다
이렇게 하면 특정 사용자에 대한 비밀번호 프롬프트가 완전히 비활성화됩니다.