-
Instalacja phpldapadmin w CentOS
Niedawno omawiałem instalację i podstawową konfigurację LDAP-a. Założyliśmy wtedy domain container („korzeń”) o nazwie „centos.pl” a dokładniej dc=centos,dc=pl. Zarządzanie ldapem z poziomu terminala nie jest do końca łatwe i szybkie, choć można się przyzwyczaić i wtedy nie będziemy chcieli słyszeć o możliwości wyklikania wszystkiego przez stronę WWW. Jeśli korzystaliście z phpMyAdmin-a to przesiadka na phpLDAPadmina, nie powinna nastręczać dużo trudności. Czas zacząć instalację. Najprościej skorzystać z repozytorium np. epel. Mając je włączone, wydajemy komendę:
yum install phpldapadmin
Niezbędne zależności powinny zostać rozwiązane automatycznie. Następnie edytujemy plik „/etc/httpd/conf.d/phpldapadmin.conf”:
Alias /phpldapadmin /usr/share/phpldapadmin/htdocs
Alias /ldapadmin /usr/share/phpldapadmin/htdocs
Order Deny,Allow
Deny from all
Allow from adres_IP_z_którego_ma_być_możliwy_dostęp_do_phpldapadmin
Można oczywiście wykomentować linie dotyczące katalogu „/usr/share/phpldapadmin/htdocs”, co spowoduje dostęp z każdego miejsca. Następnie restartujemy serwer www (w naszym przypadku Apache) poleceniem:service httpd restart
Po wpisaniu w przeglądarkę adresu „http://adres_ip/phpldapadmin”, powinniśmy zobaczyć taki ekran:
Klikamy „login” po lewej stronie i powinniśmy otrzymać:A po poprawnej autoryzacji coś takiego:
Taka metoda logowania może być upierdliwa jeśli zawsze logujemy się jako ten sam użytkownik. Istnieje możliwość automatycznego logowania bez podawania loginu i hasła. Tak sposób jest mniej bezpieczny, ale gdy ograniczymy dostęp do konkretnych adresów IP, to taka metoda logowania będzie akceptowalna. Przystępujemy do działania i edytujemy plik „/etc/phpldapadmin/config.php, który powinien wyglądać np. tak jak poniżej. Oczywiście proszę je dostosować do własnego ldap-a.
<?php
$config->custom->session['blowfish'] = 'alkjdbadak';
$i=0;
$ldapservers = new LDAPServers;
$ldapservers->SetValue($i,'server','host','127.0.0.1');
$ldapservers->SetValue($i,'server','port','389');
$ldapservers->SetValue($i,'server','base',array('dc=centos,dc=pl'));
$ldapservers->SetValue($i,'server','auth_type','config');
$ldapservers->SetValue($i,'login','dn','cn=admin,dc=centos,dc=pl');
$ldapservers->SetValue($i,'login','pass','nasz_hasełko');
$friendly_attrs = array();
$friendly_attrs['facsimileTelephoneNumber'] = 'Fax';
$friendly_attrs['telephoneNumber'] = 'Phone';
?>Powyższy plik konfiguracyjny obowiązuje przy instalacji wersji phpldapadmin-a 1.0.2-1 (w CentOS 5), a od wersji 1.2.x (w CentOS 6) następujący:
<?php
$config->custom->session['blowfish'] = '';
$config->custom->appearance['friendly_attrs'] = array(
'facsimileTelephoneNumber' => 'Fax',
'gid' => 'Group',
'mail' => 'Email',
'telephoneNumber' => 'Telephone',
'uid' => 'User Name',
'userPassword' => 'Password'
);
$servers = new Datastore();
$servers->newServer('ldap_pla');
$servers->setValue('server','name','Local LDAP Server');
$servers->setValue('server','host','127.0.0.1');
$servers->setValue('server','port',389);
$servers->setValue('server','base',array('dc=centos,dc=pl'));
$servers->setValue('login','auth_type','config');
$servers->setValue('login','bind_id','cn=admin,dc=centos,dc=pl');
$servers->setValue('login','bind_pass','nasze_hasełko');
$servers->setValue('appearance','show_create',true);
?>
To by było na tyle jeśli chodzi o instalację phpldapadmina. Miłego uzytkowania 🙂
Dzięki za drugą część, to GUI via WWW jest super do LDAPa jest jeszcze dedykowana aplikacja np. na środowiska redhatowe jednak potrafi się zawieszać i trzeba ponownie ją uruchamiać. Pozdrawiam ;-).