[Linux] Sudo

반응형

이번 글에서는 Linux 의 Sudo 명령어에 대해 알아보겠습니다.

1. Sudo

linux 에서는 일반 user 도.. root 유저만 사용 가능한 명령어를.. 실행할 수 있는 권한을 부여받을 수 있습니다.

예를 들어 일반 user 가 'useradd' 명령어를 사용할 수 있는 권한을 부여받은 경우..

'sudo' 명령어와 함께 'useradd' 명령어를 다음과 같이 사용할 수 있습니다.

sudo useradd test

useradd 명령어는 기본적으로 root 유저만 사용할 수 있는 명령어입니다.

1-1) sudo user

위와 같이 root 유저의 접근권한을 부여받은 user 를 'sudo user' 라고 하는데.

'sudo user' 를 등록 및 수정하기 위해선 /etc/sudoers 파일을 수정해야 합니다.

이때 주의점으로는 /etc/sudoers 파일은 vi 명령어가 아닌 visudo 명령어를 사용해 편집해야 합니다.

1-2) add sudo user & group

sudo user 와 group 을 추가하는 방법은 다음과 같습니다.

예를 들어 test 라는 user 와 wheel 이라는 group 에 모든 root 권한 명령어 사용 권한을 부여하고 싶은 경우

visudo 명령어를 이용해 /etc/sudoers 파일을 열어

visudo

다음과 같이 입력한 뒤 저장합니다.

test ALL=(ALL) ALL
%wheel ALL=(ALL) ALL

group 은 group 이름 앞에 % 를 붙여줍니다.

그 결과.. sudo 권한을 부여받기 전에 접근 권한이 없던 useradd 명령어를

마치 root 유저처럼.. 사용할 수 있는 것을 확인할 수 있습니다.

sudo useradd minho

동일하게 wheel 이라는 그룹을 부여받은 user 도 정상적으로 useradd 명령어를 사용할 수 있습니다.

1-3) add sudo user & group (no password)

이때 sudo 권한을 부여받았더라도.. user 가 해당 명령어들을 실행할 때 마다 password 를 입력해야 하는데

password 입력없이 실행하기 위해선 /etc/sudoers 파일에 다음과 같이 입력한 뒤 저장합니다.

test ALL=(ALL) NOPASSWD:ALL
%wheel ALL=(ALL) NOPASSWD:ALL 

그 결과 다음과 같이 sudo 명령어로 root 권한 명령어들을 실행할 때 더이상 password 를 입력하지 않아도 됩니다.

1-4) add sudo user & group (restricted way)

물론, root 권한의 모든 명령어가 아닌.. 특정 명령어들만 사용하도록 제한할 수 도 있습니다.

이때는 /etc/sudoers 파일에 (ALL) 이 아닌 지정하고 싶은 명령어들의 위치를 작성하면 되는데

대부분의 명령어들은 /usr/sbin 위치에 path 가 있으므로.. 이곳에서 원하는 명령어를 찾아 작성하면 됩니다.

cd /usr/sbin

1-5) check given rights

특정 사용자가 부여받은 sudo 권한에는 어떠한 것들이 있는지.. 확인하기 위해선 'sudo -l' 명령어를 사용합니다.

sudo -l

이때 만약 sudo 에 등록되어 있지 않은 user 는 다음과 같이 sudo 를 실행할 수 없다고 나오며

sudo 에 등록되어 있는 사용자는 다음과 같이 부여받은 sudo 권한 목록을 확인할 수 있습니다.


반응형

'Linux' 카테고리의 다른 글

[Linux] Tar  (0) 2021.03.13
[Linux] Gzip  (0) 2021.03.13
[Linux] User & Group (2)  (0) 2021.03.13
[Linux] User & Group (1)  (0) 2021.03.13
[Linux] Switching User (SU)  (0) 2021.03.10

댓글

Designed by JB FACTORY