極北別世界通信

2020年6月の記事一覧

OpenLDAP構築

以前からやろうやろうと思ってはいたのですがなかなか手が出せなかったOpenLDAP構築にようやく手を出した。

きっかけは前回投稿しているOpenMeetings関連。

社内でテスト利用してもらおうにも、アカウント周りの作成とか管理が課題になる。

んではLDAPで管理すりゃええんちゃう?ということで構築開始。
また、今後もLDAPをサポートしているオープンソースの各種ソフトウェアの試験利用時にもアカウントを使いまわせて試す側も楽になるであろうという考えもあってのことではある。

過去に構築そのものはしたことがあるが、その際には有識者とセットで仕事でやったものなんで、極論を言えばコピペが正しく出来ましたか?レベルだったので、今回はちゃんと自分のとこの環境として考えて構築する。

 

■目的
 OpenLDAP サーバの構築
 OpenLDAPクライアントの動作確認
 ユーザー情報の登録(100名前後)の効率のよい方法の検討
 Apache OpenMeetingsや、その他のWeb系のサービスとのLDAP連携の実施

■インストール編

長くなりそうなので複数回にします。今回はインストール編です。
Qiitaのこのあたりの記事丸パクリですが(ありがとうございます)、今回は最終的にいろんなところの記事やら
ブログやらをパクりつつ、全体通して構築していきます。

枯れたソフトウェアということなのか、大抵のディストリビューションでパッケージとして用意されています。

CentOS環境なのでyumで何も考えずにインストールします。

yum install openldap openldap-servers openldap-clients

DB設定用のファイルを用意してアクセス権を変更します。

cp -p /usr/share/openldap-servers/DB_CONFIG.example /var/lib/ldap/DB_CONFIG
chown ldap. /var/lib/ldap/DB_CONFIG

自動起動設定をします。

systemctl start slapd
systemctl enable slapd

下記は当方の環境では不要なのですが、Linuxでのファイルディスクリプタ上限が1024なので、これを増やしておくほうが無難です。

grep "Max open files" /proc/`pidof slapd`/limits
Max open files    1024    4096    files

LDAPはセッション数が多く、やり取りで入出力を管理するファイルディスクリプタ数が足りなくなることがあるようですので、環境によっては変更しておいたほうがいいかもしれません。
※実環境での検証まではしていません。

vi /usr/lib/systemd/system/slapd.service
[Service] の一番下に追記
---
LimitNOFILE=65536
LimitNPROC=65536
---

再起動を行い、ファイルディスクリプタ上限が変わっていることを確認

systemctl daemon-reload
systemctl restart slapd
grep "Max open files" /proc/`pidof slapd`/limits


Max open files    65536    65536    files

また、OpenLdapはデフォルトではログの出力設定がされていません。
試験時はjournalctlコマンドで参照すれば事足りますが、実運用時にトラブルがあった場合など、
ログが残っていないと困ると思いますので、一応ログの設定をしておきます。
併せてログローテーション設定もします。

ログの出力設定
vi /etc/rsyslog.conf
※追記
local4.*   /var/log/ldap/slapd.log
ログのローテーション設定
vi /etc/logrotate.d/syslog
※追記
/var/log/ldap/slapd.log

 いちおう「インストール」的な作業はここまで。

次から管理者設定など「構築」編に行こうかと思います。
(書くのいつになるかな。。。。)

 

0