2013年3月1日金曜日

CentOSにphpLDAPadminをインストールしてOpenLDAPを管理

OpenLDAPをブラウザから管理するツールとしてphpLDAPadminが便利そうなのでインストールしてみます。
OpenLDAPサーバとは別のWebサーバにphpLDAPadminにインストールしてOpenLDAPを管理する方式を考えています。

【OpenLDAPサーバ】
OS: CentOS 6.3(64-bit)
openldap-servers: 2.4.23
IP: 192.168.77.146

【Webサーバ】
OS: CentOS 6.3(64-bit)
Apache: 2.2.15
PHP: 5.3.3
phpLDAPadmin: 1.2.3
IP: 192.168.77.147


■PHPに必要なモジュールの確認

[root@web03 ~]# rpm -qa | grep php php-pdo-5.3.3-3.el6_2.8.x86_64 php-cli-5.3.3-3.el6_2.8.x86_64 php-pear-1.9.4-4.el6.noarch php-gd-5.3.3-3.el6_2.8.x86_64 php-common-5.3.3-3.el6_2.8.x86_64 php-xml-5.3.3-3.el6_2.8.x86_64 php-5.3.3-3.el6_2.8.x86_64 [root@web03 ~]#
↑php-ldapがない。

■php-ldapインストール

==================================================================== Package Arch Version Repository Size ==================================================================== Installing: php-ldap x86_64 5.3.3-14.el6_3 updates 36 k Updating for dependencies: php x86_64 5.3.3-14.el6_3 updates 1.1 M php-cli x86_64 5.3.3-14.el6_3 updates 2.2 M php-common x86_64 5.3.3-14.el6_3 updates 523 k php-gd x86_64 5.3.3-14.el6_3 updates 104 k php-pdo x86_64 5.3.3-14.el6_3 updates 73 k php-xml x86_64 5.3.3-14.el6_3 updates 101 k Transaction Summary ==================================================================== Install 1 Package(s) Upgrade 6 Package(s) Total download size: 4.1 M Is this ok [y/N]: y (以下省略) [root@web03 ~]# rpm -qa | grep php php-5.3.3-14.el6_3.x86_64 php-gd-5.3.3-14.el6_3.x86_64 php-pear-1.9.4-4.el6.noarch php-common-5.3.3-14.el6_3.x86_64 php-xml-5.3.3-14.el6_3.x86_64 php-ldap-5.3.3-14.el6_3.x86_64 php-pdo-5.3.3-14.el6_3.x86_64 php-cli-5.3.3-14.el6_3.x86_64 [root@web03 ~]#

■ブラウザでPHPモジュール確認

[root@web03 ~]# echo "<?php phpinfo(); ?>" > /var/www/html/test.php
http://192.168.77.147/test.php にアクセス。

↑ldapの項目があることを確認。

■EPELをyumリポジトリに追加

[root@web03 ~]# wget http://ftp.riken.jp/Linux/fedora/epel/RPM-GPG-KEY-EPEL-6 [root@web03 ~]# rpm --import RPM-GPG-KEY-EPEL-6 [root@web03 ~]# vi /etc/yum.repos.d/epel.repo [root@web03 ~]# cat /etc/yum.repos.d/epel.repo [epel] name=EPEL RPM Repository for Red Hat Enterprise Linux baseurl=http://ftp.riken.jp/Linux/fedora/epel/6/$basearch/ gpgcheck=1 enabled=0 [root@web03 ~]#
※phpLDAPadminをyumでインストールするにはEPELリポジトリが必要。

■phpLDAPadminインストール

[root@web03 ~]# yum --enablerepo=epel install phpldapadmin ====================================================================== Package Arch Version Repository Size ====================================================================== Installing: phpldapadmin noarch 1.2.3-1.el6 epel 806 k Transaction Summary ====================================================================== Install 1 Package(s) Total download size: 806 k Installed size: 2.4 M Is this ok [y/N]: y (以下省略)

■config.php設定

[root@web03 ~]# cp -p /etc/phpldapadmin/config.php /etc/phpldapadmin/config.php.org [root@web03 ~]# vi /etc/phpldapadmin/config.php 299行目あたり追記 $servers->setValue('server','host','192.168.77.146'); 399行目あたり、uid→dnに変更 $servers->setValue('login','attr','uid'); ↓ $servers->setValue('login','attr','dn');
※上記以外の設定を下手に行うと画面が表示されない。

■phpldapadmin.conf設定

[root@web03 ~]# cp -p /etc/httpd/conf.d/phpldapadmin.conf /etc/httpd/conf.d/phpldapadmin.conf.org [root@web03 ~]# vi /etc/httpd/conf.d/phpldapadmin.conf [root@web03 ~]# cat /etc/httpd/conf.d/phpldapadmin.conf # # Web-based tool for managing LDAP servers # Alias /phpldapadmin /usr/share/phpldapadmin/htdocs Alias /ldapadmin /usr/share/phpldapadmin/htdocs <Directory /usr/share/phpldapadmin/htdocs> Order Deny,Allow Deny from all Allow from 127.0.0.1 192.168.77.0/24 ←アクセス許可IP追加 Allow from ::1 </Directory> [root@web03 ~]# [root@web03 ~]# /etc/init.d/httpd restart
※表示の都合上タグを"<"と">"で記載。

■ブラウザで接続

https://192.168.77.147/ldapadmin に接続し先日作成したOpenLDAPの情報を確認する。


↑管理者でログインする場合のログインDNは、「cn=Manager,dc=open_ldap,dc=com」

※登録したユーザでログインも可能。ログインDNは、「cn=en2011002,ou=unit01,dc=open_ldap,dc=com」等。自分以外のエントリの情報も確認できるが自分を含め情報の変更は何もできない。(権限がない。この辺は設定でどうにかなりそうだが…。また次回)

0 件のコメント:

コメントを投稿