답변:
예, 가능합니다.
에서 의 / etc /의 sudoers 즉시 등호를 다음과 같은 항목이 명령으로 실행하도록 허용 할 사용자입니다.
tom ALL=(oracle) /bin/chown tom *
사용자 (tom)는 sudo -u oracle / bin / chown tom / home / oracle / oraclefile을 입력 할 수 있습니다.
/ etc / sudoers에 다음과 같은 것을 추가하십시오.
tom ALL=(oracle) ALL
그런 다음 사용자 Tom은 Tom을 사용하지 않고 sudo를 사용하여 -u 옵션을 사용하여 사용자 oracle로 항목을 실행할 수 있어야합니다.
즉, 사용자 오라클로 쉘을 얻는 중입니다 (여러분의 sudo가 -i 옵션을 가질만큼 충분히 새롭다면).
sudo -u oracle -i
tom ALL=(oracle)NOPASSWD:ALL
암호를 물어되지는 sudo를 만들기 위해
예를 들어 Tom에게 DBA가 oracle 사용자에게 su를 허용하고 싶지만 tomcat 사용자 또는 root에게는 허용하지 않으려 고합니다.
최근에이 작업을 시스템에 수행해야했으며 몇 년 전에 사용한 대체 설정에서 구문을 허용하는 노트를 찾기가 어려웠습니다 su <user>
. 제 상황에서는 여러 사용자가 su
특정 사용자 에게 접근 할 수 있도록해야 했습니다.
addgroup <groupName>
다른 사용자가 su
비밀번호없이 할 수 있는 그룹을 만듭니다 . 그런 다음 su
암호없이 usermod -a -G <groupName> <userName>
(또는 usermod -a -G oracle tom
) 해당 사용자
에게 할 수있는 각 사용자에게 해당 그룹을 추가하십시오 . 다음 로그인까지 그룹 변경 사항이 적용되지 않을 수 있습니다.
참고 : oracle
oracle 사용자로을 만들 때 그룹이 생성 되었으므로 이미 그룹이 있습니다 adduser oracle
.
이제 다음을 편집 /etc/pam.d/su
하고 다음을 수행하십시오.
# This allows root to su without passwords (normal operation)
auth sufficient pam_rootok.so
.. 인증 규칙 줄을 추가하여 섹션이 다음과 같이 표시되도록합니다.
# This allows root to su without passwords (normal operation)
auth sufficient pam_rootok.so
auth [success=ignore default=1] pam_succeed_if.so user = <groupName>
auth sufficient pam_succeed_if.so use_uid user ingroup <groupName>
교체 <groupName>
로 oracle
이 경우이다. 이것은의 일부 사용자 수 <groupName>
에를su <groupName>
이제 tom
수 있습니다 su oracle
당신은 다른 사용자에게 동일한 액세스 권한을 부여에 추가하고 필요하면 oracle
그룹.
비슷한 질문이 여기에