Home Direktori dan pam.d menggunakan LDAP


10

Latar belakang:
Saya tidak terlalu terbiasa dengan seluk beluk pam dan otentikasi LDAP pada sisi konfigurasi. Saya telah menggunakan sistem yang menggunakan pam tetapi saya hanya bekerja pada aplikasi, bukan sistem itu sendiri.

Pertanyaan:
Menggunakan pam untuk mengontrol otentikasi melalui LDAP, apakah ini berarti bahwa direktori home tidak akan dibuat pada sistem?

Jika tidak, apakah saya akan membuat pengguna di server atau entah bagaimana mendorong pengguna ke sistem dari sumber LDAP?


1
Pertanyaan ini mungkin terkait: unix.stackexchange.com/q/106391/34796
drs

Jawaban:


13

Ini persisnya pam_mkhomedirdibuat untuk apa.
The pam_mkhomedirmodul dapat membuat direktori home user setelah login jika direktori yang tidak ada.

Cara menginstalnya tergantung pada distribusi Anda. Tetapi Anda harus memasukkannya ke dalam satu atau lebih file /etc/pam.d.
Sebagai contoh, pada sistem saya yang saya miliki /etc/pam.d/system-loginyang disertakan oleh semua layanan lain yang melakukan login (ssh, gdm, dll).
Saya akan memasukkan ke pam_mkhomedir.sodalam sessiontumpukan, seperti:

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

Di mana Anda meletakkannya sepenuhnya tergantung pada apa lagi yang ada di tumpukan. Tetapi Anda harus meletakkannya di atas hal lain yang mungkin memerlukan direktori home.

Lihat man 8 pam_mkhomediropsi yang didukungnya.


Luar biasa. Terima kasih atas jawabannya. Pengguna kami saat ini tidak masuk ke sistem, mereka masuk ke aplikasi web yang di-host di sistem. Apakah ada pemicu yang dapat membuat direktori home mereka setelah login awal dari aplikasi web?
Nicholas Anderson

1
Jika aplikasi web menggunakan pam stack, maka itu akan berfungsi (meskipun Anda mungkin harus memasukkannya ke dalam authtumpukan bukan session). Jika aplikasi tidak menggunakan pam stack, maka Anda harus membuat sesuatu ke dalam aplikasi itu sendiri.
Patrick

Sepertinya hanya modul sesi yang disediakan, saya telah mencoba dan, pada kenyataannya, pam_mkhomedir tidak bekerja dengan modul auth. Saya memiliki masalah yang sama dengan Nicholas Anderson, saya punya aplikasi web. Apakah ada cara untuk mengatasi masalah ini dalam modul auth?
Fabiano Tarlao

6

Di Ubuntu 14.04 system-logintidak ada, tetapi file lain bernama as common-sessionhadir.

Saya pergi ke sana dan meletakkan:

root@GW:~# vim /etc/pam.d/common-session

#
session optional        pam_systemd.so skel=/etc/skel/ umask=0077

Ini akan membuat direktori home jika tidak ada juga mengatur izin 700


Umask yang disarankan oleh help.ubuntu.com/community/LDAPClientAuthentication adalah umask=0022. Saya percaya Anda menghapus SEMUA kemampuan termasuk readyang dapat mencegah beberapa mekanisme otentikasi / kepercayaan berbasis kunci dari bekerja di sistem multi-pengguna atau kasus lainnya.
dragon788

0

Saya akan merekomendasikan menggunakan oddjob-mkhomedir :

Untuk Centos 7 ini berfungsi:

yum install oddjob-mkhomedir

Tambahkan ini ke /etc/pam.d/system-authdan /etc/pam.d/password-auth:

session     optional      pam_oddjob_mkhomedir.so skel=/etc/skel

Dan akhirnya:

systemctl enable oddjob; systemctl start oddjob

Ini diposting awalnya di sini: https://www.centos.org/forums/viewtopic.php?t=48631

Catatan: Jika Anda baru saja memasang /homepartisi Anda , jangan lupa lakukanrestorecon /home

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.