web-dev-qa-db-ja.com

UFWがDNSをブロックしています

サーバーのセキュリティを設定しています。ファイアウォールでの管理を簡単にするために、UFWをインストールしました。 UFWでいくつかの設定を行い、いくつかのポートを許可しました。そのため、有効にするとDNSサービスが応答しなくなりました。

DNSをテストするためにDig www.domain.com.brコマンドを実行してみましたが、成功しませんでした。 UFWが無効になっている場合、このコマンドは問題なく実行されます。 53ポート(TCPおよびUDP)はすでに許可していますが、DNSが機能しません。

私のUFW設定:

Status: active
Logging: on (low)
Default: deny (incoming), deny (outgoing), disabled (routed)
New profiles: skip

To                         Action      From
--                         ------      ----
21/tcp                     ALLOW IN    Anywhere
16/tcp                     ALLOW IN    Anywhere
443/tcp                    ALLOW IN    Anywhere
80                         ALLOW IN    Anywhere
53                         ALLOW IN    Anywhere
465                        ALLOW IN    Anywhere
25/tcp                     ALLOW IN    Anywhere
22                         ALLOW IN    Anywhere
21/tcp (v6)                ALLOW IN    Anywhere (v6)
16/tcp (v6)                ALLOW IN    Anywhere (v6)
443/tcp (v6)               ALLOW IN    Anywhere (v6)
80 (v6)                    ALLOW IN    Anywhere (v6)
53 (v6)                    ALLOW IN    Anywhere (v6)
465 (v6)                   ALLOW IN    Anywhere (v6)
25/tcp (v6)                ALLOW IN    Anywhere (v6)
22 (v6)                    ALLOW IN    Anywhere (v6)
10
diegoklapper

私はこの問題を解決しました。 DNSサービスポートであるポート53の送信を許可しました。ありがとう。

Sudo ufw allow out 53
11
diegoklapper

完全な正しい構文は

Sudo ufw allow out to any port 53
12
Nesha Zoric

まずufw allow dnsはDNS要求の受信を許可しますが、これは望んでいることではありません。

次に、他の回答で言及されているすべてのコマンドを実行できます(最も簡単にufw allow out 53)、ただし順序が重要。したがって、単独で使用するとDNS要求も拒否される拒否ステートメントがある場合、最後に置く

したがって、最初にポート53をDNSサーバーに許可し、後で一部の要求を拒否または拒否する可能性があります。

4
rugk

私は別のプロジェクトのために自分でいくつかのファイアウォールルールに取り組んでおり、@ diegoklapperのソリューションを機能させることができませんでした。

私自身も複製を試みていますSudo ufw allow dnsより明示的に(つまり、特定のインターフェース)失敗しました:

Sudo ufw allow in on eth0 from any to any port 53 proto tcp

私が間違っていることに気づくまで(プロトコルに注意してください):

Sudo ufw allow in on eth0 from any to any port 53 proto udp

注:これは、DNSリクエストを処理または転送していて、アウトバウンドリクエストがデフォルトですでに許可されている場合のdnsmasqに特に当てはまります。

Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip

To                         Action      From
--                         ------      ----
53/udp on eth0             ALLOW IN    Anywhere
2
Matt