以下は超Linux初心者のメモ書き的なものです。
テスト用にLDAPサーバを構築するため、事務所のLINUXサーバを取り出してきて、Fedora13をインストールしたのが先週。
しかしOpenLDAPをインストールしようとしてもうまくいかない。というのも、どうやってもなぜか「slapd.conf」が見当たらないんです。
こちらのサイトに「openldap-servers」がないからでは?という回答を見つけたので「rpm -qa | grep openldap」を実行してみるもちゃんとインストールされてある。
困ったなぁ、なんて悩んでいると、同僚が一言。
「Fedoraのバージョン下げたら?」
うむ、確かにFedora11では正常にOpenLDAPが動作している様子(Server Worldさんサイト参考)
さっそくYamagata Univのサイトからバージョン11をダウンロードします。
今回はCDにして6枚組。多いなぁ・・・
ダウンロード→CDに焼く→インストール→初期設定方法についてはFedora13の時とほぼ同じです。
続いてServer WorldさんのサイトとFedoraで自宅サーバ構築さんのサイトを参考にOpenLDAPのインストールと設定を行います。
LDIFファイルの作成と登録方法についてはこちらのサイトを参考にさせてもらいました。参考サイト:UNIX Lifeさんのサイト
ウェブサーバと別にする場合は、
# /usr/bin/system-config-firewall
でファイヤーウォールを立ち上げて、ポート389を開放してください。
これでLDAPサーバの完成です。
はっきり言って、Linuxサーバ構築も初心者だしLDAPについてもそもそもLDAPって何?から始めましたがやっているうちになんとなく分かってくるものですね~。
ついでに
PHPからLDAPに接続する場合はphp-ldapモジュールが入っていないと使用できません。(phpinfoを見るか「# rpm -qa | grep openldap」を実行するとわかります。)
入っていない場合は「#yum -y install php-ldap」を実行しましょう。
■追記
よく使用するコマンド
SLAPD データベースからの LDIF の生成する
/usr/sbin/slapcat
ldifファイルよりエントリを登録(以下例:taro.ldifファイルから登録する場合)
ldapadd -f taro.ldif -x -D "cn=Manager,dc=localhost,dc=com" -W
エントリを削除(以下例:cn=taro,ou=Unit,dc=localhost,dc=comでバインドしているエントリを削除する場合)
ldapdelete -x -D "cn=Manager,dc=localhost,dc=com" -W "cn=taro,ou=Unit,dc=localhost,dc=com"
スキーマについての参考サイト