CentOS 7とFirewalldを使用しています。 fail2banをインストールし、firewallcmd-newアクションを使用しました。 fail2banログに禁止が表示されており、それらがブロックされているかどうかfirewallcmdをチェックインしたいと思います。どうすればできますか?
まず、禁止リストが大きくなり始めたときにパフォーマンスが大幅に向上するため、banaction = firewallcmd-ipset
を使用することを強くお勧めします。
Fail2banのfirewalldアクションのいずれかを使用すると、firewall-cmd --direct --get-all-rules
で検査できる直接ルールが追加されます。
# firewall-cmd --direct --get-all-rules
ipv4 filter INPUT 0 -p tcp -m multiport --dports ssh -m set --match-set fail2ban-sshd src -j REJECT --reject-with icmp-port-unreachable
ipv4 filter INPUT 0 -p tcp -m multiport --dports 0:65535 -m set --match-set fail2ban-nginx-http-auth src -j REJECT --reject-with icmp-port-unreachable
ipv4 filter INPUT 0 -p tcp -m multiport --dports http,https -m set --match-set fail2ban-nginx-wordpress-login src -j REJECT --reject-with icmp-port-unreachable
ご覧のとおり、私はfirewallcmd-ipset
を使用しているため、実際に禁止されているIPアドレスはここには表示されません。代わりに、ipset list
を使用して検索します。
# ipset list
Name: fail2ban-sshd
Type: hash:ip
Revision: 1
Header: family inet hashsize 1024 maxelem 65536 timeout 600
Size in memory: 16528
References: 1
Members:
Name: fail2ban-nginx-http-auth
Type: hash:ip
Revision: 1
Header: family inet hashsize 1024 maxelem 65536 timeout 600
Size in memory: 16528
References: 1
Members:
Name: fail2ban-nginx-wordpress-login
Type: hash:ip
Revision: 1
Header: family inet hashsize 1024 maxelem 65536 timeout 86400
Size in memory: 40656
References: 1
Members:
108.62.172.244 timeout 70819
108.62.172.121 timeout 82750
212.252.164.233 timeout 69907
108.62.24.87 timeout 58024
23.19.127.20 timeout 84310
### many more omitted...
詳細はこちら: https://fedoraproject.org/wiki/FirewallD#Which_zones_are_available.3F
有効な機能を持つすべてのゾーンを一覧表示します。
firewall-cmd --list-all-zones
機能が有効になっているゾーンを印刷します。ゾーンを省略すると、デフォルトのゾーンが使用されます。
firewall-cmd [--zone=<zone>] --list-all
上記のコマンドで十分な情報が表示されない場合は、
最も高度な使用法、またはiptablesの専門家向けに、FirewallDは、生のiptablesコマンドを渡すことができる直接インターフェースを提供します。 --permanentを使用しない限り、ダイレクトインターフェイスルールは永続的ではありません。
FirewallDに追加されたすべてのカスタムチェーンまたはルールを表示するには:
firewall-cmd --direct --get-all-chains
firewall-cmd --direct --get-all-rules