iptables
iptables関係のパッケージを探す
# apt-cache search iptables
たくさんのパッケージがずらずらと出てくる。無難にiptableを入れる
iptablesはインストールされたが、どうやらコマンドのみで、起動スクリプトなどはインストールされないらしい。そこでiptablesをコマンドから実行することにする。あちこち調べるとどうやら/etc/network/if-pre-up.d以下のディレクトリにあるシェルスクリプトを自動的に実行するらしい。
# vi /etc/network/if-pre-up.d/iptables.sh
以下のような内容とする。
#!/bin/sh
# Remove All Rule
/sbin/iptables -F INPUT
/sbin/iptables -F FORWARD
/sbin/iptables -F OUTPUT# Drop All
/sbin/iptables -P INPUT DROP
/sbin/iptables -P FORWARD DROP
/sbin/iptables -P OUTPUT DROP# Accept Loopback
/sbin/iptables -A INPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
/sbin/iptables -A OUTPUT -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT# Write Accept Port
/sbin/iptables -A INPUT -p tcp --destination-port 22 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --source-port 22 -j ACCEPT
/sbin/iptables -A INPUT -p tcp --destination-port 123 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --source-port 123 -j ACCEPT# Write Log
/sbin/iptables -A INPUT -j LOG --log-prefix "IN-Deny! "
/sbin/iptables -A INPUT -j DROP
/sbin/iptables -A OUTPUT -j LOG --log-prefix "OUT-Deny! "
/sbin/iptables -A OUTPUT -j DROP
実行許可を与え、実行してみる
ところが以下のようなエラー
iptables v1.3.6: can't initialize iptables table `filter': Table does not exist (do you need to insmod?)
いろいろ調べてみるとip_tables.oのモジュールが必要らしい。めんどくさいからカーネルからコンパイルすることにする。
続きは明日