apt install libnss-ldap ldap-utils
Állítsuk be, hogy a felhasználói könyvtár automatikusan jöjjön létre, ha az még nem létezik. Szerkesszük a /etc/pam.d/common-session állományt.
Szúrjuk be a végére a következő sort:
session optional pam_mkhomedir.so skel=/etc/skel umask=077
Szerkesszük a /etc/nsswitch.conf állományt:
nano /etc/nsswitch.conf
Keressük meg a passwd, group és shadow kezdetű sorokat majd írjuk minden sor végére az ldap szót.
... passwd: compat ldap group: compat ldap shadow: compat ldap ...
Szerkesszük a libnss-ldap.conf fájlt:
nano /etc/libnss-ldap.conf
Tartalma a következő legyen:
base cn=admin,dc=zold,dc=and uri ldap://192.168.10.2/ ldap_version 3 rootbinddn cn=admin,dc=zold,dc=and
Ugyanezt írjuk a pam_ldap.conf állományba:
nano /etc/pam_ldap.conf
Tartalma:
base cn=admin,dc=zold,dc=and uri ldap://192.168.10.2/ ldap_version 3 rootbinddn cn=admin,dc=zold,dc=and
Az LDAP admin jelszavát írjuk a libnss-ldap.secret és a pam_ldap.secret fájlba. Tegyük fel, hogy a jelszó 12345, ekkor:
echo 12345 > /etc/libnss-ldap.secret echo 12345 > /etc/pam_ldap.secret
Állítsuk be, hogy csak a root tudja olvasni, írni:
chmod 600 /etc/libnss-ldap.secret chmod 600 /etc/pam_ldap.secret
Indítsuk újra az nscd szolgáltatást:
systemctl restart nscd
A beállítások után jelentkezzünk a kliens gépen, egy olyan felhasználóval, aki csak az LDAP szerveren létezik.
A felhasználó a jelszót a következő módon tudja változtatni:
ldappasswd -H ldap://192.168.10.2 -x \ -D "cn=admin,dc=zold,dc=and" \ -W -S "uid=mari,ou=people,dc=zold,dc=and"
Jelszó ellenőrzése:
ldapwhoami -vvv -h 192.168.10.2 \ -D "uid=mari,ou=people,dc=zold,dc=and" -x -W
LDAP kliens telepítéséhez ansible-playbook állomány:
--- - name: LDAP azonosítás kliensen hosts: all become: true remote_user: adminc vars: password: 12345 ldap_server_ip: 192.168.10.2 base_dn: dc=zold,dc=and bind_dn: cn=admin,dc=zold,dc=and tasks: - name: Szükséges csomagok telepítése apt: update_cache: yes state: present name: "{{ packages }}" vars: packages: - libnss-ldap - ldap-utils - name: Felhaszlnálói könyvtár ekészítése lineinfile: dest: /etc/pam.d/common-session line: session optional pam_mkhomedir.so skel=/etc/skel umask=077 insertafter: EOF - name: Azonosítás az nsswitchben lineinfile: dest: /etc/nsswitch.conf regexp: "{{ item.pat }}" line: "{{ item.new }}" with_items: - { pat: '^passwd:', new: 'passwd: compat ldap' } - { pat: '^group:', new: 'group: compat ldap' } - { pat: '^shadow:', new: 'shadow: compat ldap' } - name: libnss-ldap.conf beállítása copy: backup: yes dest: /etc/libnss-ldap.conf content: | base {{ base_dn }} uri ldap://{{ ldap_server_ip }}/ ldap_version 3 rootbinddn {{ bind_dn }} - name: libnss-ldap.secret beállítása copy: backup: yes dest: /etc/libnss-ldap.secret content: | {{ password }} mode: u+rw,g-rwx,o-rwx - name: pam_ldap.conf beállítása copy: backup: yes dest: /etc/pam_ldap.conf content: | base {{ base_dn }} uri ldap://{{ ldap_server_ip }}/ ldap_version 3 rootbinddn {{ bind_dn }} - name: pam_ldap.secret beállítása copy: backup: yes dest: /etc/pam_ldap.secret content: | {{ password }} mode: u+rw,g-rwx,o-rwx - name: Újraindítjuk az nscd szolgáltatást service: name: nscd state: restarted