사용자 그룹에 대해 sudo 권한을 활성화하여 무엇이든 설치하는 방법

사용자 그룹에 대해 sudo 권한을 활성화하여 무엇이든 설치하는 방법

root/sudo 비밀번호를 입력하지 않고 소프트웨어를 설치할 수 있는 권한을 그룹에 부여하고 싶습니다. 저는 Linux Mint 20.3 Cinnamon을 사용하고 있습니다.

나는 "basicsudo"라는 그룹을 만들었습니다.

나는 먼저 타자를 친다

$ which apt-get  
/usr/bin/apt-get

그 다음에

sudo visudo

그런 다음 다음 줄을 추가했습니다.

%basicsudo ALL=(ALL) NOPASSWD: /usr/bin/apt-get install

도착하다/etc/sudoers.tmp

[...]
# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

%basicsudo ALL=(ALL) NOPASSWD: /usr/bin/apt-get install
# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

Groups and Users메뉴의 GUI를 사용하여 사용자에게 그룹을 할당합니다. 이것을 확인하기 위해 나는 실행했습니다.

$ groupname Alice 
Alice, basicsudo

내 계정에서.

Alice로 로그인 시 확인됩니다.

$ groups
Alice, basicsudo

그러나 Alice로서 다음 줄을 실행하려고 하면 성공하지 못합니다.

$ sudo apt-get install python3-pip  
[sudo] password for Alice:           
Sorry, user Alice is not allowed to execute '/usr/bin/apt-get    install python3-pip' as root on computername.

분명히 a) 비밀번호를 입력하라는 메시지가 표시되고 b) 비밀번호를 입력했는데도 실행할 수 없습니다.

이를 수행하는 올바른 방법은 무엇입니까?

답변1

변화:

%basicsudo ALL=(ALL) NOPASSWD: /usr/bin/apt-get install

도착하다

%basicsudo ALL=(ALL) NOPASSWD: /usr/bin/apt-get install *

에서 man sudoers:

명령 이름은 쉘 스타일 와일드카드를 포함할 수 있는 정규화된 파일 이름입니다. 간단한 파일 이름을 사용하면 사용자가 원하는 인수를 사용하여 명령을 실행할 수 있습니다. 그러나 명령줄 매개변수(와일드카드 문자 포함)를 지정할 수도 있습니다. 또는 ""를 지정하여 명령줄 인수 없이만 명령을 실행할 수 있음을 나타낼 수 있습니다.

Cmnd에 연결된 명령줄 인수가 있는 경우 Cmnd의 인수는 사용자가 명령줄에서 지정한 인수와 정확히 일치해야 합니다(또는 와일드카드가 있는 경우 일치해야 함).

그래서:

Sudoers 중요성
%basicsudo ALL= /usr/bin/apt-get "" apt-get매개변수 없이 실행
%basicsudo ALL= /usr/bin/apt-get apt-get임의의 매개변수로 실행
%basicsudo ALL= /usr/bin/apt-get install apt-get install추가 인수 없이 실행
%basicsudo ALL= /usr/bin/apt-get install * apt-get install더 많은 매개변수로 실행

관련 정보