วิธีการกำหนดค่า Ubuntu 12.04 เป็นลูกค้า ldap กับโมดูลแพม?
วิธีการกำหนดค่า Ubuntu 12.04 เป็นลูกค้า ldap กับโมดูลแพม?
คำตอบ:
เนื้อหาของโพสต์นี้เป็นไปตามคู่มือนี้ มันควรจะทำงานได้ดีใน 12.04
1) ใช้คำสั่งต่อไปนี้:
sudo apt-get install ldap-utils libpam-ldap libnss-ldap nslcd
หมายเหตุ: ระหว่างการติดตั้งแพ็คเกจด้านบนกล่องโต้ตอบจะปรากฏขึ้นและถามเกี่ยวกับการกำหนดค่า LDAP บางอย่าง ให้แน่ใจว่าจะใส่ค่าที่ถูกต้องสำหรับการกำหนดค่า LDAP ของคุณ
2) แก้ไข/etc/nsswitch.conf
(ผ่าน sudo) ผนวก "LDAP" เพื่อบรรทัดเหล่านี้:
#Original file looks like this
passwd: compat
group : compat
shadow: compat
#After appending "ldap" lines look like these
passwd: compat ldap
group : compat ldap
shadow: compat ldap
3) ความคิดเห็นออกบรรทัดrootbinddn
ผมไม่แน่ใจว่าทำไมเราต้องทำอย่างนั้น
4) แก้ไข/etc/pam.d/login
(ผ่าน sudo) และวาง:
session required pam_mkhomedir.so skel=/etc/skel umask=0022
5) แก้ไข/etc/pam.d/lightdm
(ผ่าน sudo) และวาง:
session required pam_mkhomedir.so skel=/etc/skel umask=0022
6) ใช้คำสั่งนี้:
sudo update-rc.d nslcd enable
คุณควรจะสามารถเข้าสู่ระบบเป็นผู้ใช้ LDAP หลังจากรีบูต หากคุณไม่ได้รีบูตเครื่องที่คุณต้องเริ่มต้น NSCD ด้วย:
/etc/init.d/nscd restart
ปัญหาและวิธีแก้ไขที่เป็นไปได้:
/var/log/auth.log
ไฟล์บันทึกทุกครั้ง หากคุณเห็น "ไม่สามารถติดต่อเซิร์ฟเวอร์ ldap" ให้ตรวจสอบว่าเซิร์ฟเวอร์ LDAP สามารถเข้าถึงได้และพอร์ตเปิดอยู่หรือไม่telnet 389
หรือ telnet 636
ในการรับไดเรกทอรีบ้านที่สร้างขึ้นโดยอัตโนมัติเมื่อเข้าสู่ระบบฉันต้องใส่บรรทัด:
session required pam_mkhomedir.so skel=/etc/skel umask=0022
เข้ามา/etc/pam.d/common-session
แทน/etc/pam.d/login
- เมื่อฉันเพิ่งมีในภายหลังไดเรกทอรีบ้านของฉันไม่ได้ถูกสร้าง
sudo apt-get install ldap-utils libpam-ldap libnss-ldapd nslcd
ใช้ libnss-ldapd แทน
ต่อข้อผิดพลาด: https://bugs.launchpad.net/ubuntu/+source/libnss-ldap/+bug/1024475
เพื่อให้มีตัวเลือกในการพิมพ์ชื่อผู้ใช้คุณจะต้องแก้ไขlightdm configuration
ด้วยคำสั่งต่อไปนี้:
/usr/lib/lightdm/lightdm-set-defaults -m true
เกี่ยวกับการพิมพ์ชื่อผู้ใช้ลงใน ligthdm greeter ตั้งแต่ 16.04 คำสั่ง lightdm-set-defaults หายไป
คุณสามารถเพิ่มตัวเลือกสำหรับการพิมพ์ชื่อผู้ใช้ลงในไฟล์กำหนดค่า lightdm ได้ ตัวอย่างเช่นสร้างไฟล์ /etc/lightdm/lightdm.conf และเพิ่มบรรทัดต่อไปนี้:
[SeatDefaults]
greeter-show-manual-login=true