ufw ファイアウォールが期待どおりに動作しない (特定の着信 IP をブロックする)

ufw ファイアウォールが期待どおりに動作しない (特定の着信 IP をブロックする)

Apacheのaccess.logエントリが次のように表示されます分:

mydomain.com:80 95.211.199.153 - - [19/Apr/2023:23:34:28 +0000] "GET /index.html HTTP/1.1" 200 1425 "-" "Leaf/52 CFNetwork/1402.0.8 Darwin/22.2.0"

したがって、私はその IP アドレスを拒否したいと思います。

私の Debian ("… 5.10.0-21-amd64 #1 SMP Debian 5.10.162-1 (2023-01-21) x86_64 GNU/Linux") は を使用しufw、次uwf statusのように表示されます。

# ufw status
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere                  
WWW Full                   ALLOW       Anywhere                  
WWW                        ALLOW       Anywhere                  
WWW Secure                 ALLOW       Anywhere                  
2235                       ALLOW       Anywhere                  
1194/udp                   ALLOW       Anywhere                  
5432/tcp                   ALLOW       Anywhere                  
Anywhere                   DENY        31.204.152.226            
OpenSSH (v6)               ALLOW       Anywhere (v6)             
WWW Full (v6)              ALLOW       Anywhere (v6)             
WWW (v6)                   ALLOW       Anywhere (v6)             
WWW Secure (v6)            ALLOW       Anywhere (v6)             
2235 (v6)                  ALLOW       Anywhere (v6)             
1194/udp (v6)              ALLOW       Anywhere (v6)             
5432/tcp (v6)              ALLOW       Anywhere (v6)             
5432/udp (v6)              ALLOW       Anywhere (v6)             
5433/tcp (v6)              ALLOW       Anywhere (v6)             
5434/tcp (v6)              ALLOW       Anywhere (v6)             

問題は、これにもかかわらず、毎分ごとに http クエリを受信し続けることです。

何が間違っているのでしょうか?

確認するとiptables -L、約 180 行の長いリストが表示されますが、その IP アドレスが記載されているものはありません。

数年前に ufw をセットアップしましたが、使用すべきだと書かれたものをインストールしていたため、使用するのが困難だと感じています。しかし、ヘルプがほとんど利用できない (man ページがなく、特定のコマンドのコマンドライン ヘルプがない) という理由もあって、使いにくいと感じています。

私は Linux 管理者としてはあまり経験が浅く、基本的なサービス (Apache、gitlab、postgresql) を実行するために Linux システムをセットアップしただけです。このあたりはちょっと手に負えない状況です。

関連する回答も探しました:

念のため言っておきますが、サーバーは DigitalOcean 上の仮想サーバーです。

答え1

@jaromanda-x は私の間違いがどこにあったかを明確に示しました:

DENY ルールを で追加しましたufw addが、ufw insert 1 …が ALLOW ルールの前に来るように を使用する必要がありました。

関連情報