赞助连接

赞助连接

阅 读 文 章

FreeBSD+IPFILTER实现整网(N个Vlan)透明代理上网

[来源:网上转载 (http://www.chinaunix.net) | 作者:网友(剑心通明) | 时间:2007-05-27 | 浏览: 人次 ]


1:前言
我们学校以前是用的教育网,所有办公机器、机房用的都是公网地址,由于前段时间更换网络出口,换为网通的宽带,所以才作了代理,因为学校领导还没完全确定以后还用不用教育网,所以要求下面机器原来的网络设置不能改变,经过自己摸索,加上CU、freebsdchina上面的各位高手帮忙,现在已经全部搞定,实现了透明代理,下面的机器网络设置跟以前用教育网的一样,可以随时再开通教育网,不敢独享,拿出来给大家看看。
另外一点说明,原来的公网地址因为当作私有地址来用了,我下面贴出来的代码均以10.0.*.*这些私网地址代替,这样可能其他兄弟们用的时候更合适一些,外部网通个的公网地址我以a.b.c.d和a1.b1.c1.d1等代替,如果要参考我的使用可换为你们的公网ip。
2:系统安装
用的是最新的5.3release,用最小化安装,因为后面要自己编译内核,就把内核sys装上了,man也是需要的,其他的都不要,因为只作代理,所以连ports都不要。
3:/etc/rc.conf里面的设置
这里要说明一下:我们的内部地址总共用了12个c的地址,10.0.40.0/21和10.1.44.0/22。为了实现整网的机器都能透明的通过代理服务器上网,需要在路由器上把默认路由指向代理服务器的内网网卡地址,我们这里的核心交换是cisco6509,就是一条语句:ip route 0.0.0.0 0.0.0.0 192.168.0.1,这样做还不够,还需要在代理服务器上添加路由,把数据包经由内网网卡返回。代理的内网卡地址我设置的192.168.0.1,它所在vlan网关是192.168.0.2,掩码是255.255.255.252,这个vlan也就192.168.0.1这个地址可用J
下面是rc.conf的内容,我加入了一些优化的选项:

ifconfig_em0="inet a.b.c.d netmask 255.255.255.240"
ifconfig em0 a1.b1.c1.d1 netmask 255.255.255.255 alias
ifconfig_em1="inet 192.168.0.1  netmask 255.255.255.252"

sendmail_enable="NONE"
sendmail_submit_enable="NO"
sendmail_outbound_enable="NO"
sendmail_msp_queue_enable="NO"
## 关闭SENDMAIL

portmap_enable="NO"
inetd_enable="NO"
kern_securelevel_enable="YES" 
kern_securelevel="2" 
syslogd_enable="YES" 
syslogd_flags="-ss"

firewall_enable="NO"
gateway_enable="YES"

ipfilter_enable="YES"
ipfilter_program="/sbin/ipf"
ipfilter_rules="/etc/ipf.conf"
ipfilter_flags=""
#IPFilter作为kernel,而不是作为模块

ipnat_enable="YES"
ipnat_program="/sbin/ipnat -CF -f"
ipnat_rules="/etc/ipnat.conf"

ipmon_enable="YES"
ipmon -o N >; /tmp/nat.log &

static_routes="static1 static2"
route_static1="-net 10.0.40.0 -netmask 255.255.248.0 -gateway 192.168.0.2"
route_static2="-net 10.1.44.0 -netmask 255.255.252.0 -gateway 192.168.0.2"

4:我的ipf.conf文件:
这里我把冲击波等的一些端口给封了,外网网卡上所有来自于10.0.0.0/8等私网地址和发往这些地址的数据包肯定是非法的,所以也给禁止掉,因为我的代理还把内部的一些机器给nat出去对外提供服务,暂时只用了80端口,就只允许了80端口上的数据包经外网网卡进入,其他的都封掉,如果你还需要其他的,可相应的增加规则。

#############优化ipf.conf#########################

block in quick all with ipopts
block in quick all with frag
block in quick all with short
TAG标签 : 代理 上网 透明 实现 /usr/local/beifen.sh 回复 ## a1.b1.c1.d1

最新评论 共有0位网友发表了评论

发表评论

评论内容:不能超过250字,需审核,请自觉遵守互联网相关政策法规。
用户名:(注册)
密码:
验证码:
匿名发表
网站地图友情连接交流论坛网站投稿广告服务联系我们留言本站长统计
Some rights reserved: www.newhtm.com, 鄂ICP备07010232号 E-mail:chinakafei@live.com,QQ:552766
中国咖啡技术网(Chmhome):国外编程技术书籍,中文编程手册,经典编程文章,交流技术,技术软件下载,计算机论文,毕业论文.