ファイアウォール(ipf, ipnat)の設定方法
FreeBSDには、ファイアウォールの設定用のプログラムがデフォルトでインストールされています。
IPパケットのフィルタリングには、IP Filter(ipf)を使います。
ローカルアドレスからグローバルアドレスへの変換には、ipnatを使います。
事前準備
カーネルの再構築
IP Filterを使うためには、カーネルの再構築が必要です。
ファイアウォールの設定
ipfの設定
unix# vi /etc/ipf.rules (cp /conf/etc/ipf.rules /etc/.)
pass in quick on fxp1 from any to any
pass out quick on fxp1 from any to any
|
ipnatの設定
ipnatで、インターフェイス(fxp1)の172.16.0.0/16のネットワークを、10.76.21.123に変換する場合の設定例です。
unix# vi /etc/ipnat.rules (cp /conf/etc/ipnat.rules /etc/.)
map fxp1 192.168.0.0/24 -> 10.0.1.1/32 portmap tcp/udp 10000:20000
map fxp1 192.168.0.0/24 -> 10.0.1.1/32
|
カーネルの設定
ipfの設定
FreeBSD4.2では、IP Filterがデフォルトでインストールされていますので、rc.confで有効にします。
ログを採取する場合は、ipmon_enableも指定します。
unix# vi /etc/rc.conf
ipfilter_enable="YES"
#ipfilter_rules="/etc/ipf.rules"
ipmon_enable="YES"
|
ipnatの設定
unix# vi /etc/rc.conf
ipnat_enable="YES"
#ipnat_rules="/etc/ipnat.rules"
|
その他の設定
unix# vi /etc/rc.conf
gateway_enable="YES"
|
ファイアウォールの確認方法
ipfのルールの確認方法
unix# ipfstat -i
unix# ipfstat -o
|
ipnatの状態表示方法
unix# ipnat -l
List of active MAP/Redirect filters:
map fxp0 192.168.0.0/24 -> 10.0.1.1/32 portmap tcp/udp 10000:20000
map fxp0 192.168.0.0/24 -> 10.0.1.1/32
---------- 以下略 ---------
|