一、 网络环境
1、主机A:安装freebsd4.7,安装三块网卡fxp0、xl0和xl1。
fxp0为对外网卡,IP:x.x.x.x ISP为我提供的IP地址
xl0为对内公共区域网卡,IP:192.168.0.1
xl1为对内服务提供区域网卡,IP:192.168.80.1
2、主机B:对外提供www服务主机,ip地址为:192.168.80.80
3、主机C:对外提供ftp服务主机,ip:192.168.80.3。
4、其他工作站N台。
二、编译内核
1、
2、编译kernel_IPF,加入一下选项:
4、编辑/etc/rc.rc.conf,打开以下选项:
5、重新启动系统:reboot
三、配置防火墙
1、 设置地址转换ipnat。在/etc下新建文件ipnat.rules,内容为:
2、设置包过滤ipfilter。在/etc下新建文件ipf.rules,内容为:
以上五句为过滤掉可能会带来安全问题的短数据包或具备路由信息的数据包以及防止非法扫描服务器
以上为内部网络界面和loopback网络界面可以自由发送和接受数据包
block out on fxp0 all
以上为屏蔽外部网络界面向外发送数据包
以上为屏蔽不合法地址的输出数据
以上为屏蔽具备内部网络地址的数据包被转发到外部网络
以上为允许www和ftp进入,并且允许对ftp数据端口的数据进行转发
block in quick on fxp0 all
禁止其他的连接进入fxp0
以上为禁止别人ping我得网络
以上对其他tcp请求,防火墙回应一个RST数据包关闭连接。对UDP请求,防火墙回应网络不可达到的ICMP包。
或者在/etc/sysctl.conf中加入:
能够有效地避免端口扫描
3、然后编辑/etc/rc.conf,加入一下命令,让ipfilter和ipnat在系统启动的时候可以自动加载:
4、在/usr/log/建立文件ipfilter.log,并更改其属性为755,这样你的防火墙日志就记录到/var/log/ipfilter.log文件中,可以随时对其进行查看。
四、设置FTP服务器,使其支持被动连接(pasv)
1.Proftpd:编辑你的proftpd的配置文件proftpd.conf,加入一下内容:
2.Pure-ftpd:编辑你的FTP配置文件,加入一下内容:
3.Serv-U:
a、在serv-U的”本地服务器”―――”设置”―――”高级”―――”PASV端口范围”输入30001 50000
b、在serv-U的”域”―――”你自己建立的域”―――”设置”―――”高级”选中”允许被动模式传送”,” 使用IP”输入:x.x.x.x
