OpenLDAP: Porovnání verzí
m (→Externí odkazy: +link) |
m (→Externí odkazy: +link) |
||
Řádka 154: | Řádka 154: | ||
* http://docs.adaptivecomputing.com/viewpoint/hpc/Content/topics/1-setup/installSetup/settingUpOpenLDAPOnCentos6.htm | * http://docs.adaptivecomputing.com/viewpoint/hpc/Content/topics/1-setup/installSetup/settingUpOpenLDAPOnCentos6.htm | ||
* http://blog.christophersmart.com/articles/openldap-how-to-fedora/ | * http://blog.christophersmart.com/articles/openldap-how-to-fedora/ | ||
+ | * http://wiki.samba.org/index.php/Samba_&_LDAP | ||
+ | * https://wiki.debian.org/PhpLdapAdmin | ||
+ | * http://ubuntuforums.org/showthread.php?t=1515119 |
Aktuální verze z 23. 8. 2013, 08:21
LDAP umožňuje vést samostatnou databázi uživatelů, která je přístupná jak systému, tak dalším programům (např. Samba, RADIUS server atd).
Obsah
- 1 Konfigurace v Centos 6
- 1.1 Instalace
- 1.2 Kontrola konfiguračních souborů
- 1.3 Heslo správce LDAP
- 1.4 Změna cn a dc
- 1.5 Ochrana hesel
- 1.6 Spuštění OpenLDAP serveru
- 1.7 Kořen LDAP stromu
- 1.8 Firewall
- 1.9 Povolení SSL
- 1.10 Schémata pro LDAP strom
- 1.11 Přidání OU
- 1.12 Přidání uživatele
- 1.13 Vytvoření skupiny
- 1.14 Zařazení uživatele do skupiny
- 2 Externí odkazy
Konfigurace v Centos 6
OpenLDAP používá od verze 2.3 novou hierarchii konfiguračních souborů, které se nacházejí v adresáři /etc/openldap/slapd.d a není zde žádný /etc/openldap/slapd.conf. Tomu je přizpůsoben i tento návod.
Instalace
yum -y install openldap openldap-clients openldap-servers
Kontrola konfiguračních souborů
Po každé změně, které budete dále dělat, doporučuji spustit kontrolu konfiguračních souborů pomocí příkazu:
slaptest -u
Heslo správce LDAP
Heslo správce umožňuje nejsilnější způsob přístupu k LDAP serveru. Je uloženo v konfiguračním souboru. Může být buď v otevřené formě nebo v podobě hashe, který vám vygeneruje příkaz slappasswd.
slappasswd
Heslo vložte do konfiguračního souboru pomocí nějakého editoru, například:
vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}bdb.ldif
Do souboru pak vložte řádek, který je výstupem předchozího příkazu, tj. něco jako:
... olcRootPW: {SSHA}VystupPrikazu-slappasswd ...
Změna cn a dc
V konfiguračních souborech je nutné změnit cn (přihlašovací jméno správce) a dc (doménu LDAP stromu). Tj. změnit „cn=Manager,dc=my-domain,dc=com“ na něco, co vám vyhovuje, například „cn=admin,dc=pslib,dc=cz“. CN označuje v hantýrce LDAP přihlašovací jméno a DC pak doménu (zde je správcem tedy uživatel admin). Nepoužívejte jako jméno cn=root, protože OpenLDAP si s tím pak nebude vědět rady (root je specifické označené kořene LDAP stromu). Obvykle se používá existující název domény, kterou organizace používá i na Internetu (zde pslib.cz).
vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}bdb.ldif vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{1\}monitor.ldif
Ochrana hesel
Je vhodné, aby si uživatelé nemohli navzájem číst hashe hesel. Hashovací funkce je sice jednosměrná, takže není možné ze zakódovaného tvaru (hashe) získat zpět původní heslo, ale lze použít útok hrubou silou a duhové tabulky. Proto je potřeba hashe chránit.
vim /etc/openldap/slapd.d/cn\=config/olcDatabase\=\{2\}bdb.ldif
V souboru doplňte (nezapomeňte přizpůsobit „cn=admin,dc=pslib,dc=cz“ své potřebě:
olcAccess: {0}to attrs=userPassword by self write by dn.base="cn=admin,dc=pslib,dc=cz" write by anonymous auth by * none olcAccess: {1}to * by dn.base="cn=Manager,dc=acme,dc=com" write by self write by * read
Výše uvedená pravidla povolují uživateli číst jen hash svého hesla. Jen správce LDAP (viz výše, zde je to admin) může číst a zapisovat jakékoliv heslo. Všichni (i anonymní) mohou číst všechny atributy (kromě zmíněného hesla) všech ostatních uživatelů.
Spuštění OpenLDAP serveru
Nastavte automatické spuštění služby slapd při startu a pak server restartujte (pokud ještě neběží, chybu ignorujte):
chkconfig slapd on service slapd restart
Kořen LDAP stromu
Vytvořte soubor pslib.ldif
:
dn: dc=pslib,dc=cz objectClass: dcObject objectClass: organization dc: pslib o : pslib
Spusťte příkaz:
ldapadd -f pslib.ldif -D cn=admin,dc=pslib,dc=cz -w heslosprávceLDAP
Výstupem by mělo být:
adding new entry "dc=pslib,dc=cz"
Pokud je vypsána chyba „ldap_bind: Invalid credentials (49)“, je ve dvojici jméno správce a jeho heslo chyba. Zkontrolujte, zda jste všude použili stejnou definici „cn=admin,dc=pslib,dc=cz“ a nezapomněli někde něco původního.
Otestujte správné vytvoření stromu LDAP příkazem:
ldapsearch -x -LLL -b dc=pslib,dc=cz
Výstupem by mělo být:
dn: dc=pslib,dc=cz objectClass: dcObject objectClass: organization dc: pslib o: pslib
Firewall
Pokud má být LDAP přístupný ze sítě, je potřeba ve firewallu otevřít port 389 (ldap):
iptables -A INPUT -p tcp --dport ldap -j ACCEPT
Pokud bude do LDAP přistupováno pouze lokálně, není obvykle potřeba ve firewallu nic měnit, protože na loopback je typicky povolen neomezený provoz.
Povolení SSL
V souboru /etc/sysconfig/ldap
by měl být řádek:
SLAPD_LDAPI=yes SLAPD_LDAPS=yes
Schémata pro LDAP strom
Pokud spustíte démona pomocí příkazu slapd -d1
, vypíše nejprve jaká schémata a pak jaké konfigurační soubory načítá. Běh démona pak přerušte kombinací kláves CTRL+c.
service slapd stop slapd -d1 CTRL+c
Přidání OU
Přidání organizační jednotky (OU, organizational unit) do LDAP stromu. Předpokládá se, že LDAP databáze je spuštěna se schématem InetOrgPerson. Vytvořte soubor users.ldif s obsahem:
dn: ou=Users,dc=pslib,dc=cz objectClass: organizationalUnit ou: Users
Spusťte příkaz:
ldapadd -f users.ldif -D cn=admin,dc=pslib,dc=cz -wHesloSprávceLDAP
Přidání uživatele
Vytvořte soubor rene.ldif:
dn: cn=Rene Huzva,ou=Users,dc=pslib,dc=cz cn: Rene Huzva sn: Huzva objectClass: inetOrgPerson userPassword: tajneheslo uid: rene.huzva
Spusťte příkaz:
ldapadd -f rene.ldif -D cn=admin,dc=pslib,dc=cz -wHesloSprávceLDAP
Vytvoření skupiny
Vytvořte soubor delnici.ldif:
dn: cn=Delnici,ou=Users,dc=pslib,dc=cz cn: Delnici objectClass: groupOfNames member: cn=rene.huzva,ou=Users,dc=pslib,dc=cz
Spusťte příkaz:
ldapadd -f delnici.ldif -D cn=admin,dc=pslib,dc=cz -wHesloSprávceLDAP
Zařazení uživatele do skupiny
Vytvořte soubor doSkupiny.ldif:
dn: cn=Delnici,ou=Users,dc=pslib,dc=cz changetype: modify add: member member: cn=rene.huzva,ou=Users,dc=pslib,dc=cz
Spusťte příkaz:
ldapadd -f doSkupiny.ldif -D cn=admin,dc=pslib,dc=cz -wHesloSprávceLDAP
Externí odkazy
- http://docs.adaptivecomputing.com/viewpoint/hpc/Content/topics/1-setup/installSetup/settingUpOpenLDAPOnCentos6.htm
- http://blog.christophersmart.com/articles/openldap-how-to-fedora/
- http://wiki.samba.org/index.php/Samba_&_LDAP
- https://wiki.debian.org/PhpLdapAdmin
- http://ubuntuforums.org/showthread.php?t=1515119