Menu Close

22.3. 권한이 없는 사용자가 특정 명령을 실행하도록 활성화

권한이 없는 사용자가 특정 워크스테이션에서 특정 명령을 실행하도록 허용하는 정책을 구성할 수 있습니다. 이 정책을 구성하려면 sudoers.d 디렉터리에 파일을 만들고 편집해야 합니다.

사전 요구 사항

  • 루트 액세스

절차

  1. root로 /etc/ 아래에 새 sudoers.d 디렉토리를 만듭니다.

    # mkdir -p /etc/sudoers.d/
  2. /etc/sudoers.d 디렉토리에 새 파일을 만듭니다.

    # visudo -f /etc/sudoers.d/file-name

    file-name 을 생성할 파일의 이름으로 바꿉니다. 파일이 자동으로 열립니다.

  3. 새로 생성된 파일에 다음 행을 추가합니다.

    username hostname = /path/to/the/command

    username 을 사용자 이름으로 바꿉니다. hostname 을 호스트 이름으로 교체합니다. /path/to/the/command 를 명령의 절대 경로(예: /usr/bin/dnf)로 바꿉니다.

  4. 변경 사항을 저장하고 편집기를 종료합니다.

    예 22.1. 권한이 없는 사용자가 dnf를 사용하여 프로그램을 설치할 수 있음

    사용자 sarahsudo 권한이 있는 dnf 유틸리티를 사용하여 localhost.localdomain 워크스테이션에 프로그램을 설치할 수 있도록 하려면 다음을 사용합니다.

    1. root로 /etc/ 아래에 새 sudoers.d 디렉토리를 만듭니다.

      # mkdir -p /etc/sudoers.d/
    2. /etc/sudoers.d 디렉토리에 새 파일을 만듭니다.

      # visudo -f /etc/sudoers.d/sarah

      파일이 자동으로 열립니다.

    3. /etc/sudoers.d/sarah 파일에 다음 행을 추가합니다.

      sarah localhost.localdomain = /usr/bin/dnf

      두 명령 경로가 , 쉼표 뒤에 공백 으로 구분되어 있는지 확인합니다.

    4. 선택 사항: 사용자 sarahsudo 권한을 사용하려고 할 때마다 이메일 알림을 받으려면 파일에 다음 행을 추가합니다.

      Defaults    mail_always
      Defaults    mailto="email@domain.com"
    5. user sarahsudo 권한으로 dnf 명령을 실행할 수 있는지 확인하려면 계정을 전환합니다.

      # su sarah -
    6. sudo dnf 명령을 입력합니다.

      $ sudo dnf
      [sudo] password for sarah:

      사용자 sarahsudo 암호를 입력합니다.

    7. 시스템에 dnf 명령 및 옵션 목록이 표시됩니다.

      ...
      usage: dnf [options] COMMAND
      ...

      sarah가 sudoers 파일에 없는 경우. 이 문제는 보고됩니다. 메시지는 구성이 올바르게 완료되지 않았습니다. 이 절차를 root 로 실행하고 단계를 철저하게 수행했는지 확인하십시오.