首页 | 邮件资讯 | 技术教程 | 解决方案 | 产品评测 | 邮件人才 | 邮件博客 | 邮件系统论坛 | 软件下载 | 邮件周刊 | 热点专题 | 工具
网络技术 | 操作系统 | 邮件系统 | 客户端 | 电子邮箱 | 反垃圾邮件 | 邮件安全 | 邮件营销 | 移动电邮 | 邮件软件下载 | 电子书下载

操作系统

Windows 9X | Linux&Uinx | Windows Server | 其它操作系统 | Vista | FreeBSD | Windows 7 |
首页 > 操作系统 > 其它操作系统 > 使用IP Filter设置小型企业防火墙 > 正文

使用IP Filter设置小型企业防火墙

出处:赛迪网社区 作者:sky 时间:2006-6-26 15:46:00

一、 网络环境

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、

#cd /sys/i386/conf 
#cp GENERIC kernel_IPF

2、编译kernel_IPF,加入一下选项:

options IPFILTER 
options IPFILTER_LOG 
options IPFILTER_DEFAULT_BLOCK 
3、 
<CENTER><ccid_nobr>
<table width="400" border="1" cellspacing="0" cellpadding="2" 
 bordercolorlight = "black" bordercolordark = "#FFFFFF" align="center">
<tr>
    <td bgcolor="e6e6e6" class="code" style="font-size:9pt">
    <pre><ccid_code>
#/usr/sbin/config kernel_IPF 
#cd ../../compile/kernel_IPF 
#make kepend 
#make 
#make install

4、编辑/etc/rc.rc.conf,打开以下选项:

defaultrouter="x.x.x.1" x.x.x.1为ISP提供的网关 
gateway_enable="YES" 
ipfilter_enable="YES" 
ipnat_enable="YES"

5、重新启动系统:reboot

三、配置防火墙

1、 设置地址转换ipnat。在/etc下新建文件ipnat.rules,内容为:

map fxp0 192.168.0.0/16 -> 0/32 proxy port ftp ftp/tcp 
map fxp0 192.168.0.0/24 -> 0/32 portmap tcp/udp 10000:30000 
map fxp0 192.168.0.0/24 -> 0/32 
map fxp0 192.168.80.0/24 -> 0/32 portmap tcp/udp 300001:60000 
map fxp0 192.168.80.0/24 -> 0/32 portmap 
rdr fxp0 x.x.x.x/32 port 80 -> 192.168.0.2 port 80 
rdr fxp0 x.x.x.x/32 port ftp -> 192.168.0.3 port ftp 
rdr fxp0 x.x.x.x/32 port 30001-50000 -> 192.168.80.3 port 30001 tcp

2、设置包过滤ipfilter。在/etc下新建文件ipf.rules,内容为:

block in log quick all with short 
block in log quick all with ipopts 
block in log quick all with frag 
block in log quick all with opt lsrr 
block in log quick all with opt ssrr

以上五句为过滤掉可能会带来安全问题的短数据包或具备路由信息的数据包以及防止非法扫描服务器

pass out on xl0 all 
pass in on xlo all 
pass out on xl1 all 
pass in on xl1 all 
pass out quick on lo0 all 
pass in quick on lo0 all

以上为内部网络界面和loopback网络界面可以自由发送和接受数据包

block out on fxp0 all

以上为屏蔽外部网络界面向外发送数据包

block out log on fxp0 from any to 192.168.0.0/16 
block out log quick on fxp0 from any to 0.0.0.0/8 
block out log quick on fxp0 from any to 169.254.0.0/8 
block out log quick on fxp0 from any to 10.0.0.0/8 
block out log quick on fxp0 from any to 127.16.0.0/12 
block out log quick on fxp0 from any to 127.0.0.0/8 
block out log quick on fxp0 from any to 192.0.2.0/24 
block out log quick on fxp0 from any to 204.152.64.0/23 
block out log quick on fxp0 from any to 224.0.0.0/3

以上为屏蔽不合法地址的输出数据

pass out log on fxp0 proto tcp/udp from any to any keep state 
pass out log on fxp0 proto icmp all keep state 

以上为允许TCP 、UDP、ICMP数据包向外发送出去,并且允许回应数据包发送回到内部网络 
<CENTER><ccid_nobr>
<table width="400" border="1" cellspacing="0" cellpadding="2" 
 bordercolorlight = "black" bordercolordark = "#FFFFFF" align="center">
<tr>
    <td bgcolor="e6e6e6" class="code" style="font-size:9pt">
    <pre><ccid_code>
