2016-04-07 5 views
2

TURNプロトコルについて詳しく説明しているRFC 5766を参照しました。しかし、私は、COTURNをopensource TURNサーバーにダウンロードしてインストールした後では、私が理解できないいくつかの基本的な質問があります。WebRTCのTURNサーバに関する質問

TURNサーバのクライアントとは何ですか?それがWebRTCコールを開始する最初のブラウザですか? TURNサーバは、特定のピアを対象とするクライアントの割り当てを作成します。 WebRTCでは、ピアツーピア通信について話します。 RFCでは、クライアントとサーバー間の通信について説明しています。クライアントとサーバの間のすべての要求/応答は、TURN駆動であるが、ピアとTURNサーバ間の要求/応答は、クライアントに中継される単なるUDPデータメッセージである。

私の2番目の質問は、COTURNに固有です。 "turn_secret"テーブルの "value"フィールドとはどこですか? HMAC over(credentials、realm and username)を使用して、iceserversの "credential"プロパティがturnusers_ltテーブルのhmackeyに対応していますか?この中の "turn_secret"テーブルの "value"フィールドはどこにありますか?

+2

ピアツーピア通信が不可能な場合、TURNサーバは仲介者としてのコミュニケーションを促進することを理解していますか?したがって、ピア・ツー・ピア・ピア・コミュニケーション、つまりクライアント・サーバー通信のペアになります。 – deceze

+0

@deceze私はその部分をもちろん理解しています。したがって、RFCで参照されるクライアントは、webrtcの "呼び出し"を開始する最初のブラウザです。また、私は完全な_lt(長期)認証プロセス/手振れを理解していません...そして、いつ/どこで "turn_secret"の "value"フィールドがこのプロセスで使用されていますか。 – Sam

答えて

2

TL; DR:TURN秘密がTURN認証情報の漏洩を制限するために使用され、それはcoturn docsからRESTのAPI(doc


を使用してTURN認証の一部である:

でWebRTCでは、ブラウザはWebサーバーからTURN接続情報を取得します。この情報は、必要なTURN資格情報が含まれているため、安全な情報です。これらの資格情報は公衆ネットワークを介して送信されるため、潜在的なセキュリティ上の問題があります。

パブリックネットワークを介して貴重な情報を送信する必要がある場合、この情報の有効期間は限られている必要があります。この情報を無断で入手した人は、限られた損害しか行えません。

これは、時間制限されたTURNクレデンシャルの考え方がどのように現れたかを示しています。このセキュリティメカニズムは、長期的な認証メカニズムに基づいています。主な考え方は、Webサーバーがクライアントに資格情報を提供することですが、TURNサーバー接続を作成する必要があるアプリケーションでは、これらの資格情報は限られた時間しか使用できません。

このanswer TURNの秘密の使用例をご覧ください。

+0

ありがとうございます。役に立つ情報と答えが受け入れられました。私は後でその話題を読んだが、COTURN文書の外で見つかった最高のものは、Uberti(Google)らが提案したRFCだった。 TURN REST APIは標準化されていません。あれは正しいですか?それで、TURNの秘密は今日使用できますか?もしそうなら、ブラウザはそれをサポートしていませんか? – Sam

+1

OK ...取得してください。これは、アプリケーションサーバーではなく、ブラウザは秘密を取得/使用しています...コメントする前に、参照された答えを読んでいませんでした。 – Sam

+0

あなたが時間を持っているかどうかの最後の質問...私の投稿にはとにかく尋ねられたもの... "TURNサーバーのクライアントとは何ですか?WebRTC呼び出しを開始するのは最初のブラウザですか?なぜサーバーはICEのサポートを必要としますか? https://www.doubango.org/webrtc2sip/を参照してください。たとえば、「サーバーがICEをサポートしていない場合は...」この分野に精通しているようです。あなたからのいくつかの行が私の時間のトンを節約します!ありがとう – Sam