FreeBSD IPFilter防火墙的安装与设置

2009-05-13 01:40:53来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


其实设置FreeBSD防火墙是一件比较简单的事情。结合自己的实践经验和一些网上的资料,我来向大家介绍一下具体设置的方法。本文包括:1.
最大化安全设置
2.
设置网卡
3.
设置Kernel
4.
打开包转发、防火墙和NAT
5.
配置NAT/防火墙后面的机器
6.
熟悉IPFilter
7.
QoS
8.
参考文献
1. 最大化安全设置锁定一台用作NAT防火墙的电脑的第一步是停止所有安装时不需要的服务。编辑/etc/rc.conf并确认inetd、portmap、sendmail这些守护者都被禁止了。除了设置
inetd_enable="NO"
portmap_enable="NO"
sendmail_enable="NO"
之外,为了以防万一,最好将/etc/inetd.conf中关于这些服务的设置注释掉。如果确实需要远程登陆,那么应该安装ssh并且家上
sshd_enable="YES"
到/etc/rc.conf。一旦你禁用了所有不需要的服务,你就可以到http://www.unixcircle.com/memberonly/portscan.php3去进行一次远程扫描,以便确认设置正确。注意别在防火墙里面进行这样的扫描,否则你得到的结果将是你的防火墙是否安全!如果没有条件出国的话,也可以用NetScanTools这样的工具,不过一定要确认你扫描的时候用的是当前子网外面的电脑。用CVSup获得一份最新的稳定版(-STABLE)FreeBSD源码也非常重要,因为和Windows一样,FreeBSD也需要经常打补丁。
2. 设置网卡为了便于说明,我们假定你的计算机是用两块3com 509B网卡,并且它们对应的FreeBSD驱动的名字分别是ep0和ep1。当然,如果你不太喜欢3com,或者无论如何总之和我们用的不太一样的话,就把下面的对应ep0、ep1换成你需要的名字。第一块网卡将根据rfc1918使用不可路由的私有地址,而第二块则可以制定一个静态或动态的DHCP地址。
为了方便你的设置,这里引用一下那些不可路由的私有地址:
10.0.0.1 - 10.255.255.254 掩码(netmask) 255.0.0.0
172.16.0.1 - 172.31.255.254 掩码 255.240.0.0
192.168.0.1 - 192.168.255.254 掩码 255.255.0.0
在这里我们选用192.168.0.1(很多人都这么做),在/etc/rc.conf中设置
ifconfig_ep0="inet 192.168.1.1 netmask 255.255.255.0"
这样第一块网卡就能用了。如果第二块网卡打算是用静态IP,则在/etc/rc.conf中这样配置:
ifconfig_ep1="inet xxx.xxx.xxx.xxx netmask xxx.xxx.xxx.xxx"
这里的IP和掩码(xxx部分)根据你的实际情况设置就可以了。相反,使用动态IP(DHCP):
ifconfig_ep1="DHCP"
并且要根据需要设置/etc/dhclient.conf
一定要确认你在两块网卡上都使用了正确的IP和掩码,而一旦确认了内部网的IP范围就不要改变。第一块网卡的IP地址将是内部网的默认网关地址。想编译新的kernel,首先需要的是源代码(通常这是你拿到的发行版本的一部分)。如果你没有安装它,那么就运行/stand/sysinstall来装上。然后执行下面的命令
# cd /sys/i386/conf
# cp GENERIC firewall
当然,我这么命名是因为那台机器叫firewall,这样便于记忆,当然你也可以使用其它的名字。编辑kernel配置文件:# vi firewall 在options小节中加入以下几行:
# 添加IPFilter、记录支持
options IPFILTER
options IPFILTER_LOG
# 默认禁止所有的包传递
options IPFILTER_DEFAULT_BLOCK
# 使用RANDOM_IP_ID阻止外界了解网关生成包的情况
options RANDOM_IP_ID
去掉所有和你的硬件无关的硬件相关options。一个比较有效的确定方法是观察dmesg输出。查看和kernel文件处于同一目录的LINT可以帮助你了解全部可用设置。修改完配置文件,重新制作、安装kernel:

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:FreeBSD kernel 编译大法

下一篇:freebsd+apache+mysql+php+phpmyadmin+zend+discuz傻瓜式