block in log on fxp0 from 192.168.0.0/16 to any 
block in log quick on fxp0 from 10.0.0.0/8 to any 
block in log quick on fxp0 from 172.16.0.0/12 to any 
block in log quick on fxp0 from 127.0.0.0/8 to any 
block in log quick on fxp0 from 192.0.2.0/24 to any 
block in log quick on fxp0 from 169.254.0.0/16 to any 
block in log quick on fxp0 from 224.0.0.0/3 to any 
block in log quick on fxp0 from 204.152.64.0/23 to any 
block in log quick on fxp0 from x.x.x.x/32 to any 
block in log quick on fxp0 from any to x.x.x.0/32 
block in log quick on fxp0 from any to x.x.x.255/32

以上为屏蔽具备内部网络地址的数据包被转发到外部网络

pass in quick on fxp0 proto tcp from any to any port = 80 flags S/SA keep state
pass in quick on fxp0 proto tcp from any to any port = ftp flags S/SA keep state 
pass in quick on fxp0 proto tcp from any to any port = ftp-data flags S/SA keep state 
pass in quick on fxp0 proto tcp from any to any port 30000 >< 50001 flags S/SA keep state

以上为允许www和ftp进入,并且允许对ftp数据端口的数据进行转发

block in quick on fxp0 all

禁止其他的连接进入fxp0

block in log quick on fxp0 proto icmp from any to any icmp-type redir 
block in log quick on fxp0 proto icmp from any to any 
block in log quick on fxp0 proto icmp from any to any icmp-type echo

以上为禁止别人ping我得网络

block return-rst in log on fxp0 proto tcp from any to any flags S/SA 
block return-icmp(net-unr) in log on fxp0 proto udp from any to any

以上对其他tcp请求,防火墙回应一个RST数据包关闭连接。对UDP请求,防火墙回应网络不可达到的ICMP包。

或者在/etc/sysctl.conf中加入:

net.inet.tcp.blackhole=2 
net.inet.udp.blackhole=1

能够有效地避免端口扫描

3、然后编辑/etc/rc.conf,加入一下命令,让ipfilter和ipnat在系统启动的时候可以自动加载:

ipfilter_enables=”YES” 
ipf –C –f /etc/ipf.rules 
ipfilter_flags=”-E” 
ipnat_enable=”YES” 
ipnat_program=”/sbin/ipnat –CF -f” 
ipnat_rules=”/etc/ipnat.rules” 
ipmon_enable=”YES” 
ipmon_flags=”-D /var/log/ipfilter.log”

4、在/usr/log/建立文件ipfilter.log,并更改其属性为755,这样你的防火墙日志就记录到/var/log/ipfilter.log文件中,可以随时对其进行查看。

四、设置FTP服务器,使其支持被动连接(pasv)

1.Proftpd:编辑你的proftpd的配置文件proftpd.conf,加入一下内容:

MasqueradeAddress x.x.x.x 
PassivePorts 30001 50000

2.Pure-ftpd:编辑你的FTP配置文件,加入一下内容:

PassivePortRange 30001 50000 
ForcePassiveIP x.x.x.x

3.Serv-U:

a、在serv-U的”本地服务器”―――”设置”―――”高级”―――”PASV端口范围”输入30001 50000

b、在serv-U的”域”―――”你自己建立的域”―――”设置”―――”高级”选中”允许被动模式传送”,” 使用IP”输入:x.x.x.x

