UFW - IP アドレスの範囲を許可しますか?

UFW - IP アドレスの範囲を許可しますか?

UFW ファイアウォールを使用してルールを追加し、単一の既知の IP がUbuntu 14.04 上の192.168.1.32テスト Web サーバー ( 192.168.1.48(ローカルのほぼ信頼できるネットワーク上)) にアクセスできるようにすることができます。

sudo ufw allow proto tcp from 192.168.1.23 to 192.168.1.48 port 80

宛先の範囲を追加する方法はありますか?(例:192.168.1.30-192.168.1.50現在のネットワーク上でさらに多くのマシンを許可する)? と を使用する192.168.1.30-192.168.1.50と は192.168.1.30-192.168.1.50機能せず となり、 という結果になりますERROR: Bad source address

答え1

2 進数 (2、4、8、16、32) を使用する必要があるため、より大きい範囲またはより小さい範囲を使用します。その通り1 つのルールでビットマスクを使用して 20 個のホストを処理することは不可能です。

  • 16 台のホスト (192.168.1.16 から 192.168.1.31):

    sudo ufw allow proto tcp from  192.168.1.16/28 to 192.168.1.48 port 80
    

    詳細

    Address:   192.168.1.16          11000000.10101000.00000001.0001 0000
    Rule Mask: 255.255.255.240 = 28  11111111.11111111.11111111.1111 0000
    Wildcard:  0.0.0.15              00000000.00000000.00000000.0000 1111
    
    HostMin:   192.168.1.16          11000000.10101000.00000001.0001 0000
    HostMax:   192.168.1.31          11000000.10101000.00000001.0000 1111
    
  • 32 ホスト (192.168.1.0 - 192.168.1.31)

    sudo ufw allow proto tcp from 192.168.1.0/27 to 192.168.1.48 port 80
    

    詳細

    Address:   192.168.1.0           11000000.10101000.00000001.000 00000
    Rule Mask: 255.255.255.224 = 27  11111111.11111111.11111111.111 00000
    Wildcard:  0.0.0.31              00000000.00000000.00000000.000 11111
    
    HostMin:   192.168.1.0           11000000.10101000.00000001.000 00000
    HostMax:   192.168.1.31          11000000.10101000.00000001.000 11111
    
  • 64 ホスト (192.168.1.0 - 192.168.1.63)

    sudo ufw allow proto tcp from 192.168.1.0/26 to 192.168.1.48 port 80
    

    詳細

    Address:   192.168.1.0           11000000.10101000.00000001.00 000000
    Rule Mask: 255.255.255.192 = 26  11111111.11111111.11111111.11 000000
    Wildcard:  0.0.0.63              00000000.00000000.00000000.00 111111
    
    HostMin:   192.168.1.0           11000000.10101000.00000001.00 000000
    HostMax:   192.168.1.63          11000000.10101000.00000001.00 111111
    

説明

これ以上の説明はできませんウィキペディア

答え2

特定のIPアドレスまたはサブネットからの受信を許可する 特定の IP アドレスまたはサブネットからの着信接続を許可するには、ソースを指定します。たとえば、次のコマンドを実行します。

sudo ufw allow from 192.168.1.0/24 to any port 22

または

sudo ufw allow from 192.168.1.0/24 to 192.168.1.48 port 80

答え3

私はこれが好きです

sudo ufw allow from 192.168.1.0/24 to any port 22

私はいつも ufw を使っていますが、パケット フローを追跡するのに役立つ番号付けスキームも気に入っています。

sudo ufw insert 1 allow in proto tcp from 192.168.1.0/24 to any port
22 comment "SSH Network Connection"

答え4

かなり古い質問ですが、もしまだ誰かが疑問に思っているなら、これは私が見つけた方法です

cat geolocationIpList.txt | awk '/^[^#]/ { print $1 }' | sudo xargs -I {} ufw deny from {} to any

テキストから各行を読み取り、ファイアウォールルールを更新します

元に戻したい場合は許可するように変更できます...

関連情報