ldapsearch - LDAP 検索ツール
ldapsearch [-n] [-u] [-v] [-t] [-A] [-B] [-L] [-R] [-H] [-?] [-t] [-T] [-B] [-E] [-J] [-e] [-l] [-Z] [-r] [-M] [-d debuglevel] [-F sep] [-f file] [-D bindDN] [-j filename] [-V version] [-Y proxyDN] [-O hopLimit] [-i locale] [-k path] [-S [-] attribute] [-C pattern] [-c authzid] [-P path] [-N certificate] [-w passwd] [-h ldaphost] [-p ldapport] [-o attributename=value] [-b searchbase] [-s scope] [-a deref] [-l timelimit] [-z sizelimit] filter [attrs]...
ldapsearch ユーティリティーは LDAP サーバーへの接続を開いてバインドし、フィルタ filter を使用して検索を実行します。
ldapsearch で 1 つ以上のエントリが検索された場合は、attrs で指定された属性が取得され、エントリと値が標準出力に表示されます。attrs が指定されていない場合は、すべての属性が返されます。
1 つ以上のエントリが検索された場合、各エントリは、次の形式で標準出力に書き込まれます。
dn: Distinguished Name (DN) attributename: value attributename: value attributename: value ...
複数のエントリは、1 行の空行で区切られます。別の区切り文字を指定するために –F オプションが使用されている場合は、この文字が : 文字の代わりに使用されます。–t オプションが使用されている場合は、実際の値の代わりに一時ファイルの名前が返されます。–A オプションが指定されている場合は、「attributename」のみが返され、属性値は返されません。
サポートしているオプションは、次のとおりです。
属性のみを取得します (値はなし)。これは、あるエントリ内に属性が存在するかどうかだけを確認する必要があり、具体的な値には関心がない場合に役立ちます。
別名の間接参照の実行方法を指定します。deref の指定可能な値は、それぞれ、別名が間接参照されないこと、常に間接参照されること、検索時に間接参照されること、検索のための基本オブジェクトの検索時にのみ間接参照されることを指定する never、always、search、find です。デフォルトでは、別名は間接参照されません。
ASCII 以外の値を表示し、LDIF 以外の古い形式を使用します。このオプションを指定すると、デフォルトの –L オプションが無効になります。
デフォルト値の代わりに、searchbase を検索の開始位置として使用します。
永続検索。接続を開いたまま保持する検索を実行し、検索の範囲とフィルタに一致するエントリが追加、変更、または削除された場合は常に結果を表示します。このオプションを指定すると、ldapsearch ツールは無期限に動作します。停止するには、Ctrl + C キーを入力する必要があります。パターンの形式は次のとおりです。
ps:changeType[:changesOnly[:entryChangeControls]]
getEffectiveRights コントロールの authzid を指定します。例:
dn:uid=bjensen,dc=example,dc=com
識別名 bindDN を使用してディレクトリにバインドします。
LDAP のデバッグレベルを設定します。ldapsearch に役立つデバッグレベルは次のとおりです。
トレース
パケット
引数
フィルタ
アクセス制御
複数のカテゴリのデバッグ情報を要求するには、マスクを追加します。たとえば、トレースとフィルタの情報を要求するには、33 の debuglevel を指定します。
認証応答制御を使用してバインド識別情報を公開 (報告) するようサーバーに要求します。
値の Base 64 エンコーディングを最小化します。
sep を属性名と値の間のフィールド区切り文字として使用します。このオプションが指定されている場合、–L オプションは無視されます。
file から一連の行を読み取り、行ごとに 1 つの LDAP 検索を実行します。この場合、コマンド行で指定された filter はパターンとして扱われ、最初に検出された %s が file の行に置き換えられます。file が 1 つの - 文字である場合は、各行が標準入力から読み取られます。
仮想リスト表示。検索ターゲットのインデックスまたは値と、ターゲットの前後に返されるエントリの数によって決定される、すべての結果のうちの一部のみを取得します。このオプションは、サーバー上のソート順序を指定するために、常に –S および –x オプションが必要です。
すべてのオプションを簡単に説明した使用法のヘルプテキストを表示します。
すべてのオプションを簡単に説明した使用法のヘルプテキストを表示します。
セキュリティー保護された LDAP サーバーが実行されている代替ホストを指定します。
コマンド行入力で使用する文字セットを指定します。デフォルトは、LANG 環境変数で指定された文字セットです。このオプションを使用して、指定した文字セットから UTF8 への変換を実行し、それによって LANG 設定をオーバーライドすることもできます。この引数を使用すると、バインド DN、ベース DN、および検索フィルタパターンを指定された文字セットに入力できます。ldapsearch ツールは、検索要求を処理する前に、これらの引数からの入力を変換します。たとえば、–i no は、バインド DN、ベース DN、および検索フィルタがノルウェー語で提供されていることを示します。この引数は、コマンド行入力にのみ影響を与えます。検索フィルタを含むファイルを指定した場合 (–f オプションを使用)、ldapsearch は、そのファイル内のデータを変換しません。
バインド DN 用のパスワードまたは SSL クライアントの鍵データベース用のパスワードを含むファイルを指定します。パスワードを保護するには、このオプションをスクリプトで使用し、セキュリティー保護されたファイルにパスワードを保存します。このオプションは、–w および –W オプションとは相互に排他的です。
criticality はブール値です (デフォルトは false)。
変換ルーチンを含むディレクトリへのパスを指定します。これらのルーチンは、ディレクトリサーバーでデフォルトではサポートされていないロケールを指定したい場合に使用されます。これは NLS のサポート用です。
検索結果を LDIF 形式で表示します。このオプションを指定すると、–B オプションもオンに設定されます。この動作がデフォルトです。
検索が完了するまで、最大 timelimit 秒待ちます。
スマートリフェラルを管理します。これらが操作のターゲットである場合は、リフェラルに従って取得されたエントリではなく、リフェラルを含むエントリを検索します。
証明書に基づくクライアント認証で使用する証明書名を指定します。たとえば、–N “Directory-Cert” と指定します。
実行される処理を表示しますが、実際には検索を実行しません。–v および –d と組み合わせるとデバッグに役立ちます。
変更するエントリの検索中に従うべき参照ホップの最大数を指定します。デフォルトでは、制限はありません。
SASL メカニズムや、セキュリティープロパティーなどのその他のオプションの場合、動作モード、認可 ID、認証 ID などを指定します。
各種の属性名とそれらの値は次のとおりです。
SASL セキュリティープロパティーの定義用。
SASL レルムを指定します (デフォルトは realm=none)。
SASL バインドの認可 ID 名を指定します。
SASL バインドの認証 ID を指定します。
さまざまな SASL メカニズムを指定します。
クライアントの証明書データベースのパスとファイル名を指定します。例:
-P /home/uid/.netscape/cert7.db
このコマンドをディレクトリサーバーと同じホスト上で使用している場合は、そのサーバーの独自の証明書データベースを使用できます。例:
-P installDir/lapd-serverID/alias/cert7.db
サーバー認証のみを指定するには、–P オプションだけを使用します。
セキュリティー保護された LDAP サーバーが待機している代替 TCP ポートを指定します。
検索中に、返されたリフェラルに自動的には従いません。
ldapsearch コマンドの出力を古い形式で表示します。
検索によって返されたエントリをソートするための属性を指定します。ソート条件は、属性の値に関してアルファベット順、または –attribute の形式を指定した場合は逆アルファベット順です。ソートをより詳細に指定するために複数の –S オプションを指定できます。例:
-S sn -S givenname
デフォルトでは、エントリはソートされません。サーバー側のソートを実行するには、–x オプションを使用します。
検索の範囲を指定します。scope の指定可能な値は、それぞれ、基本オブジェクト、1 レベル、またはサブツリーの検索を指定する base、one、sub です。デフォルトは sub です。
個々の属性値内で行ブレークが使用されないように、検索結果の出力を書式設定します。
取得された値を一連の一時ファイルに書き込みます。これは、jpegPhoto やオーディオなどの ASCII 以外の値を処理する場合に役立ちます。
URL 形式 (–t オプションでのみ有効)。一時ファイルの出力を使用している場合、このツールの標準出力には、属性の値の代わりにファイルの URL が含まれます。例:
jpegPhoto:< file:/tmp/ldapsearch-jpegPhoto-YzaOMh
出力にわかりやすい形式の識別名 (DN) を含めます。
削除操作に使用される LDAP プロトコルのバージョン番号 (2 または 3 のどちらか) を指定します。LDAP v3 がデフォルトです。v3 をサポートしていないサーバーに接続しているときは、LDAP v2 を指定します。
冗長モードで動作し、診断が標準出力に書き込まれるようにします。
–P オプションで指定されたクライアントの鍵データベースのパスワードを指定します。このオプションは、証明書に基づくクライアント認証では必須です。コマンド行で password を指定すると、システム上のほかのユーザーが ps コマンドを使用してそのパスワードを表示できるため、セキュリティーの問題が発生します。ファイルからパスワードを指定するには、代わりに –j を使用します。このオプションは、–j とは相互に排他的です。
ディレクトリへの認証のパスワードとして passwd を使用します。認証に使用されるパスワードを指定するために –w passwd を使用すると、システムのほかのユーザーが ps コマンドを使用して、スクリプトファイルまたはシェルの履歴でそのパスワードを表示できるようになります。このオプションを指定せずに ldapsearch コマンドを使用した場合、このコマンドはパスワードの入力を求め、それを標準入力から読み取ります。–w オプションを指定せずに使用されると、パスワードがほかのユーザーに表示されなくなります。
検索結果を、クライアント上で実行されている ldapsearch コマンドによってではなく、サーバー上でソートされるように指定するには、–S オプションとともに使用します。これは、国際的な検索のように、マッチングルールに従ってソートしたい場合に役立ちます。サーバー上のソートがサポートされている場合は、通常、クライアント上のソートより高速です。
変更操作で使用するプロキシ DN (プロキシ設定された認可 ID) を、通常はシェルの二重引用符 (" ") 内に指定します。
証明書に基づくクライアント認証を提供するために SSL を使用することを指定します。このオプションには、–N と SSL パスワード、および証明書と鍵データベースを識別するためにに必要なその他のすべての SSL オプションが必要です。
検索が完了するまで、最大 sizelimit エントリを取得します。
次のコマンドは、「mark smith」の commonName を持つエントリに対する (デフォルト検索ベースを使用した) サブツリーの検索を実行します。commonName 値と telephoneNumber 値が取得されて標準出力に表示されます。この出力を古い形式で表示するには、–r オプションを使用します。
example% ldapsearch "cn=mark smith" cn telephoneNumber
出力は次のようになります。
dn: Mark D Smith, ou=Sales, ou=Atlanta, ou=People, o=XYZ, c=US cn: Mark Smith cn: Mark David Smith cn: Mark D Smith 1 cn: Mark D Smith telephoneNumber: +1 123 456-7890 dn: Mark C Smith, ou=Distribution, ou=Atlanta, ou=People, o=XYZ, c=US cn: Mark Smith cn: Mark C Smith 1 cn: Mark C Smith telephoneNumber: +1 123 456-9999使用例 2 デフォルト検索ベースを使用したサブツリーの検索の実行
次のコマンドは、mcs のユーザー ID を持つエントリに対するデフォルト検索ベースを使用した –r オプションによるサブツリーの検索を実行して、古い形式で表示します。各エントリのわかりやすい形式の DN がその DN 自体を含む行のあとに出力され、jpegPhoto 値と audio 値が取得されて一時ファイルに書き込まれます。
ldapsearch -r -u -t "uid=mcs" -r jpegPhoto audio
要求された各属性の 1 つ値を持つ 1 つのエントリが検索された場合、出力は次のようになります。
cn=Mark C Smith, ou=Distribution, ou=Atlanta, ou=People, o=XYZ, c=US Mark C Smith, Distribution, Atlanta, People, XYZ, US audio=/tmp/ldapsearch-audio-a19924 jpegPhoto=/tmp/ldapsearch-jpegPhoto-a19924使用例 3 1 レベルの検索の実行
次のコマンドは、organizationName が XY で始まるすべての組織に対する c=US レベルでの 1 レベルの検索を実行します。
example% ldapsearch -s one -b "c=US" "o=XY*" o description
organizationName と description の属性値が取得されて標準出力に表示され、次のような出力が生成されます。
dn: o=XYZ c=US o: XYZ description: XYZ Corporation dn: o="XY Trading Company", c=US o: XY Trading Company description: Import and export specialists dn: o=XYInternational, c=US o: XYInternational o: XYI o: XY International使用例 4 IPv6 サーバー上でのサブツリーの検索の実行
次のコマンドは、IPv6 (つまり、–h) サーバー上での mcs のユーザー ID を持つエントリに対するデフォルト検索ベースを使用したサブツリーの検索を実行します。
example% ldapsearch -u -h '['fec0::111:a00:20ff:fea3:edcf']' \ -t "uid=mcs" jpegPhoto audio
次の終了ステータスが返されます。
正常終了。
エラーが発生した。診断メッセージが標準エラー出力に書き込まれます。
属性についての詳細は、attributes(5) を参照してください。
|
ldapadd(1), ldapdelete(1), ldapmodify(1), ldapmodrdn(1), attributes(5)