以前は内部ネットワークでOpenDNSを使用していました。今日、ComcastがDNSSecに切り替わったことがわかりました: Comcast DNSSec 。
DNSSecとその利点について少し調査しました。 DNSSecの基本を理解しています。ほとんどのDNSSecがDNSリクエストに署名するため、DNSクエリに中間者の状況が発生することはありません。多くのマルウェアがDNS中間者攻撃を使用していますか?
それで、OpenDNSはDNSSecが理想的なソリューションではないと考えていることを知りました: DNSSecに関するOpenDNSの意見 。彼らはDNSCurveと呼ばれる前に私が聞いたことがないものを使用します。 DNSSecとよく似ています。 Comcastのソリューションでは、DNSサーバーを使用すれば、自動的に保護されているように見えます。これがOpenDNSに当てはまるかどうかはわかりません。彼らはまた、私が使いたいクールなツールを持っています:DNSCryptはあなたのDNSリクエストを暗号化します。残念ながら、現在のところMACS専用です。
したがって、全体的な質問は次のとおりです。スイッチを作成する必要がありますか、それともOpenDNSとそのテクノロジーはComcastのDNSSecと同じくらい安全ですか?
DNSSECとDNSCurveは、DNSセキュリティの完全に異なる側面に対応しています。
まず、DNSSECはクエリに署名しません。むしろDNSSECは、ゾーン(ドメインなど)がその所有者によって署名されることを許可し、リゾルバー(たとえば、ComcastのDNSサーバー)が署名を検証することを許可します。したがって、取得するゾーンデータが本物であることを確認してください。これは、リゾルバーを不良データの受信から保護しますが、MITMやユーザーとリゾルバーの間のスヌーピングを防ぐことはできません。
一方、DNSCurveは、再帰リゾルバーと権威サーバー間の通信を暗号化し、権威サーバーが偽造に対してデータに署名できるようにしますが、エンドユーザークライアントを不正な再帰リゾルバーから保護することはできません。 OpenDNSのDNSCryptソリューションはDNSCurveと同じテクノロジーに基づいていますが、OpenDNSのような信頼できるサードパーティの再帰リゾルバーとエンドクライアント間のラストマイルを保護します。
どちらがより安全であるかについては、どちらもそうではありません。どちらも安全ですが、セキュリティはさまざまな分野で適用されます。どちらの場合も、セキュリティツールの方が強力ではなく、DNSセキュリティのどちらがより重要であるかを選択します。
あなたがすることについてすべき、それはあなたしか決定できないことですが、以下を考慮してください:
ComcastのDNSSECリゾルバーを使用して、マシンとComcastのリゾルバー間の接続を誰も盗み見たりMITMを調べたりしないようにしてください。
OpenDNSのリゾルバーを使用し、DNSCurveを使用してそれらに接続し、DNSSECを使用しないため、これらのリゾルバーに不正なデータがフィードされないようにしてください。 (公平を期すために、OpenDNSはそのような攻撃を防止する非常に良い実績があります。)
ownリゾルバは、BIND、PowerDNS、Unboundなどの自由に利用できるオープンソースソフトウェアを使用して実行できます。上記のリゾルバーでDNSSECを有効にします。ローカルネットワーク上でクエリを維持します。さらに良いことに、各マシンでリゾルバを実行します。 (これは他の2つのオプションの両方の弱点に対処するため、IMHOの最良のオプションです)
DNSSECとDNSCurveは基本的に同じことを行います。これにより、クライアントはDNS応答のレコードがゾーン所有者が最初に構成したものと同一であることを確認できます。彼らは防弾ではありません。親ゾーン、レジストラ、およびレジストリは、直接または間接的に権限を持つゾーンを使用して、必要なことを何でも実行できます。しかし、それでも何もないよりはましです。
これが機能するには、ゾーンに署名する必要があります。
DNSCurveで署名されたゾーンは事実上存在しません。それが暗号化を追加するという事実は、実際には完全に役に立たない。署名されたゾーンの数を考えると、パケットサイズはクエリが何であるかを推測するのに十分です。
DNSSECはいくつかの牽引力を得ていますが、その展開は依然としてかなり遅いです。それでも、DNSCurveよりもはるかに多く展開されており、opensshやメールサーバーなどの一般的なツールを利用できます。
最も安全なシナリオは、検証がクライアント自体によって行われる場合です。または、少なくとも、ローカルネットワークを信頼する場合は、ルーター上で。 dnsmasqがDNSSEC検証をサポートするようになったので、ルーターファームウェアもDNSSEC検証をサポートし始めます。
次に、サードパーティのリゾルバを使用し、独自のネットワークで検証を行わないことにより、次のことができます。
1)リゾルバーがあなたに送るものを盲目的に信頼します。 2)リゾルバーが正しい応答を送信しても、リゾルバーとクライアント間のネットワークセグメントはDNSスプーフィングに対して脆弱なままです。
Comcastをご利用の場合、DNSリゾルバーはルーターから可能な限り近くにあり、接続はすでにComcastに完全に依存しています。別のサードパーティのリゾルバーを使用している場合、ルーターとそのリゾルバー間のすべてのホップを使用して、応答をハイジャックする可能性があります。
したがって、UnboundなどのローカルDNSSEC検証リゾルバーを使用するのが最善のオプションです。
マルウェアはDNSSECやDNSCurveを気にしません。コンピューターが感染すると、ほとんどのマルウェアはブラウザーに必要なものを直接挿入し、必要に応じてDNS設定を変更できます。
プライバシーは完全に異なるトピックであり、取り組みが始まったばかりです( DNSプライバシーの考慮事項 RFCを参照)。
PCにBindを含むDnssec Triggerをインストールしました。マシンにローカルキーがあります。両方のDNSプロトコルが排他的ではないので、それらを含むサービスを見つけたいのですが。
彼らのウェブサイトから。
Dnssecトリガーにより、エンドホスト(ラップトップまたはデスクトップコンピューター)がDNSトラフィックにDNSSEC保護を使用できるようになります。 DNSは、コンピュータの名前を、それらに接続するために使用されるIPアドレスに変換します。
DNSSEC対応のサーバーをプローブし、それを使用するようにlocalhostのバリデーターに指示します。失敗した場合、ユーザーは安全でない状態を選択できます。
これは、ブラウザーが(多くの場合)DNSSEC対応の結果を取得できることを意味します。 127.0.0.1からの結果をADflagで信頼する場合があります。または、DNSSEC検証自体を行うこともできます。これはDANE(IETF wg)を有効にすることができます。
Dnssec-triggerの最後の手段の1つは、DNSSECにSSLポート443を使用することです。それが失敗した場合、DANE(https、SSLポート443も)が機能する可能性は低いです。したがって、論理的には、DANEがDNSSECに必要な場合に、このサービスがDNSSECを提供する可能性が非常に高くなります。
DNSSECのみattemptsは、プライバシーを提供しようとすることなく、セキュリティを提供します。
DNSCurveは、セキュリティとプライバシーの両方を提供します。
再帰的なDNSリゾルバー(たとえば、質問のComcastおよびOpenDNS)の時点で、これらのテクノロジーの少なくとも1つが、解決が行われるドメイン名の権威あるネームサーバーと、解決に必要な再帰パス全体。この点により、Comcast/OpenDNSサーバー自体がインターネットの他の場所から正当な解決策を取得することが保証されます。
ただし、彼らのサーバーがあなたに代わって解決策を実行できるようになる前に、あなたは彼らにあなたのリクエストを送信する必要があります。
DNSSECまたはDNSCurveに精通しているソフトウェアを使用していない場合、すべての賭けは無効になっています。
OpenDNSのDNSCurveおよびDNSCryptクライアントを使用すると、すべてのクエリがDNSCurveを介して暗号化され、OpenDNSだけが実際のコンテンツを表示して有効な応答を提供できます。
DNSSECでは、FreeBSDでlocal_unbound
のようなものを使用する必要がある場合もあります。私はそれがどのように機能するかまだ完全にわかりません—ほんの数週間前にインポートされただけで、ドキュメントが少し不足していますが、Comcastのような他の再帰サーバーへのトラフィックの転送をサポートしていると思います(forward-addr
キーワードを使用)、また、DNSSEC検証が行われていることも確認します。
そのため、あなたの質問はあなたの目的を知るのに十分具体的ではありません。ただし、何らかの理由でOpenDNSを使用しているように思われ、ネームサーバーをComcastに戻すだけでは、セキュリティに関して何のメリットもありません。
ただし、すでにOpenDNSを使用しているの場合は、DNSCryptクライアントの採用を検討する必要があります。