nftablesを使用してポート80を閉じることができないのはなぜですか?

nftablesを使用してポート80を閉じることができないのはなぜですか?

localhostでポート80を閉じたいです。

sudo nft add rule inet  filter input tcp dport 80 drop

nmapを使用して次のことを確認してください。

sudo nmap  -p 80   127.0.0.1
Starting Nmap 7.70 ( https://nmap.org ) at 2021-05-02 05:16 EDT
Nmap scan report for localhost (127.0.0.1)
Host is up (0.00010s latency).

PORT   STATE SERVICE
80/tcp open  http

Nmap done: 1 IP address (1 host up) scanned in 0.31 seconds

ポート80を閉じることができないのはなぜですか?

sudo nft list ruleset
table inet filter {
    chain input {
        type filter hook input priority 0; policy accept;
        iif "lo" accept comment "Accept any localhost traffic"
        iif != "lo" ip daddr 127.0.0.0/8 counter packets 0 bytes 0 drop comment "drop connections to loopback not coming from loopback"
        tcp dport { http } ct state established,new drop
        tcp dport http drop
    }

    chain forward {
        type filter hook forward priority 0; policy accept;
    }

    chain output {
        type filter hook output priority 0; policy accept;
    }
}

今挿入してください:

sudo nft insert rule inet  filter input tcp dport 80 drop
sudo nmap  -p 80   127.0.0.1
Starting Nmap 7.70 ( https://nmap.org ) at 2021-05-02 08:29 EDT
Nmap scan report for localhost (127.0.0.1)
Host is up.

PORT   STATE    SERVICE
80/tcp filtered http

Nmap done: 1 IP address (1 host up) scanned in 2.12 seconds

ベストアンサー1

ルールの順序が重要です。以前のルールがパケットと一致し、パケットを受け入れる必要があることを示す場合、その後のルールはその決定を上書きできません。トラフィックをブロックするルールを挿入するときは注意が必要です。今後これを許可するすべての規則または削除現在のトラフィックを許可する以前のルール(該当する場合)。

デフォルトでは、nft add新しいルールが追加されます。特定の既存のルールの後にルールが挿入されることを明示的に指定しない限り、ルールチェーンの一部を指定します。ルールの追加スタート既存のルールの前にチェーンを使用する必要がありますnft insert

おすすめ記事