ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Linux] 리눅스 계정에 특정 명령어 root 실행 권한 주기
    서버 2016. 12. 19. 20:30

    sudo 명령어... 로 한 다음, 비밀번호를 입력하면 전부 열리지만 간혹 실행이 되지 않는 경우가 있습니다. 이때 해당 로그인된 계정에 특정 명령어에 대한 root 권한을 주어 실행할 수 있도록 하는 방법입니다.


    예제로 test 계정으로 아파치를 제어할 수 있도록 변경합니다. test 계정으로 아파치를 제어할 수 있어도 아파치의 시작, 종료 등의 권한만 있고, 프로세스 실제 소유자는 여전히 root입니다.

    계정 생성

    [root@localhost ~]# useradd test
    [root@localhost ~]# echo 'qwer1234' | passwd --stdin test
    Changing password for user test.
    passwd: all authentication tokens updated successfully.

    sudo 시도

    [root@localhost ~]# su - test
    [test@localhost ~]$ sudo /usr/sbin/httpd -k stop
    [sudo] password for test:
     
    test is not in the sudoers file.  This incident will be reported.

    위 처럼 비밀번호를 맞게 입력해도 sudoers에 설정되지 않아 실행되지 않습니다.

    권한 부여

    [root@localhost ~]# echo 'test ALL=NOPASSWD:/usr/sbin/httpd' >> /etc/sudoers
    [root@localhost ~]# tail -5 /etc/sudoers
    
    ## Allows members of the users group to shutdown this system
    # %users  localhost=/sbin/shutdown -h now
    
    test ALL=NOPASSWD:/usr/sbin/httpd # NOPASSWD: 를 제거할 경우, sudo를 사용할 때 비밀번호를 물어봄

    결과

    [test@localhost ~]$ sudo /usr/sbin/httpd -k start # NOPASSWD: 를 추가해서 sudo가 되는 것은 물론 비밀번호 입력없이 실행


    댓글