특정 사용자에게 sudo명령어로 시스템의 모든 명령어 사용허용 설정
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 3,605 조회
- 0 추천
- 목록
본문
특정 사용자에게 sudo명령어로 시스템의 모든 명령어 사용허용 설정
sudo명령어의 가장 강력한 사용 예부터 보도록 하겠습니다.
즉, /etc/shadow파일은 root사용자만이 그 내용을 확인(읽기)할 수 있도록 퍼미션이 설정되어 있습니다.
따라서 root사용자 외에는 그 어떤 사용자라도 /etc/shadow파일의 내용을 확인해 볼 수 없습니다.
하지만 sudo명령어를 이용하면 /etc/sudoers파일에 허용된 일반사용자도 root권한으로 /etc/shadow파일의 내용을 확인해 볼 수 있습니다.
먼저, /etc/sudoers파일에 sudo명령어의 사용허용설정이 되어있지 않은 경우에 sudo명령어를 사용하면 다음과 같은 메시지를 출력하면서 정상적인 실행이 되지 않습니다.
다음 예는 sspark이라는 일반 사용자에게 /etc/sudoers에 허용설정이 되어있지 않은 경우의 sudo사용 예입니다.
[sspark@su250 ~]$ id uid=504(sspark) gid=504(sspark) groups=504(sspark) [sspark@su250 ~]$ [sspark@su250 ~]$ sudo vi /etc/shadow
We trust you have received the usual lecture from the local System Administrator. It usually boils down to these three things:
#1) Respect the privacy of others. #2) Think before you type. #3) With great power comes great responsibility.
[sudo] password for sspark: ******** sspark is not in the sudoers file. This incident will be reported. [sspark@su250 ~]$ |
즉, sspark사용자는 sudo사용설정이 되어있지 않았기 때문에 위와 같이 정상적인 실행이 되지 않은 것입니다.
그리고 위와 같이 허용되지 않은 사용자가 sudo명령어를 사용하였다면 /var/log/secure파일에 시스템 보안점검을 위하여 다음과 같은 기록을 남기게 됩니다.
Jan 20 15:22:25 su250 sudo: sspark : user NOT in sudoers ; TTY=pts/1 ; PWD=/home/sspark ; USER=root ; COMMAND=/bin/vi /etc/shadow |
이번에는 sspark이라는 사용자에게 /etc/sudoers파일에 sudo명령어의 허용설정을 한 후에 다시 한번 동일한 실행을 해보도록 하겠습니다.
즉, 아래의 예는 /etc/sudoers파일에 sspark에 대해 시스템의 모든 명령어를 sudo명령어를 이용하여 사용할 수 있도록 설정한 것입니다.
즉, 아래 행을 /etc/sudoers파일에 추가한 것입니다.
sspark ALL=(ALL) ALL |
그런 다음 앞에서 실행하였던 “sudo vi /etc/shadow”명령어를 다시 실행한 것으로서 root사용자만이 볼 수 있었던 /etc/shadow파일의 내용을 일반사용자인 sspark사용자가 확인하는 예입니다.
즉, /etc/sudoers파일에 sspark사용자의 sudo명령어 허용설정이 되어있기 때문에 아래의 명령어가 정상적으로 실행된 것입니다.
[sspark@su250 ~]$ id
uid=504(sspark) gid=504(sspark) groups=504(sspark) [sspark@su250 ~]$ [sspark@su250 ~]$ sudo vi /etc/shadow
[sudo] password for sspark: ********
root:$6$EY1RGogE$oQG9fOqZVwWH19VyLRyR7YntnH0jPgrSYBzpWwLVaP...F0:14236:0:99999:7::: bin:*:14214:0:99999:7::: daemon:*:14214:0:99999:7::: adm:*:14214:0:99999:7::: lp:*:14214:0:99999:7::: sync:*:14214:0:99999:7::: shutdown:*:14214:0:99999:7::: halt:*:14214:0:99999:7::: sshd:!!:14214:0:99999:7::: webalizer:!!:14214:0:99999:7::: torrent:!!:14214:0:99999:7::: haldaemon:!!:14214:0:99999:7::: squid:!!:14214:0:99999:7::: gdm:!!:14214:0:99999:7::: command:$6$tupRVcOi$hkJJbz.1zWopLHUKeGC7DNC3UFx.2rJUMzqsUPk9dIXo.:14234:0:99999:7::: @ "/etc/shadow" [readonly] 44L, 1723C |
위의 예에서 “sudo vi /etc/shadow”명령어를 실행한 후에 “Password : “라는 프롬프트에는 root의 패스워드가 아닌 자기자신(sspark)의 패스워드를 입력하여야 합니다.
관련자료
-
이전
-
다음