배경:
저는 구성 측면에서 pam 및 LDAP 인증의 세부 사항에 대해 잘 알지 못합니다. 나는 pam을 사용하는 시스템으로 작업했지만 시스템 자체가 아닌 응용 프로그램에서만 작업했습니다.
질문:
pam을 사용하여 LDAP를 통한 인증을 제어하면 시스템에 홈 디렉토리가 생성되지 않는다는 의미입니까?
그렇지 않은 경우 서버에서 사용자를 생성합니까, 아니면 사용자를 LDAP 소스에서 시스템으로 푸시합니까?
답변1
이것이 바로 pam_mkhomedir
우리가 설계한 목적입니다. 사용자의 홈 디렉토리가 존재하지 않으면
이 모듈은 로그인 시 이를 생성할 수 있습니다.pam_mkhomedir
설치 방법은 배포판에 따라 다릅니다. 하지만 이를 하나 이상의 /etc/pam.d
. 나는 다음과 같이 스택 에 넣을 것입니다 :/etc/pam.d/system-login
pam_mkhomedir.so
session
session optional pam_loginuid.so
session required pam_env.so
session optional pam_lastlog.so
session include system-auth
session optional pam_mkhomedir.so # <<< right here
session optional pam_ck_connector.so nox11
session optional pam_gnome_keyring.so auto_start
session optional pam_motd.so motd=/etc/motd
어디에 넣는지는 전적으로 스택에 무엇이 있는지에 따라 달라집니다. 그러나 홈 디렉토리가 필요할 수 있는 다른 것보다 먼저 배치해야 합니다.
지원되는 옵션 은 리소스를 참조하세요 man 8 pam_mkhomedir
.
답변2
Ubuntu 14.04에는 존재하지 system-login
않지만 common-session
이라는 이름의 다른 파일이 존재합니다.
나는 거기에 가서 다음을 넣었습니다.
root@GW:~# vim /etc/pam.d/common-session
#
session optional pam_systemd.so skel=/etc/skel/ umask=0077
존재하지 않는 경우 홈 디렉토리가 생성되고 권한이 다음으로 설정됩니다.700
답변3
나는 사용하는 것이 좋습니다이상한 직업 mkhomedir:
Centos 7의 경우 다음과 같이 작동합니다.
yum install oddjob-mkhomedir
이것을 /etc/pam.d/system-auth
합계 에 추가하십시오 /etc/pam.d/password-auth
.
session optional pam_oddjob_mkhomedir.so skel=/etc/skel
마침내:
systemctl enable oddjob; systemctl start oddjob
이것은 원래 여기에 게시되었습니다:https://www.centos.org/forums/viewtopic.php?t=48631
참고: 방금 파티션을 마운트한 경우 /home
다음을 수행하는 것을 잊지 마십시오.restorecon /home