在FreeBSD下搭建高性能企业级网关与代理服务器

2009-05-13 14:09:27来源:未知 阅读 ()

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


在FreeBSD下搭建高性能企业级网关与代理服务器
FreeBSD+PF+Squid
1.内核编译
要让FreeBSD作为共享上网服务器,我们还需要编译一个新内核。
(1)编译内核配置文件
首先我们需要编译内核配置文件,使其支持pf和带宽控制。以root身份登录进系统之后,用ee编辑FreeBSD内核配置文件。
nat#ee /usr/src/sys/i386/conf/GENERIC
将光标移动到最后一行,并添加以下内容,保存退出(如图2)。
#提供内核级的pf支持
device pf
device pflog
device pfsync

#提供带宽控制功能
options ALTQ
options ALTQ_CBQ

(2)编译内核
现在执行以下指令,开始编译内核。
nat#cd /usr/src
nat#make kernel KERNCONF=GENERIC

重新编择操作系统内核是一个漫长的过程,你现在可以去喝杯咖啡......
当系统回到提示符下后,重新启动系统。
nat#reboot
(3)让系统自动加载pf
重新以root身份登录系统后,执行以下指令以ee编辑rc.conf文件,让系统开机后自动加载pf。
nat#ee /etc/rc.conf
以下为笔者的rc.conf相关的内容,请各位读者根据自身的需求判断取舍(如图3)。
# 首先设置服务器的主机名
hostname="nat.scetc.net"
# 然后设置服务器的默认网关
defaultrouter="218.6.165.1"
# 允许服务器充当网关的角色
gateway_enable="YES"
# 服务器的两块网卡配置
# bge0是Broadcom Gigabit NIC、接外部网络
# em0是Intel Gigabit NIC、接内部网络
ifconfig_bge0="inet 218.6.165.6 netmask 255.255.255.192"
ifconfig_em0="inet 192.168.0.254 netmask 255.255.0.0"

# 允许系统运行BIND以提供DNS服务
named_enable="YES"
# 允许系统运行squid作为代理服务器
squid_enable="YES"
squid_user="squid"

实现共享上网----最简单的pf配置
需要pf完成的功能都是通过编辑其配置文件来实现的。首先,我们可以写一个最简单的配置文件,让内网的机器没有任何限制地连接上互联网。
# 网卡、IP地址等定义、方便后文调用
ext_if="bge0"  # 外网网卡
int_if="em0"  # 内网网卡
noroute="{127.0.0.1/8,172.16.0.0/12,10.0.0.0/8,255.255.255.255/32}"
# 定义IP欺骗
routerip="192.168.0.254"  # 服务器内网IP
internal_net="192.168.0.0/16"  # 内网IP范围
ext_addr="218.6.165.6"  # 服务器外网IP
loop="lo0"  # 回路设备
# 以下语句用来实现透明共享上网
# 所有内部请求都通过外部网卡出去
nat on $ext_if from $internal_net to any ->($ext_if)

标签:

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

上一篇:FreeBsd 更新ports

下一篇:1b--route_details