FreeIPA의 모델로 머리를 감싸는 데 어려움을 겪고 있습니다. FreeIPA 매뉴얼 에는 다음 이 명시되어 있습니다 .
FreeIPA는 sudo 명령 그룹을 사용하여 추가 제어 측정을 추가하여 명령 그룹을 정의한 다음 sudo 구성에 하나로 적용 할 수 있습니다.
그러나 이들 예제는 기본적으로 sudo 명령 그룹 작성 및 “files”sudo 명령 그룹 과 같은 특정 sudo 명령 추가에 대해 설명합니다 .vim
less
예를 들어 명령 줄에서 :
ipa sudocmdgroup-add --desc 'File editing commands' files
ipa sudocmd-add --desc 'For editing files' '/usr/bin/vim'
ipa sudocmdgroup-add-member --sudocmds '/usr/bin/vim' files
그러나 ALL
/ etc / sudoers에서와 같이 어떻게 지정 합니까? 이것이 와일드 카드 (예 : *) 일 수 있습니까?
답변
사용자 그룹이로 명령을 실행할 수있게하려면 명령 그룹을 만들 필요가 없습니다 sudo
. 모든 명령을 허용하는 sudo 규칙 만 있으면되며 FreeIPA를 설치할 때 기본적으로 하나를 작성해야합니다.
# ipa sudorule-find All
-------------------
1 Sudo Rule matched
-------------------
Rule name: All
Enabled: TRUE
Host category: all
Command category: all
RunAs User category: all
User Groups: admins
----------------------------
Number of entries returned 1
----------------------------
(이러한 규칙이 없으면 작성하십시오.)
ipa sudorule-add --cmdcat=all All
이 sudo 규칙에 사용자 나 그룹을 추가하기 만하면 sudo
됩니다.
ipa sudorule-add-user --groups=admins All
원하는 경우 웹 UI에서이 작업을 수행 할 수도 있습니다.
답변
ALL
규칙 에 추가 하려면 category 옵션을 value와 함께 사용할 수 있습니다 all
. --cmdcat=all
호스트 --hostcat=all
, 사용자 --usercat=all
및 명령은 다음과 같습니다.
이 모든 옵션은 다음에서 볼 수 있습니다 ipa sudorule-add --help
.
$ ipa sudorule-add --help
Usage: ipa [global-options] sudorule-add SUDORULE-NAME [options]
Create new Sudo Rule.
Options:
-h, --help show this help message and exit
--desc=STR Description
--usercat=['all'] User category the rule applies to
--hostcat=['all'] Host category the rule applies to
--cmdcat=['all'] Command category the rule applies to
--runasusercat=['all']
RunAs User category the rule applies to
--runasgroupcat=['all']
RunAs Group category the rule applies to
...