SLAPD

Section: Maintenance Commands (8C)
Updated: 2005/01/24
Index Return to Main Contents
 

名前

slapd - スタンドアローン LDAP デーモン  

書式

/usr/local/libexec/slapd [-[4|6]] [-T (a|c|i|p)] [-d debug-level] [-f slapd-config-file] [-h URLs] [-n service-name] [-s syslog-level] [-l syslog-local-user] [-r directory] [-u user] [-g group] [-t] [-c cookie]  

説明

slapd はスタンドアローンの LDAP デーモンです。このデーモンは、いくつもの ポート(デフォルトは 389)の LDAP コネクションで LDAP 操作を受け付けて応答します。 slapd は通常、OS のブート時に(普通 /etc/rc.local から)起動されます。 通常 slapd を起動すると、フォークを行って起動した tty から自分自身を切り離します。 設定ファイル /usr/local/etc/openldap/slapd.conf に設定があれば、 slapd のプロセスは自分のプロセス ID ( getpid(2) を参照)を .pid ファイルに書き出します。同様に設定があれば、起動時のコマンドライン オプションを .args ファイルに書き出します( slapd.conf(5) を参照)。 オプション -d が与えられていれば、そのデバッグ指定が 0 であっても、 slapd はフォークせず、起動した tty と切り離されません。

slapd は、 slurpd (スタンドアローン LDAP 更新複製デーモン)と協力して、 データベースの複製サービスを提供するように設定できます。 詳しくは slurpd(8) を参照してください。

slapd についてより詳しくは "OpenLDAP 管理者ガイド" を参照してください。  

オプション

-4
IPv4 アドレスだけを受けつけます。
-6
IPv6 アドレスだけを受けつけます。
-T (a|c|i|p)
ツールモードで起動します。引数は slapadd, slapcat, slapindex, slappasswd のどのモードで起動するかを指示します。このオプションは、コマンドライン の中で一番最初に指定してください。継続して指定するオプションは該当する slap ツールプログラムによって解釈されます。 普通、これらのツールプログラムは slapd にシンボリックリンクされています。 このようなオプションを提供するのは、シンボリックリンクされていない場合、 またはシンボリックリンクが利用できない状況に対処するためです。
-d debug-level
デバッグモードを debug-level にします。このオプションを指定すると、そのデバッグ指定が 0 であっても、 slapd はフォークせず、起動した端末から切り離されません。一般的な操作と 状態のメッセージが debug-level の値に応じて出力されます。 debug-level はビットストリングとして扱われます。その各ビットは それぞれ行ったデバッグ情報に対応しています。詳しくは <ldap.h> を参照 してください。 パケットの記録をとるようにしていた場合、記録されるパケットにはバインド時の パスワードも含まれることに注意してください。この記録をログファイルに リダイレクトするなら、ファイルに読取り制限をかけるようにしてください。
-s syslog-level
このオプションは、 syslog(8) 機能にどのレベルのデバッグ情報を記録するかを slapd に示します。
-n service-name
ログ採取などで使われるサービス名を指定します。 デフォルトは argv[0] のベースネーム(basename)、すなわち "slapd" です。
-l syslog-local-user
機能のローカルユーザを指定します。値は LOCAL0, LOCAL1, から LOCAL7 までのどれかにできます。デフォルトは LOCAL4 です。しかし、このオプションは syslog(8) 機能でローカルユーザをサポートしているシステムでのみ許されます。
-f slapd-config-file
slapd の設定ファイルを指定します。デフォルトは /usr/local/etc/openldap/slapd.conf です。
-h URLlist
slapd はデフォルトで ldap:/// (デフォルトの LDAP ポート 389 ですべてのインタフェースを扱う TCP上の LDAP)にて応対します。つまり INADDR_ANY とポート 389 を使ってバインドします。 オプション -h は応対する LDAP (および他のスキームの) URL を指定するために使われます。 たとえば slapd に -h "ldap://127.0.0.1:9009/ ldaps:/// ldapi:///" を与えると、LDAP については 127.0.0.1:9009、 TLS 上の LDAP と IPC (Unix ドメインソケット)上の LDAP については 0.0.0.0:636 でバインドします。ホスト 0.0.0.0 は INADDR_ANY を表します。 このオプションの引数としては、スペースで区切られた URL のリストが求められます。 URL は、LDAP (ldap://), LDAP over TLS (ldaps://), LDAP over IPC (ldapi://) のいずれかのスキームを DN やその他のオプションのパラメータを付けずに 指定します。また、基盤の受付け機構の利用権を示す実験的な拡張を加えて 指定できます。LDAP over TLS と LDAP over IPC のサポートは構築時に指定したオプションに依存します。 ホストは、ホスト名で指定しても、IPv4 と IPv6 のアドレスフォーマットで 指定してもかまいません。ポートを指定する場合は数値で指定しなければなりません。 デフォルトの ldap:// のポートは 389 で、デフォルトの ldaps:// のポートは 636 です。 LDAP over IPC のソケット利用権は "x-mod=-rwxrwxrwx", "x-mod=0777", "x-mod=777" のどれかで示します。 ここで "rwx" のところには対応する利用権を与えないために "-" を 指定でき(しかしソケットでは "w" 利用権だけが有効です)、 "7" のところには 8 進数を指定できます。これらの値の規則は chmod(1) にしたがいます。 LDAP over IPC では任意の操作を許すためにソケットの書込み利用権が必要ですが、 他の受付け機構ではユーザに大雑把な制限を適用するのに "x-mod" 拡張の利点を活かせます。 たとえば読取り操作の許可("r" は検索と比較に適用)、 書込み操作の許可("w" は追加、削除、更新、名前変更に適用)、 実行操作の許可("x" はバインドが要求されることを意味)ができます。 "user" 利用権はバインドしたユーザに適用され、 "other" 利用権は匿名ユーザに適用されます。
-r directory
chroot の「牢獄(jail)」ディレクトリを指定します。 slapd はリスナをオープンした後、設定ファイルの読込みや バックエンドの初期化をする前に、このディレクトリに chdir(2) して chroot(2) します。
-u user
指定したユーザ名あるいはユーザ ID で slapd を起動します。 この際、指定したユーザにより initgroups(3) で設定される 補足グループアクセスリストが使われます。 グループ ID は -g オプションで上書きしない限りユーザの GID に変更されます。
-g group
指定したグループ名あるいはグループ ID で slapd を起動します。

