UserA와 UserB라는 2명의 사용자가 있습니다. userB는 userA로 일부 명령을 실행해야 합니다. 이러한 옵션을 /etc/sudoers
다음과 같이 지정했습니다 .
userA ALL=(ALL) ALL
userB ALL=(vinoth) /sbin/fdisk
userB로 이 명령을 실행합니다.
sudo -u userA fdisk -l
사용자 B의 비밀번호를 묻습니다. 암호를 입력한 후 명령은 fdisk 출력을 제공하지 않습니다.
답변1
구성에서 다음을 허용합니다.
userA
임의의 사용자로 임의의 명령 실행userB
fdisk
다음으로 실행vinoth
fdisk
기본적으로 장치 접근 권한이 필요하며root
, 예를 들어 실행할 수 없습니다userA
. 실행할 수는 있지만fdisk -l
결과가 인쇄되지는 않습니다.최종
sudo
명령은 전이적이지 않습니다.userB
account 를 사용하여 계정에서 명령을 실행 하면 자격 증명을 사용하여 실행sudo -u userA <command>
되며<command>
설정이 정의되어 있다는 사실이userA
이 명령에 적용되지 않습니다.userA
sudoers
사용sudo -u
userB
명령 실행을 허용하려면 userA
다음을 입력해야 합니다 sudoers
.
userB ALL=(userA) /usr/bin/whoami
그런 다음 쉘에 로그인 userB
하고 다음을 실행하십시오.
$ sudo -u userA whoami
userA
하지만 userA
실행 권한이 있으면 whoami
실행됩니다. 맞지 않습니다 fdisk
.
fdisk
일반 사용자에 대해 활성화
fdisk
root
계정 자체 에 국한되지는 않지만 디스크 장치( /dev
저장되어 있고 일반 사용자가 액세스할 수 없는 곳)에 대한 액세스가 필요합니다. 사용자에게 실행 권한을 부여하려면 fdisk
다음을 수행할 수 있습니다.
sudo
계정에 대해 활성화합니다.sudo fdisk -l
효율적으로 운영한다는 것은fdisk
계정별로 운영한다는 것을 의미합니다root
.disk
그룹 에 계정을 추가하면fdisk -l
계정 자격 증명 없이도 실행할 수 있습니다sudo
.