บนเครื่อง CentOS 7 ผู้ใช้สามารถใช้ข้อมูลรับรอง LDAP เพื่อเชื่อมต่อกับเซิร์ฟเวอร์ของฉัน
ครั้งแรกที่พวกเขาทำเช่นนี้ pam_mhomedir ทำงานได้ดี โฟลเดอร์ของผู้ใช้ /home/jdoe ถูกสร้างขึ้นอย่างดีโดยได้รับอนุญาตถูกต้อง
ปัญหาคือเมื่อ Joe เชื่อมต่อกับเซิร์ฟเวอร์ของฉันโดยใช้ SSH หรือบนเซิร์ฟเวอร์มอนิเตอร์โดยตรง (เพียงเพื่อบอกว่าไม่ใช่เฉพาะปัญหา pam.d/ssh เท่านั้น) เชลล์ของมันไม่ได้เริ่มทำงานในโฮมไดเร็กตอรี่ของเขา แต่จะเริ่มต้นที่ไดเร็กทอรี "/ home" หรือ "/"
$HOME เป็นสิ่งที่ถูกต้อง ถ้า Joe ทำ "cd" เชลล์จะไปที่ "/home/jdoe" และ HomeDirectory ใน LDAP คือสิ่งที่ถูกต้อง
/etc/pam.d/sshd เนื้อหา:
#%PAM-1.0
จำเป็นต้องมีการตรวจสอบสิทธิ์ pam_sepermit.so
auth substack รหัสผ่าน-auth
รับรองความถูกต้องรวมถึง postlogin
# ใช้กับ polkit เพื่ออนุญาตผู้ใช้อีกครั้งในเซสชันระยะไกล
รับรองความถูกต้อง pam_reauthorize.so เตรียม
ต้องใช้บัญชี pam_nologin.so
บัญชีรวมรหัสผ่านการตรวจสอบสิทธิ์
รหัสผ่านรวมถึงรหัสผ่านรับรองความถูกต้อง
# pam_selinux.so close ควรเป็นกฎเซสชันแรก
ต้องการเซสชัน pam_selinux.so ปิด
ต้องการเซสชัน pam_loginuid.so
# pam_selinux.so open ควรตามด้วยเซสชันที่จะดำเนินการในบริบทของผู้ใช้เท่านั้น
ต้องการเซสชัน pam_selinux.so เปิด env_params
ต้องการเซสชัน pam_mhomedir.so
ต้องการเซสชัน pam_namespace.so
เซสชั่นทางเลือก pam_keyinit.so บังคับเพิกถอน
เซสชั่นรวมถึงรหัสผ่านการตรวจสอบสิทธิ์
เซสชันรวมถึง postlogin
# ใช้กับ polkit เพื่ออนุญาตผู้ใช้อีกครั้งในเซสชันระยะไกล
เซสชั่นเสริม pam_reauthorize.so เตรียม
ใครรู้วิธีช่วยฉันหาทางออกที