非特権ユーザで起動すると passwd バックエンドが暗号化されたパスワードに アクセスできなくなるシステムがあることに注意してください。 またシェルバックエンドは、指定した非特権ユーザで起動することにも 注意してください。

-t
slapd は設定ファイル(-f オプションで何も与えていないときにはデフォルト)を 読み込み、設定ファイルの構文をチェックしますが、リスナもデータベースも オープンしません。
-c cookie
このオプションは syncrepl 複製コンシューマのための cookie を提供します。 引数 cookie には name=value のペアをカンマで区切ったリストを指定します。 現在のところサポートしている syncrepl cookie フィールドには csn, sid, rid があります。 csn は 前の同期化処理で受け取ったコミット連番(commit sequence number)であり、 syncrepl エンジンが現在のプロバイダの内容に同期化する コンシューマレプリカ内容の状態を表します。 sid は、この syncrepl 要求を処理できるプロバイダサーバが持つ スコープ単位のセッションログの ID です。 このセッションログは同期化処理のトラフィックを減らすために利用します。 rid はコンシューマサーバの複製スレッドの ID です。 これは、 slapd.conf(5) 内の syncrepl 指定から同じ ID を持った定義を見つけるために使われます。
 

使用例

slapd を起動し、フォークして端末から切り離し、デフォルトの設定ファイルに 定義した LDAP データベースのサービスを開始するには 次のようにするだけです。

        /usr/local/libexec/slapd

代替の設定ファイルで slapd を起動し、大量のデバッグ情報を標準エラーに出力するには次のようにします。

        /usr/local/libexec/slapd -f /var/tmp/slapd.conf -d 255

設定ファイルが適正であるかをテストするには次のようにします。

        /usr/local/libexec/slapd -t

 

関連項目

ldap(3), slapd.conf(5), slapd.access(5), slapadd(8), slapcat(8), slapindex(8), slappasswd(8), slurpd(8)

"OpenLDAP 管理者ガイド" (http://www.OpenLDAP.org/doc/admin/)  

バグ

http://www.openldap.org/its/ を参照。  

謝辞

OpenLDAP は OpenLDAP プロジェクト (http://www.openldap.org/ )が開発/管理しています。 OpenLDAP はミシガン大学の LDAP 3.3 リリースより派生しました。  

和訳

稲地 稔 <inachi@kkd.biglobe.ne.jp>


 

Index

名前
書式
説明
オプション
使用例
関連項目
バグ
謝辞
和訳