특정 옵션이 있는 명령의 경우 sudo

특정 옵션이 있는 명령의 경우 sudo

sudo일부 특수 스위치를 사용하여 프로그램을 실행하기 위해 사용자가 루트 권한을 얻도록 구성할 수 있습니까 ? 예를 들어, 스위치와 admin? 만 사용하여 루트로 명령을 실행하도록 사용자를 구성하려면 어떻게 해야 합니까?netstat-r-i

답변1

sudores 파일을 편집하고 visudo내 예에 표시된 대로 한 줄(또는 필요한 경우 그 이상)을 추가합니다.

admin ALL=/bin/netstat -r
admin ALL=/bin/netstat -i

ALL=호스트 이름, IP 또는 로컬 호스트일 수 있습니다.

sudoers 파일은 적어도 내 CentOS에서는 잘 설명되어 있습니다.

답변2

명령에 옵션을 추가하기만 하면 됩니다.

admin       ALL     = NOPASSWD: /usr/bin/netstat -i
admin       ALL     = NOPASSWD: /usr/bin/netstat -r

그러면 admin실행할 준비가 되지만 기다릴 sudo netstat -i수는 없습니다 sudo netstat.

답변3

스크립트 만들기

#!/bin/sh
netstat -i

supernetstat.sh라고 부르면(권한 755, 바람직하게는 700) sudo에서 별칭 명령을 만들고 사용자에게 권한을 부여할 수 있습니다.

답변4

sudoers 파일의 이 줄은 사용자가 useradd를 실행할 수 있도록 허용하기 위한 것입니다.

someuser     ALL=/usr/sbin/useradd * -m

여기서 *는 와일드카드 문자이고 다른 와일드카드 문자도 있습니다.man sudoers

관련 정보