세분화 된 sudoers 구성 (허용 된 명령 줄 인수)


20

사용자가 실행할 수있는 간단한 방법이 있습니까 (예 :

/usr/bin/pacman -S -u

그를 달리지 않고 루트로

/usr/bin/pacman -S -u some_package

?

라인

user ALL=(root) NOPASSWD: /usr/bin/pacman -S -u

둘 다 허용하고

user ALL=(root) NOPASSWD: /usr/bin/pacman -S -u ""

의미 적으로 동등한 것으로 보입니다.

답변:


27

귀하의 경우 다음과 같이 시도하십시오.

Cmnd_Alias PACMAN = /usr/bin/pacman -S -u, ! /usr/bin/pacman -S -u some_package
user ALL=(root) NOPASSWD: PACMAN

sudoers 파일에서 [az], [0-9], * 등과 같은 쉘 글로브 패턴을 사용하여 특정 패턴과 일치하는 패키지를 제외 할 수 있습니다.


3

원하는 작업을 수행하고 sudo 액세스 권한을 부여하는 스크립트를 작성하십시오.

또한이 환경에서 실행되는 환경이 전혀 네트워킹에 액세스 할 수 없는지 확인하거나 고유 한 dns를 사용하여 미러를 스푸핑 한 다음 pacman에 의해 설치 될 때 임의의 코드를 루트로 실행할 수 있습니다.


그게 전부는 우아한 방법 기본적으로 지원에게 정확한 주어진 경우 sudo를하지
마티아스는 크럴

1
보안 경고에 대한 안 최고의 솔루션,하지만 일
아론 J 랭
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.