私は静的HTMLベースのウェブサイトを実行しているOpenBSD 5.1コンピュータを持っています。
許可するIPアドレスのリストがあります。たとえば、次のようになります。
...
78.128.49.0/24
78.128.50.0/24
...
約10KB。 〜10,000行。サーバー(httpd、sshなどすべて、未使用のポート)に接続せずにこれらのIPアドレスを許可したいと思います。
尋ねる:host.allow/host.denyファイルでこれを行うための最良の構文は何ですか? (私が知っている限り、10,000のIPアドレス範囲をファイルに入れてからファイアウォールに入れる方が良いです。)
答え1
OpenBSDの実装では、tcpwrappers
各アドレスに10,000個のエントリを含める必要があります。/etc/hosts.allow
これは非常に迅速に扱いにくくなります。
ALL : ... 78.128.49.0/24 78.128.50.0/24 ... : deny
悪夢になるためにたくさん並ぶ必要はありません。アドレスはスペース、カンマ、またはその両方で区切られます。
これをpf
構成して実行している場合は、アドレスファイルの内容でテーブルを入力する方が簡単です。
table <blockthese> persist file /etc/list-of-addresses-to-block
block in log quick on $ext_if from <blockthese> to any
テーブルルックアップはpf
高速で、メモリ使用量の面ではテーブルは非常に効率的です。したがって、古いシステムのRAM容量が非常に制限されていない限り、この方法はうまく機能します。これは私が複数のシステムで使用した戦略です。 FreeBSDホストであり、非常にうまく動作します。