web-dev-qa-db-ja.com

IP範囲がブロックされていることをiptablesで確認するにはどうすればよいですか?

Ubuntu 19では、次のスクリプトを使用しています GitHub-iptables + ipset + ipdeny.comを使用して国をブロック

インストールして、テスト用に2つのIPリストを取得するように構成しました。シェルから実行しても、/var/log/ipset-country.log

を使用してブロックされたIPの範囲を一覧表示しようとすると

iptables -L INPUT -v -n

そうですか

Chain INPUT (policy DROP 59 packets, 2873 bytes)
pkts bytes target     prot opt in     out     source               destination         
407K  137M ufw-before-logging-input  all  --  *   *    0.0.0.0/0            0.0.0.0/0           
407K  137M ufw-before-input  all  --  *      *    0.0.0.0/0            0.0.0.0/0           
33086 1783K ufw-after-input  all  --  *      *    0.0.0.0/0            0.0.0.0/0           
32577 1759K ufw-after-logging-input  all  --  *    *    0.0.0.0/0            0.0.0.0/0           
32577 1759K ufw-reject-input  all  --  *      *     0.0.0.0/0            0.0.0.0/0           
0     0 LOGIPS     tcp  --  *    *   0.0.0.0/0   0.0.0.0/0   match-set ipv4-falkland_islands src
0     0 LOGIPS     tcp  --  *    *   0.0.0.0/0   0.0.0.0/0   match-set ipv4-ethiopia src
32577 1759K ufw-track-input  all  --  *    *     0.0.0.0/0            0.0.0.0/0 

2つのipv4 IPセットのIP範囲が表示されていないようです。代わりに、私は0.0.0.0/0

これら2つのIPリストが正しくインポートされているかどうかを確認するにはどうすればよいですか?

現在ブロックされているIP範囲を一覧表示するにはどうすればよいですか?

1
BlueDogRanch

最終的には、適切に機能していれば、国のブロックルールにゼロ以外のパケット数とバイト数が表示されるはずです。例:

Chain INPUT (policy DROP 0 packets, 0 bytes)
    pkts      bytes target     prot opt in     out     source               destination
   ...
   60848  3326067 DROP       all  --  enp4s0 *       0.0.0.0/0            0.0.0.0/0            match-set china src
    1265    57566 DROP       all  --  enp4s0 *       0.0.0.0/0            0.0.0.0/0            match-set hongkong src
   26865  1085462 DROP       all  --  enp4s0 *       0.0.0.0/0            0.0.0.0/0            match-set romania src
  193511  7816920 DROP       all  --  enp4s0 *       0.0.0.0/0            0.0.0.0/0            match-set russia src
   33149  1358726 DROP       all  --  enp4s0 *       0.0.0.0/0            0.0.0.0/0            match-set ukraine src

セットの内容をリストするには、Sudo ipset list SETNAME。例:

doug@DOUG-64:~$ Sudo ipset list romania | head -15
Name: romania
Type: hash:net
Revision: 6
Header: family inet hashsize 1024 maxelem 65536
Size in memory: 65600
References: 1
Members:
193.104.73.0/24
45.131.104.0/22
89.45.66.0/24
91.240.94.0/24
176.223.66.0/24
185.248.136.0/22
46.175.152.0/22
176.116.32.0/20
1
Doug Smythies

表示されているルールが適切であれば、ファイアウォールは稼働しています。

コマンドラインターミナルを開く([アプリケーション]> [アクセサリ]> [ターミナル]を選択)、またはsshを使用してリモートサーバーにログインし、次のコマンドを入力してIPアドレスを次のようにブロックします。

# /sbin/iptables -A INPUT -s 65.55.44.100 -j DROP

ブロックされたIPアドレスを表示するには、次のように入力します。

# iptables -L INPUT -v -n

OR

# iptables -L INPUT -v -n | less

タスク:禁止されているIPのLinuxを確認する次のようにgrepコマンドを使用して、IPアドレス1.2.3.4がブロックされているかどうかを確認します。

# iptables -L INPUT -v -n | grep "1.2.3.4"

IPアドレス1.2.3.4を削除またはブロック解除するにはどうすればよいですか? LinuxでIPアドレスを削除またはブロック解除するには、次の構文を使用して入力します。

# iptables -D INPUT -s 1.2.3.4 -j DROP

最後に、ファイアウォールを必ず保存してください。

# service iptables save
0
Ahmed elesawy