CentOS 7에서 휠 그룹이나 sudoer를 사용하는 대신 테스트 사용자에게 루트 권한(또는 루트 계정)을 부여하고 싶습니다. 대신 pam_cap.so 모듈과 Linux 기능을 사용하고 싶습니다.
나는 이것을 시도한다:
/etc/security/su에 pam_cap.so 모듈을 추가하십시오:
# %PAM-1.0 auth optional pam_cap.so auth sufficient pam_rootok.so ....
/etc/security/capability.conf 파일을 생성하고 사용자에게 허용되는 기능을 추가합니다.
cap_sys_admin,cap_dac_override myuser * none
그런 다음 다음
su
명령을 실행합니다.$ su - myuser
다음을 사용하여 이 사용자의 능력을 확인할 수 있습니다.
$ capsh --print
내가 아는 한, 루트 권한을 얻으려면 /bin에서 프로그램에 대한 기능 비트도 설정해야 합니다. 예를 들어 myuser가 루트가 소유한 파일을 삭제하는 경우 /bin/rm에 상한 비트를 설정할 수 있습니다.
sudo setcap 'CAP_DAC_OVERRIDE+ei' /bin/rm
하지만 이 경우 /bin에 있는 모든 프로그램에 대해 서로 다른 유형의 기능을 설정해야 합니다. 그리고 그것은 좋은 생각이 아닙니다.
사용자에게 루트 권한을 부여하고 일부 필수 기능을 한 단계로 설정할 수 있습니까? 예를 들어, 사용자 쉘의 상한선만 설정할까요?