특정 그룹의 사용자가 sudo없이 명령을 실행할 수 있도록 허용


11

암호를 입력하지 않고 sudo로 명령을 실행할 수 있도록 / etc / sudoers를 편집하는 방법을 알고 있지만 그룹의 모든 사용자가 sudo없이 프로그램을 완전히 실행할 수있는 방법이 있습니다. (실행하려는 프로그램은 "mount"및 "umount"입니다.)


당신의 OS는 무엇입니까? NTFS 파티션, EXT 파티션 또는 광학 드라이브를 마운트하려고합니까?
nate

답변:


13

내가 실행할 수있는 사용자 그룹을 추가하고 싶었 가정 mountumount암호 않고 있습니다. 먼저 "anyname"이라는 그룹을 추가하고 싶습니다

sudo groupadd anyname

다음으로 /etc/group사용자 를 편집 하고 추가해야합니다

anyname:x:407:

이 표시되므로 쉼표로 구분 된 사용자를 추가하려는 사용자를 추가하십시오.

anyname:x:407:user1,user2,...

이제 "anyname"그룹의 구성원이 실제로 mountand umount명령을 호출 할 수 있도록 sudo를 구성해야 합니다.

/ etc / sudoers에 다음 줄을 추가하면됩니다.

%anyname ALL=NOPASSWD: /sbin/mount, /sbin/umount

이제 sudo mount암호를 묻지 않지만 항상 엉덩이 입력 sudo에 통증이 있으므로 다음을 동으로 피할 수 있습니다.

"/ usr / bin / mount"라는 스크립트를 만들 수 있으며 (umount와 비슷한 스크립트)

#! /bin/sh
sudo /sbin/mount $*

이를 좀 더 안전하게하기 위해 이러한 스크립트의 소유권을 "anyname"그룹으로 변경하려고 할 수 있습니다.

chgrp anyname /usr/bin/mount /usr/bin/umount

그런 다음 그룹 "anyname"에 대해서만 실행 가능하게하십시오.

chmod g+x /usr/bin/mount  /usr/bin/umount

편집 : 사용중인 OS에 따라 mount 및 umount 명령이있는 위치를 확인하십시오. / sbin 대신 / bin /에있을 수 있으므로 필요한 변경을 수행해야 할 수도 있습니다.

중요 : BTW는 모든 bin 폴더가 서로 링크되어있는 Arch 기반 시스템에서 스크립트를 실행하지 않습니다.


1
감사. 실제로 다음과 같은 함수 마운트를 포함하는 전역 .bashrc를 사용하여 구현했습니다. mount {sudo mount $ *}
w4etwetewtwet
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.