30.6. sudo 규칙 수정
웹 UI에서 sudo
규칙 수정
- Policy 탭에서
를 클릭합니다. - 규칙 이름을 클릭하여 구성 페이지를 표시합니다.
- 필요에 따라 설정을 변경합니다. 일부 구성 페이지의 페이지 상단에버튼을 사용할 수 있습니다. 이러한 페이지에서 버튼을 클릭하여 변경 사항을 확인합니다.
sudo
규칙 구성 페이지에는 다음과 같은 여러 구성 영역이 포함되어 있습니다.
- 일반 지역
- 이 영역에서 규칙의 설명과
sudo 순서를
수정할 수 있습니다.sudo order
필드는 정수를 허용하고 IdM이 규칙을 평가하는 순서를 정의합니다.sudo 순서
값이 가장 높은 규칙이 먼저 평가됩니다. - 옵션 영역
- 이 영역에서는 규칙에
sudoers
옵션을 추가할 수 있습니다.- 옵션 목록 위에 추가 를 클릭합니다.
그림 30.5.
sudo
옵션 추가 sudoers
옵션을 입력합니다. 예를 들어sudo
가 인증하라는 메시지를 표시하지 않도록 지정하려면!authenticate
옵션을 추가합니다.그림 30.6.
sudoers
옵션 입력sudoers
옵션에 대한 자세한 내용은 sudoers(5) 도움말 페이지를 참조하십시오.
- everyone 지역
- 이 영역에서
sudo
규칙이 적용되는 사용자 또는 사용자 그룹을 선택할 수 있습니다. 이러한 사용자는 규칙에 정의된 대로sudo
를 사용할 수 있습니다.모든 시스템 사용자가 규칙에 정의된 대로sudo
를 사용할 수 있도록 지정하려면 Anyone 을 선택합니다.특정 사용자 또는 그룹에만 규칙을 적용하려면 지정된 사용자 및 그룹을 선택하고 다음 단계를 따르십시오.- 사용자 또는 사용자 그룹 목록 위에 추가 를 클릭합니다.
그림 30.7.
sudo
규칙에 사용자 추가 - 규칙에 추가할 사용자 또는 사용자 그룹을 선택하고 > Prospective 열로 이동합니다. 외부 사용자를 추가하려면 외부 필드에서 사용자를 지정한 다음 > 화살표 버튼 클릭합니다.버튼을 클릭하여
그림 30.8.
sudo
규칙에 대한 사용자 선택
- 액세스 이 호스트 영역
- 이 영역에서
sudo
규칙이 적용되는 호스트를 선택할 수 있습니다. 사용자에게sudo
권한을 부여할 호스트입니다.규칙이 모든 호스트에 적용되도록 지정하려면 Anyone 을 선택합니다.특정 호스트 또는 호스트 그룹에만 규칙을 적용하려면 지정된 호스트 및 그룹을 선택하고 다음 단계를 따르십시오.- 호스트 목록 위에 추가 를 클릭합니다.
그림 30.9.
sudo
규칙에 호스트 추가 - 규칙에 포함할 호스트 또는 호스트 그룹을 선택하고 > Prospective 열로 이동합니다. 외부 호스트를 추가하려면 외부 필드에서 호스트를 지정한 다음 > 화살표 버튼 클릭합니다.버튼을 클릭하여
그림 30.10.
sudo
규칙에 대한 호스트 선택
- 명령 실행 영역
- 이 영역에서
sudo
규칙에 포함할 명령을 선택할 수 있습니다. 사용자가 특정 명령을 사용하도록 허용 또는 거부되도록 지정할 수 있습니다.사용자가sudo
와 함께 모든 명령을 사용할 수 있도록 지정하려면 모든 명령을 선택합니다.규칙을 특정 명령 또는 명령 그룹과 연결하려면 지정된 명령 및 그룹을 선택하고 다음 단계를 따르십시오.- 허용된 명령 또는 명령 그룹을 지정하려면 허용 영역을 사용합니다. 거부된 명령 또는 명령 그룹을 지정하려면 거부 영역을 사용합니다.
그림 30.11.
sudo
규칙에 명령 추가 - 규칙에 포함할 명령 또는 명령 그룹을 선택하고 > Prospective 열로 이동합니다.버튼을 클릭하여
그림 30.12.
sudo
규칙에 대한 명령 선택
- < as whom& gt;
- 이 영역에서는 지정된 명령을 루트가 아닌 특정 사용자로 실행하도록
sudo
규칙을 구성할 수 있습니다.RunAs users 그룹을 추가하면 그룹 멤버의 UID가 명령을 실행하는 데 사용됩니다. RunAs 그룹을 추가하면 그룹의 GID가 명령을 실행하는 데 사용됩니다.규칙을 시스템에서 임의의 사용자로 실행하도록 지정하려면 Anyone 을 선택합니다. 규칙을 시스템에서 임의의 그룹으로 실행하도록 지정하려면 Any Group 을 선택합니다.- 사용자 목록 위에 추가 를 클릭합니다.
그림 30.13. 특정 사용자로 명령을 실행하도록
sudo
규칙 구성 - 필요한 사용자 또는 그룹을 선택하고 > 열로 이동합니다. 외부 엔티티를 추가하려면 외부 필드에서 지정한 다음 > 화살표 버튼 클릭합니다.버튼을 사용하여 해당 사용자 지정
그림 30.14. 명령으로 사용자 선택
명령줄에서 sudo
규칙 수정
IdM 명령줄 유틸리티를 사용하면 다음과 같은 여러
sudo
규칙 영역을 구성할 수 있습니다.
- 일반
sudo
규칙 관리 - sudo 규칙에 대한 일반 구성을 변경하려면 ipa
sudo
rule-mod 명령을 사용하십시오. 명령에서 수락하는 가장 일반적인 옵션은 다음과 같습니다.sudo
규칙 설명을 변경하려면--desc
옵션입니다. 예를 들어 다음과 같습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-mod sudo_rule_name --desc="sudo_rule_description"
$ ipa sudorule-mod sudo_rule_name --desc="sudo_rule_description"
- 지정된 규칙의 순서를 정의하는
--order
옵션입니다. 예를 들어 다음과 같습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-mod sudo_rule_name --order=3
$ ipa sudorule-mod sudo_rule_name --order=3
- 엔터티 범주를 지정하는 옵션:
--usercat
(사용자 범주),--hostcat
(호스트 범주),--cmdcat
(명령 범주),--runasusercat
(사용자 범주로 실행),--runasgroupcat
(그룹 범주로 실행). 이러한 옵션은 규칙을모든
사용자, 호스트, 명령, run-as 사용자 또는 run-as 그룹과 연결하는 모든 값만 허용합니다.예를 들어 모든 사용자가 sudo_rule 규칙에
정의된 대로sudo
를 사용할 수 있도록 지정하려면 다음을 수행합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-mod sudo_rule --usercat=all
$ ipa sudorule-mod sudo_rule --usercat=all
규칙이 이미 특정 엔티티와 연결되어 있는 경우 해당 범주를 정의하기 전에 이를 제거해야 합니다.예를 들어
sudo_rule
이 이전에 ipa sudorule-add-user 명령을 사용하여 특정 사용자와 연결된 경우 먼저 ipa sudorule-remove-user 명령을 사용하여 사용자를 제거해야 합니다.
ipa sudorule-mod 에서 허용하는 전체 옵션 목록과 자세한 내용은--help
옵션이 추가된 명령을 실행합니다. sudo
옵션 관리sudoers
옵션을 추가하려면 ipa sudorule-add-option 명령을 사용합니다.예를 들어files-commands
규칙에 따라sudo
를 사용하는 사용자를 인증할 필요가 없다고 지정하려면!authenticate
옵션을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-add-option files-commands
$ ipa sudorule-add-option files-commands Sudo Option: !authenticate --------------------------------------------------------- Added option "!authenticate" to Sudo Rule "files-commands" ---------------------------------------------------------
sudoers
옵션에 대한 자세한 내용은 sudoers(5) 도움말 페이지를 참조하십시오.sudoers
옵션을 제거하려면 ipa sudorule-remove-option 명령을 사용합니다. 예를 들어 다음과 같습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-remove-option files-commands
$ ipa sudorule-remove-option files-commands Sudo Option: authenticate ------------------------------------------------------------- Removed option "authenticate" from Sudo Rule "files-commands" -------------------------------------------------------------
sudo
사용 권한이 부여된 사용자 관리- 개별 사용자를 지정하려면 ipa sudorule-add-user 명령에
--users
옵션을 추가합니다. 사용자 그룹을 지정하려면 ipa sudorule-add-user 에--groups
옵션을 추가합니다.예를 들어 users 및user
_groupfiles-commands
규칙에 추가하려면 다음을 수행합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-add-user files-commands --users=user --groups=user_group
$ ipa sudorule-add-user files-commands --users=user --groups=user_group ... ------------------------- Number of members added 2 -------------------------
개별 사용자 또는 그룹을 제거하려면 ipa sudorule-remove-user 를 사용합니다. 예를 들어 사용자를 제거하려면 다음을 수행합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-remove-user files-commands
$ ipa sudorule-remove-user files-commands [member user]: user [member group]: ... --------------------------- Number of members removed 1 ---------------------------
- 사용자에게
sudo
권한이 부여된 위치 관리 - 호스트를 지정하려면 ipa sudorule-add-host 명령에
--hosts
옵션을 추가합니다. 호스트 그룹을 지정하려면 ipa sudorule-add-host 에--hostgroups
옵션을 추가합니다.예를 들어example.com
및host_group
을files-commands
규칙에 추가하려면 다음을 실행합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-add-host files-commands --hosts=example.com --hostgroups=host_group
$ ipa sudorule-add-host files-commands --hosts=example.com --hostgroups=host_group ... ------------------------- Number of members added 2 -------------------------
호스트 또는 호스트 그룹을 제거하려면 ipa sudorule-remove-host 명령을 사용합니다. 예를 들어 다음과 같습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-remove-host files-commands
$ ipa sudorule-remove-host files-commands [member host]: example.com [member host group]: ... --------------------------- Number of members removed 1 ---------------------------
sudo
와 함께 사용할 수 있는 명령 관리- 사용자가 특정 명령을 사용하도록 허용 또는 거부되도록 지정할 수 있습니다.허용되는 명령 또는 명령 그룹을 지정하려면 ipa sudorule-add-allow-command 에
--sudocmds
또는--sudocmdgroups
옵션을 추가합니다. 거부된 명령 또는 명령 그룹을 지정하려면 ipa sudorule-add-deny-command 명령에--sudocmds
또는--sudocmdgroups
옵션을 추가합니다.예를 들어files
-commands/usr/bin/less
명령 및 files 명령 그룹을 추가하려면 다음을 실행합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-add-allow-command files-commands --sudocmds=/usr/bin/less --sudocmdgroups=files
$ ipa sudorule-add-allow-command files-commands --sudocmds=/usr/bin/less --sudocmdgroups=files ... ------------------------- Number of members added 2 -------------------------
규칙에서 명령 또는 명령 그룹을 제거하려면 ipa sudorule-remove-allow-command 또는 ipa sudorule-remove-deny-command 명령을 사용하십시오. 예를 들어 다음과 같습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-remove-allow-command files-commands
$ ipa sudorule-remove-allow-command files-commands [member sudo command]: /usr/bin/less [member sudo command group]: ... --------------------------- Number of members removed 1 ---------------------------
--sudocmds
옵션은 30.4.1절. “sudo
명령 추가” 에 설명된 대로 IdM에 추가된 명령만 허용합니다. sudo
명령을 실행할 때 관리- 그룹의 개별 사용자 또는 사용자의 UID를 명령이 실행되는 ID로 사용하려면 ipa sudorule-add-runasuser 명령과 함께
--users
또는--groups
옵션을 사용합니다.사용자 그룹의 GID를 명령의 ID로 사용하려면 ipa sudorule-add-runasgroup --groups 명령을 사용합니다.사용자 또는 그룹을 지정하지 않으면sudo
명령이 root로 실행됩니다.예를 들어사용자의
ID를 사용하여sudo
규칙에서 명령을 실행하도록 지정하려면 다음을 실행합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-add-runasuser files-commands --users=user
$ ipa sudorule-add-runasuser files-commands --users=user ... RunAs Users: user ...
ipa sudorule-* 명령에 대한 자세한 내용은 ipa help sudorule 명령 출력을 참조하거나
--help
옵션이 추가된 특정 명령을 실행하십시오.
예 30.1. 명령줄에서 새 sudo
규칙 추가 및 수정
특정 사용자 그룹이 선택한 서버에서 모든 명령과 함께
sudo
를 사용하도록 허용하려면 다음을 수행하십시오.
admin
사용자 또는sudo
규칙을 관리할 수 있는 다른 사용자의 Kerberos 티켓을 받습니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow kinit admin
$ kinit admin Password for admin@EXAMPLE.COM:
- IdM에 새
sudo
규칙을 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-add new_sudo_rule --desc="Rule for user_group"
$ ipa sudorule-add new_sudo_rule --desc="Rule for user_group" --------------------------------- Added Sudo Rule "new_sudo_rule" --------------------------------- Rule name: new_sudo_rule Description: Rule for user_group Enabled: TRUE
- who:
sudo
규칙을 사용할 수 있는 사용자 그룹을 지정합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-add-user new_sudo_rule --groups=user_group
$ ipa sudorule-add-user new_sudo_rule --groups=user_group Rule name: new_sudo_rule Description: Rule for user_group Enabled: TRUE User Groups: user_group ------------------------- Number of members added 1 -------------------------
- 여기서 사용자에게
sudo
권한을 부여할 호스트 그룹을 지정합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-add-host new_sudo_rule --hostgroups=host_group
$ ipa sudorule-add-host new_sudo_rule --hostgroups=host_group Rule name: new_sudo_rule Description: Rule for user_group Enabled: TRUE User Groups: user_group Host Groups: host_group ------------------------- Number of members added 1 -------------------------
- 사용자가
sudo
명령을 실행할 수 있도록 하려면 다음을 정의합니다.모든
명령 카테고리를 규칙에 추가합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-mod new_sudo_rule --cmdcat=all
$ ipa sudorule-mod new_sudo_rule --cmdcat=all ------------------------------ Modified Sudo Rule "new_sudo_rule" ------------------------------ Rule name: new_sudo_rule Description: Rule for user_group Enabled: TRUE Command category: all User Groups: user_group Host Groups: host_group
sudo
명령을 root로 실행하도록 하려면 사용자 또는 그룹으로 실행을 지정하지 마십시오.!authenticate
sudoers
옵션을 추가하여sudo
명령을 사용할 때 사용자를 인증할 필요가 없음을 지정합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-add-option new_sudo_rule
$ ipa sudorule-add-option new_sudo_rule Sudo Option: !authenticate ----------------------------------------------------- Added option "!authenticate" to Sudo Rule "new_sudo_rule" ----------------------------------------------------- Rule name: new_sudo_rule Description: Rule for user_group Enabled: TRUE Command category: all User Groups: user_group Host Groups: host_group Sudo Option: !authenticate
- 새
sudo
규칙 구성을 표시하여 올바른지 확인합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ipa sudorule-show new_sudo_rule
$ ipa sudorule-show new_sudo_rule Rule name: new_sudo_rule Description: Rule for user_group Enabled: TRUE Command category: all User Groups: user_group Host Groups: host_group Sudo Option: !authenticate