|
FireWall構築方法(IP Masquerade)
Copyright
by Zou Liangzhi
ソース:
ipchains-1.3.9-5.i386.rpm
インストール:
rpm -ivh ipchains-1.3.9-5.i386.rpm
設定:
1、必要器具
・ NIC 1枚
・ クロスケーブル 1つ
2、構築条件
IP Masquerage機能を使用するためカーネルの再構築をするが、以下では
Kernel 2.0.36 の場合を例とし記す。
Kernel のバージョンが 2.2.** の場合は、設定ファイルが異なるので注意が必要。(ipchain)
3、構築構成
202.17.19.128のネットワーク内に PC-A(202.17.19.135)、PC-B(192.168.0.1)が存在する。
PC-Aを FireWall とし、PC-B をネットワーク内から隠す。
PC-B からの全許可と外部からの完全なセキュリティを目的とする。
4、準備
PC-Aに NICを差し、クロスケーブルで PC-B と接続する。
5、手順
5-1. PC-A側の設定(FireWall)
5-1-1. カーネルの再構築(Kernel 2.0.36)
#make menuconfig
・ Loadable module support -> Enable
loadable module support[Y]
・ General setup -> Networking support[Y]
・ Network device support -> Dummy net driver support[Y]
・ Networking options -> TCP/IP networking[Y]
・ Network firewall[Y]
・ IP : forwarding/gatewaying[Y]
・ IP : firewalling[Y]
・ IP : masquerading[Y]
・ IP : ipautofw masquerading[Y]
・ IP : ICMP masquerading[Y]
・ IP : always defragment[Y]
#make dep clean install
#reboot
5-1-2. ネットワークドライバの認識及び設定
#cd /etc/
#vi conf.modules
以下の行を追加する
・ alias eth1 **** (****は、ドライバの種類。例として、3c59x)
#cd /etc/sysconfig/network-scripts/
#cp ifcfg-eth0 ifcfg-eth1 (PC-Aのeth0を外向け、eth1を内向けとする)
#vi ifcfg-eth1
DEVICE = eth1
IPADDR = ***.***.***.*** (例として、192.168.0.1)
NETMASK = 255.255.255.0
NETWORK = ***.***.***.*** (例として、192.168.0.0)
BROADCAST = ***.***.***.*** (例として、192.168.0.255)
ONBOOT = yes -> "yes"とすると、reboot時に自動起動する
BOOTPROTO = none
#ifup eth1
#ifconfig
eth1が新たに認識されていればOK!!
5-1-3. IP Masqueradeの起動
#echo 1 > /proc/sys/net/ipv4/ip_forward
#/sbin/ipchains -A forward -s ***.***.***.***/24
-j MASQ
(***は、内側の ネットワークを指定。例として、192.168.0.0)
#/sbin/ipchains -P forward DENY
注意 : pingコマンドにより外向けに発信し正常であることを確認
5-2. PC-B側の設定(Client)
5-2-1. GateWayの編集
#cd /etc/sysconfig/
#vi network
NETWORKING = yes
FORWARD_IPV4 = false
HOSTNAME = test.dreamwork.ish.net.it-chiba.ac.jp
DOMAINNAME = dreamwork.ish.net.it-chiba.ac.jp
GATEWAY = ***.***.***.*** (内側のネットワークのIPを指定、例として、192.168.0.1)
GATEWAYDEV = eth0 (自身のネットワークドライブのため基本的に変更なし)
5-2-2. IPアドレスの変更
#cd /etc/sysconfig/network-scripts/
#vi ifcfg-eth0
DEVICE = eth0
IPADDR = ***.***.***.*** (内側のネットワークのIPを割り振る、例として、192.168.0.2)
NETMASK = 255.255.0.0
NETWORK = ***.***.***.*** (例として、192.168.0.0)
BROADCAST = ***.***.***.*** (例として、192.168.0.255)
ONBOOT = yes
5-2-3. ネットワークの再起動
#cd /etc/rc.d/init.d/
#./network stop
#./network start
6、動作確認
PC-Aで、pingコマンドにより、202.17.19.129、202.17.19.142、192.168.0.2
を動作確認(全てOKであること)。
PC-Bで、pingコマンドにより、202.17.19.135、202.17.19.142、192.168.0.1 を動作確認(全てOKであること)。
7、再起動時の立ち上げ
PC-Aマシンの現在のランレベルに対して、IP Masquerade の起動を追加する
#cd /etc/rc.d/init.d
#vi firewall
#!/bin/sh
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/ipchains -A forward -s 192.168.0.0/24 -j MASQ
/sbin/ipchains -P forward DENY
ランレベルが"5"の場合
#cd /etc/rc.d/rc5.d
#ln -s S**firewall ../rc.d/firewall
|