저는 현재 IDM(리버티 IPA) 클러스터가 있고 전체 sudo 권한이 있습니다. 즉, sudo -Es
호스트가 SSSD를 통해 규칙을 올바르게 선택하고 있는지 확인하기 위해 특정 서버의 FreeIPA에 추가된 sudo 규칙을 확인하고 싶습니다.
어떻게 해야 하나요?
노트:sudo 규칙은 다음과 같습니다.
$ ipa sudorule-show prod-abc-dashboard-dba
Rule name: prod-abc-dashboard-dba
Enabled: TRUE
Command category: all
User Groups: eng-data-svc
답변1
이를 달성하기 위해 제가 찾은 가장 쉬운 방법은 서버에 SSH로 연결하는 것입니다. 그러면 sudo 규칙을 얻고 해당 액세스 권한이 부여된 그룹의 사용자를 확인합니다. sudo
명령 -l
과 -switch를 사용할 수 있습니다 U
.
$ 人스도
-l, --list If no command is specified, list the allowed (and forbidden) commands for the invoking user (or the user specified by the -U option) on the current host. A longer list format is used if this option is specified multiple times and the security policy supports a ver‐ bose output format. -U user, --other-user=user Used in conjunction with the -l option to list the privileges for user instead of for the invoking user. The security policy may restrict listing other users' privileges. The sudoers policy only allows root or a user with the ALL privilege on the current host to use this option.
다음과 같이 함께 사용할 수 있습니다.
$ sudo -lU <user>
예
$ sudo -lU joeuser
Matching Defaults entries for joeuser on this host:
requiretty, !visiblepw, always_set_home, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE INPUTRC KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2
QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME
LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY", secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin
User joeuser may run the following commands on this host:
(root) ALL
(ALL : ALL) ALL
또한 여러 -l
스위치(예: -ll
)를 사용하여 다른 사용자 권한에 대한 보다 자세한 목록을 얻을 수 있습니다. 예를 들면 다음과 같습니다.
$ sudo -llU joeuser
Matching Defaults entries for joeuser on this host:
!visiblepw, always_set_home, match_group_by_gid, always_query_group_plugin, env_reset, env_keep="COLORS DISPLAY
HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE",
env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY LC_NAME LC_NUMERIC
LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",
secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin
User joeuser may run the following commands on this host:
LDAP Role: lab-data-services-all
RunAsUsers: root
Commands:
ALL
LDAP Role: ad-data_services
RunAsUsers: root
Commands:
ALL
LDAP Role: ALL
RunAsUsers: ALL
RunAsGroups: ALL
Commands:
ALL
sudo 버전
$ sudo -V
Sudo version 1.8.6p3
Sudoers policy plugin version 1.8.6p3
Sudoers file grammar version 42
Sudoers I/O plugin version 1.8.6p3