网友俱乐部 » » FreeBSD教程 » 利用 FreeBSD 组建安全的网关

2007-3-1 09:12 ljjk5
利用 FreeBSD 组建安全的网关

在FreeBSD上可以使用ipfw/natd来做NAT及firewall,也可以使用ipfilter来做NAT。  
以下介绍使用IP Filter来做NAT  
1、使用二块网卡。一块是Realtek 8139C,在内核认到为:rl0(对外),
一块是D-Link 530TX,在内核认到为:vr0(对外)。  
2、设置IP地址。在/etc/rc.conf中加上:  
ifconfig_rl0="inet 163.163.163.163 netmask 255.225.225.225" 
(安装FreeBSD时认到的网卡1,不用添加;163.163.163.163为ISP给你的静态IP地址。
拨号的我没试过。也不知到怎样做,如果哪位知道请告诉我一声。)  
ifconfig_vr0="inet 192.168.0.1 netmask 255.255.255.0" (设置第二块网卡的IP地址)  
3、修改/etc/rc.conf,改为:  
firewall_enable="NO"  
gateway_enable="YES"  
4、因为ipfw和ipfilter是不能共存的。所以如果要使用ipfilter,必须将内核中有关
ipfw的部份注释掉。  
#mkdir /root/kernels  
#cd /usr/src/i386/conf  
#cp GENERIC /root/kernels/mykernel  
#ln -s /root/kernels/mykernel  
先在内核的配置文件查找IPFIREWALL,执行:  
#grep -i IPFIREWALL /root/kernels/mykernel  
如果找到,就注释掉,做法如下:  
#options IPFIREWALL  
#options IPDIVERT  
如果找不到IPFIREWALL,可以直接添加:  
options IPFILTER  
options IPFILTER_LOG  
保存mykernel  
#config mykernel  
#cd /usr/src  
#make buildkernel KERNCONF=mykernel  
#make installkernel KERNCONF=mykernel  
#reboot  
重启进入FreeBSD,如果在开机信息里看到IP Filter 3.4.16 installed 表明内核
已经支持IP Filter。  
5、建立ipnat配置文件。  
#vi /etc/ipnat.conf  
加入:  
map rl0 192.168.0.0/24 -> 163.163.163.163/255.225.225.225 portmap tcp/udp 10000:65000  
map rl0 192.168.0.0/24 -> 163.163.163.163/255.225.225.225  
保存ipnat.conf  
6、设定开机自动执行ipnat。在/usr/local/etc/rc.d/目录下建立runipnat.sh  
#vi runipnat.sh  
加入内容如下:  
#!/bin/sh  
/sbin/ipnat -f /etc/ipnat.conf  
将runipnat.conf设为可执行。  
#chmod 755 runipnat.sh  
完成后,重新启动机器。  
OK!NAT已经做完了。接着就是你自已测试一下。  
ipnat -l  会列出目前ipnat的设定及状况  
ipnat -C 清除ipnat的设定  
ipfstat 监测数据的流量

页: [1]


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.