안녕하세요
오늘 포스팅에서는 리눅스 사용자에게 sudo 권한과 root 권한을 부여하기 위해 /etc/sudoers 파일을 수정하는 방법을 설명하도록 하겠습니다.
우선 /etc/sudoers 파일은 root 권한이 있어야지만 수정이 가능합니다.
여기서 root 권한을 얻는 방법은 2가지가 있는데요 자세한 설명은 아래의 포스팅에서 확인 가능하니 참고하시고,
[리눅스(Ubuntu/CentOS)] sudo, su를 이용하여 root권한 얻기 및 명령어 사용방법
오늘은 /etc/sudoers 파일을 수정하는 방법에 대해서만 포스팅을 하도록 하겠습니다.
우선 su 명령어를 통해 root 계정으로 로그인을 합니다.
그 다음 "visudo"명령어를 사용하여 /etc/sudoers 파일을 수정해주면 됩니다
ubuntu@wordpress:~$ su
Password:
root@wordpress:/home/ubuntu# visudo
## visudo 명령어 실행으로 /etc/sudoers에 접근
#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"
# Host alias specification
# User alias specification
# Cmnd alias specification
# User privilege specification
root ALL=(ALL:ALL) ALL
## sudo 권한을 부여할 사용자명 추가
# user 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
## sudo 권한을 부여할 그룹 추가
# %user ALL=(ALL:ALL) ALL
# See sudoers(5) for more information on "#include" directives:
#includedir /etc/sudoers.d
## 수정이 완료 되면 "Ctrl + C" -> "y" 를 차례로 입력하여 저장 후 편집기를 종료
여기서 의문점이 생기시는 분들이 계실 텐데요.
"파일을 편집할 때는 리눅스 편집기인 'vi'나 'nano'를 사용하는데 왜 'visudo' 명령어를 사용하지?"입니다.
그 이유는 기본적으로 /etc/sudoers 파일은 쓰기 권한이 없습니다.
리눅스 Permission(접근 권한) 관련 포스팅 참고
[리눅스(Ubuntu/CentOS)] Permission(접근제어, 접근권한) 확인, 변경하기 및 소유권자, 소유그룹 확인, 변경하기
물론 임시적으로 쓰기 권한을 부여한 뒤 파일을 수정하고 다시 권한을 삭제하는 방법도 있지만... 귀찮잖아요?
그리고 /etc/sudoers 에서도 "visudo"를 사용할 것을 권장하고 있으니 따라주는 게 맞다고 생각합니다.
만약 "vi"나 "nano"로 편집을 하고 싶으시다면 아래와 같이 하시면 됩니다.
## root 계정으로 로그인
ubuntu@wordpress:~$ su
Password: ## root 계정의 패스워드
## /etc 디렉토리로 이동
root@wordpress:/home/ubuntu# cd /etc
## sudoers 파일의 권한 확인
root@wordpress:/etc# ls -l | grep sudoers
-r--r----- 1 root root 755 Feb 1 02:18 sudoers
drwxr-x--- 2 root root 4096 Apr 2 13:01 sudoers.d
## sudoers 파일에 쓰기 권한(사용자) 부여
root@wordpress:/etc# chmod u+w sudoers
## sudoers 파일의 권한 확인
root@wordpress:/etc# ls -l | grep sudoers
-rw-r----- 1 root root 755 Feb 1 02:18 sudoers
drwxr-x--- 2 root root 4096 Apr 2 13:01 sudoers.d
## sudoers 파일 편집기로 열기 (수정방법은 visudo 설명과 동일)
root@wordpress:/etc# nano sudoers
## sudoers 파일에 쓰기 권한(사용자) 부여
root@wordpress:/etc# chmod u-w sudoers
## sudoers 파일의 권한 확인
root@wordpress:/etc# ls -l | grep sudoers
-r--r----- 1 root root 755 Feb 1 02:18 sudoers
drwxr-x--- 2 root root 4096 Apr 2 13:01 sudoers.d
root@wordpress:/etc#
/etc/sudoers 파일을 수정하신 후에는 반드시 권한을 (440)으로 돌려주어야 합니다.
이상으로 /etc/sudoers 파일을 수정하여/etc/sudoers 파일을 수정하여 sudo 권한 및 root 권한 부여하는 방법에 대한 포스팅을 마치도록 하겠습니다.