2012-07-18 23 views
10

telnet(または他のプログラム)経由でLDAPサーバーへの接続を確立して、HTTPで通常と同じように要求を出して応答を受け取ることができるかどうかは疑問です。実際、この質問はより一般的であり、ネットワーク接続と通信プロトコルの誤解に関連しています。LDAPの「要求」をtelnetで送ることは可能ですか?

すべてのアプリケーションプロトコルは、通信プロトコル(つまり、サーバーがそのメッセージを理解し、配信に対応するメッセージ)を定義しています。アプリケーションプロトコルの仕組みが分かっていれば、サーバー(そのプロトコルサーバー側を制御するデーモン)との接続を確立し、サーバーとの通信を開始できます。 HTTPで例えば私は、Telnet経由でHTTPサーバーへの接続を確立し、例えば、この要求に彼と話を始めることができます:私はすべてのアプリケーションプロトコルで発生するには、この手順を期待してい

GET /users/pepito HTTP/1.1 
Host: stackoverflow 
Content-Type: text/html 

。このコンセプトは正しいですか?

私はLDAP Protocol Specification RFCを見てきましたが、メッセージの形式はわかりませんでした。つまり、私はHTTPプロトコル仕様のようなものを読むことを期待していました。それはあまりにも一般的だった。 LDAP検索の仕方の例を教えてください。

+1

*なぜ*どのアプリケーションプロトコルでこの現象が起こると思われますか?どこに行が読めるヘッダーを持つHTTPのように見えるのですか? *それらのうちいくつか(FTP、SMTP、...)。それらのさらに多くはしません。 – EJP

+0

私は他の方法を想像することができなかったので、コミュニケーションを確立することができます。私はサーバに何かを送る必要があります。何かは読み込み可能でなければなりません(エンコードされているかもしれませんが、エンコードされた '文字列'は最初のインスタンスでは読み込みできません)。他のプロトコルはどのように管理していますか?あなたは私に例を挙げることができますか?ありがとう、友達。 – flyer88

+0

例は必要ありません。 LDAPプロトコル仕様が必要であり、Telnetクライアントに手動で入力することができないことを伝える必要があります。 – EJP

答えて

20

LDAP RFCは、LDAPメッセージがASN1でエンコードされていることを指定します。これは、メッセージが特別なフォーマットに従う、テキストではなく特別なフォーマットのバイナリデータであることを意味します。これにより、telnetを使って手動でladap-queriesを書くことが非常に難しくなります。

+0

Mmmmありがとう、私は理解し始めている。だから私はRFCを読んで、このように追加操作が記述されている: http://tools.ietf.org/html/rfc4511#section-4.7 ASN1でこれをどのようにエンコードすることができるかを私に教えてください。 – flyer88

+0

ここでは、ASN1のエンコーディングの例を見てみることができます:http://en.wikipedia.org/wiki/Abstract_Syntax_Notation_One – timos

+0

エンコードされたASN1 PDUはこのように見えます(16進数):30 13 02 01 05 16 0e 41 6e 79 62 6f 64 79 20 74 68 65 72 65 3f – timos

関連する問題