Whonixが不要なUDPトラフィック、つまりすべてのUDPトラフィックをDNS関連のUDPトラフィックをブロックする方法を知りたいです。ワークステーションとゲートウェイの両方でiptableルールを調べました。ワークステーションにはiptableルールはありません。したがって、ワークステーションはUDPトラフィックをブロックしていないようです。ただし、ゲートウェイには多くのip-tableルールがあります。
Gatewayのiptableルールを1つずつ確認しましたが、udp関連のブロッキングルールも見つかりませんでした。
では、このudpトラフィックはどのようにブロックされますか?
Whonix8の観点からこれに答えます。リンクはWhonix8のソースコードを指しています。
通常、Whonixのファイアウォールはホワイトリストファイアウォールです。つまり、すべてのチェーン(入力、転送、出力)にポリシードロップを使用し、最後のルールとしてドロップまたは拒否ルールを使用します。明示的にホワイトリストに登録されていないすべてのトラフィックは、ドロップまたは拒否されます(チェーンによって異なります)。
Whonix-ワークステーションファイアウォールはここでは無関係です。これは必須ではないオプションのファイアウォールであり、デフォルトで無効になっています。詳細な説明については、その manページ を参照してください。
これを使用する場合は、TCP
のみが残すことができるenforceを使用した次のルール。
## The next rule ensures, that only tcp can leave and achieves the desired result from (4).
iptables -A OUTPUT ! -p tcp -j REJECT --reject-with icmp-port-unreachable
一般的に、-p tcp
は「TCP
のみ」を意味します。また、ここでの! -p tcp
は、TCP
以外のすべてのプロトコルを意味します。
Whonix-ゲートウェイファイアウォール はここで必須の重要な部分です。
トラフィックUDP
トラフィックをポート53
(DNS
)にホワイトリストに登録し、TorのDnsPort
にリダイレクトします。ファイアウォールスクリプトで-p udp --dport 53
を検索して、関連するルールを確認します。ホワイトリストに登録してリダイレクトするその他のトラフィックはTCP
です。ポリシーの削除(セーフティネットとして)および/または最後のルールによる削除/拒否(チェーンによって異なります)により、残りはブロックされます。
チェーンによって異なります...誰かが私がそれが何を意味するのか尋ねる前に。
完全な開示:
私はWhonixのメンテナーです。