Media Log

[sudo]에 해당되는 글 1

  1. sudo 사용법 2008.10.02

훈련 시스템에 접속하기 위한 아이디와 패스워드는 아래와 같습니다.
Question 52
> 훈련 시스템 접속 주소 : 211.241.82.54
> 해당 아이디(ID) : level52
> 해당 패스워드(PW) : passwd=52


IT 업체인 W사는 솔라리스 서버를 이용하여 사용자들의 홈페이지를 제작해주는
업체를 경영하였다. 1년 정도의 시간이 지나자 많은 사용자들이 서버에 입주했고
입주 업무가 폭주하다 보니 별도의 상담 업무만을 전담하는 직원을 두게 되었다.
상담원 이씨에게 사용자들의 id 개설 업무를 주었는데 팀장 황씨는 시스템의
다른 권한은 주고 싶지 않았다.
이에 대한 접근제어 역할을 제공하는 도구를 찾던 중 sudo라는 도구가 훌륭히 역할을
수행 할 수 있다는 것을 알았다.
sudo를 이용하여 상담자 이씨(id: user_admin)에게 useradd 명령어에 대한 권한을
주도록 설정하라.

SUDO
사용목적 : 관리자(root)가 특정 사용자(특정 그룹)에게 특정 명령(명령그룹)을 root계정으로 실행할 수 있는 권한부여

* 구성파일 : /etc/sudoers
1. 유저, 호스트, 커멘드를 정의 가능.
2. 유저, 호스트, 커멘드의 엘리어스도 지정 가능
3. 구조
user host=commads
user : 로그인 id나 엘리어스 네임
host : hostname, 엘리어스 호스트네임
commads : 콤마로 구분되어지는 명령어 리스트 

더 자세한 내용은 관련자료를 참고 

사용법을 간단히 알아보자.  

# rpm -q sudo 를 실행하여 sudo가 설치되어 있는지 확인하자.
# vi /etc/sudoers 설정파일을 열어서
root ALL=(ALL) ALL
bob ALL=/usr/local/resin/bin/httpd.sh, /usr/local/apache/bin/apachectl  

일반 계정자 bob에게 resin의 httpd.sh명령과 apachectl명령 권한을 허용한 예이다. 
이제 일반계정 bob으로 위의 명령을 실행하려면

# su bob
$ sudo /usr/local/apache/bin/apachectl restart

이때 password를 물어보면 bob의 password를 입력하면 root권한으로 실행이 된다. 

풀이방법 
vi /etc/sudoers       ->sudoers파일 편집
user_admin      ALL=/usr/sbin/useradd      -> user_admin 에게 /usr/sbin/useradd 권한 설정
[출처] sudo를 이용한 특정사용자에게 특정 명령어에 대한 권한 부여 |작성자 오팔