su - $appuser
나는 시스템 관리자이며 사용자가 애플리케이션 사용자의 비밀번호를 사용하고 입력하는 것을 원하지 않습니다.
상당히
sudo su - $appuser
자신의 비밀번호를 사용 하고 입력하세요.
의심하지 않는 일부 순진한 사용자는 잘못된 비밀번호를 입력하려고 시도하며 su - $appuser
, 잘못된 비밀번호를 입력하면 3번의 시도 실패 후 애플리케이션 사용자가 잠깁니다(AD 팀에서 정의한 대로, 변경할 수 없음). 우리는 사용자가 사용하도록 강요하고 싶습니다.sudo su -
이것이 달성될 수 있습니까?
답변1
글쎄, 당신은 항상 전통적인 BSD 경로를 갈 수 있습니다 ...
그룹 만들기 -바퀴전통적인 이름이군요..
허용된 사용자를 su
그룹에 추가합니다. 귀하의 경우에는 없음(아마도 제외)뿌리, 하지만뿌리어쨌든 허용됩니다).
그룹 소유권을 su
다음으로 설정바퀴
빼앗다다른 사람실행력su
결국에는 su
있어야합니다루트 단어: 바퀴소유권은 다음과 같아야 합니다: rws--x--- (즉 chmod u=rwxs,g=x,o= su
) (또는 더 나은 방법: --s--x---; 즉 chmod u=xs,g=x,o= su
)
이렇게 하면 다음 사람을 제외한 모든 사용자가 차단됩니다.뿌리그리고 회원들바퀴실행에서 유효한 사용 su
으로 인해 모든 사용자가 활성화됩니다.sudo
뿌리, sudo su ...
또한 작동해야 합니다.
답변2
PAM을 사용하는 시스템(예: 거의 모든 Linux 시스템)을 사용하는 경우 더 많은 옵션이 있습니다.
- LDAP/AD/etc에서 이전
/etc/pam.d/su
과 마찬가지로 줄을 편집 하고 추가합니다.su auth required pam_wheel.so
확인하다. 이는wheel
파일 소유권 대신 PAM을 통해 그룹을 제공합니다. 를 사용하면 보다 유연한 작업을 수행할 수도 있습니다pam_succeed_if
. - 동일하게 편집하고
auth sufficient pam_rootok.so
(루트 사용 허용su
) 다음으로 변경하십시오auth required pam_rootok.so
.오직rootsu
) 또는auth required pam_deny.so
특정 지점에 넣습니다. - 동일한 파일을 사용하여 애플리케이션 사용자
auth required pam_succeed_if.so uid ne $appuser
차단 과 같은 작업을 수행할 수 있습니다.su
미리 사과드립니다. 그 중 어느 것도 테스트하지 않았습니다.