相关文章 热门文章
  • 腾讯,在创新中演绎互联网“进化论”
  • 华科人 张小龙 (中国第二代程序员 QQ邮箱 Foxmail)
  • 微软推出新功能 提高Hotmail密码安全性
  • 快压技巧分享:秒传邮件超大附件
  • 不容忽视的邮件营销数据分析过程中的算法问题
  • 国内手机邮箱的现状与未来发展——访尚邮创始人Sandy
  • 易观数据:2011Q2中国手机邮箱市场收入规模
  • 穿越时空的爱恋 QQ邮箱音视频及贺卡邮件
  • Hotmail新功能:“我的朋友可能被黑了”
  • 入侵邻居网络发骚扰邮件 美国男子被重判入狱18年
  • 网易邮箱莫子睿:《非你莫属》招聘多过作秀
  • 中国电信推广189邮箱绿色账单
  • NetBSD操作系统在VMware下的安装指南
  • OpenBSD入门
  • SCO UNIX系统安装全图解
  • 怎样选择服务器操作系统?
  • Netware 6.5操作系统安装全程图解
  • 在Fedora core 4.0 加载NTFS和FAT32分区详述
  • IBM专家解析UNIX和Windows之间区别
  • Gentoo 完整的USE参数清单中文详解
  • Fedora Core下声卡驱动全功略
  • 建立针对arm-linux的交叉编译环境
  • Debian服务器设置入门教程之一
  • OpenBSD2.8服务器配置实务手册
  • 自由广告区
     
    最新软件下载
  • SharePoint Server 2010 部署文档
  • Exchange 2010 RTM升级至SP1 教程
  • Exchange 2010 OWA下RBAC实现的组功能...
  • Lync Server 2010 Standard Edition 标..
  • Lync Server 2010 Enterprise Edition...
  • Forefront Endpoint Protection 2010 ...
  • Lync Server 2010 Edge 服务器部署文档
  • 《Exchange 2003专家指南》
  • Mastering Hyper-V Deployment
  • Windows Server 2008 R2 Hyper-V
  • Microsoft Lync Server 2010 Unleashed
  • Windows Server 2008 R2 Unleashed
  • 今日邮件技术文章
  • 腾讯,在创新中演绎互联网“进化论”
  • 华科人 张小龙 (中国第二代程序员 QQ...
  • 微软推出新功能 提高Hotmail密码安全性
  • 快压技巧分享:秒传邮件超大附件
  • 不容忽视的邮件营销数据分析过程中的算..
  • 国内手机邮箱的现状与未来发展——访尚..
  • 易观数据:2011Q2中国手机邮箱市场收入..
  • 穿越时空的爱恋 QQ邮箱音视频及贺卡邮件
  • Hotmail新功能:“我的朋友可能被黑了”
  • 入侵邻居网络发骚扰邮件 美国男子被重..
  • 网易邮箱莫子睿:《非你莫属》招聘多过..
  • 中国电信推广189邮箱绿色账单
  • 最新专题
  • 鸟哥的Linux私房菜之Mail服务器
  • Exchange Server 2010技术专题
  • Windows 7 技术专题
  • Sendmail 邮件系统配置
  • 组建Exchange 2003邮件系统
  • Windows Server 2008 专题
  • ORF 反垃圾邮件系统
  • Exchange Server 2007 专题
  • ISA Server 2006 教程专题
  • Windows Vista 技术专题
  • “黑莓”(BlackBerry)专题
  • Apache James 专题
  • 分类导航
    邮件新闻资讯:
    IT业界 | 邮件服务器 | 邮件趣闻 | 移动电邮
    电子邮箱 | 反垃圾邮件|邮件客户端|网络安全
    行业数据 | 邮件人物 | 网站公告 | 行业法规
    网络技术:
    邮件原理 | 网络协议 | 网络管理 | 传输介质
    线路接入 | 路由接口 | 邮件存储 | 华为3Com
    CISCO技术 | 网络与服务器硬件
    操作系统:
    Windows 9X | Linux&Uinx | Windows NT
    Windows Vista | FreeBSD | 其它操作系统
    邮件服务器:
    程序与开发 | Exchange | Qmail | Postfix
    Sendmail | MDaemon | Domino | Foxmail
    KerioMail | JavaMail | Winwebmail |James
    Merak&VisNetic | CMailServer | WinMail
    金笛邮件系统 | 其它 |
    反垃圾邮件:
    综述| 客户端反垃圾邮件|服务器端反垃圾邮件
    邮件客户端软件:
    Outlook | Foxmail | DreamMail| KooMail
    The bat | 雷鸟 | Eudora |Becky! |Pegasus
    IncrediMail |其它
    电子邮箱: 个人邮箱 | 企业邮箱 |Gmail
    移动电子邮件:服务器 | 客户端 | 技术前沿
    邮件网络安全:
    软件漏洞 | 安全知识 | 病毒公告 |防火墙
    攻防技术 | 病毒查杀| ISA | 数字签名
    邮件营销:
    Email营销 | 网络营销 | 营销技巧 |营销案例
    邮件人才:招聘 | 职场 | 培训 | 指南 | 职场
    解决方案:
    邮件系统|反垃圾邮件 |安全 |移动电邮 |招标
    产品评测:
    邮件系统 |反垃圾邮件 |邮箱 |安全 |客户端
    广告联系 | 合作联系 | 关于我们 | 联系我们 | 繁體中文
    版权所有:邮件技术资讯网©2003-2010 www.5dmail.net, All Rights Reserved
    www.5Dmail.net Web Team   粤ICP备05009143号