本人(作者)属新手上路, 才学习了没几天, 刚刚配好了一台代理服务器, 对于高手来讲实在是小菜一碟, 本没有什么可以值得炫耀的. 应 href="http://www.Linuxforum.net">中国Linux论坛 FreeBSD世界版主 href="mailto:yjs@oldhand.org">r00t 的要求, 对配置过程做了一个记录, 不免贻笑大方.
文中如有什么错误, 请与作者
联系. 本文着重介绍配置透明代理, 基本不涉及网络服务器, 含dns, web, email的配置, 这些服务器对于防火墙的要求, 请参照其它介绍.
采用本文内容, 如果造成任何损失, 作者概不负责.
Reference:
IP Filter Based Firewalls HOWTO [ href="http://www.obfuscation.org/ipf/ipf-howto.pdf" target=_blank>PDF
| target=_blank>HTML ] (本文中简称 HOWTO)
target=_blank>Quick CableNet Connections with FreeBSD - By, Leon
系统构成
Gateway:
系统安装FreeBSD 4.5. PENTIUM-S 100, 80M内存, 4G硬盘. 安装双网卡.
Dlink DFE5000TX一块古老的网卡, 老得Windows 98都需要厂家的驱动, Windows 2000厂家都不提供驱动了, 不过BSD/Linux还都支持这块网卡, FreeBSD中为dc0. 该网卡连接内部网络.
Dlink DFE530TX, FreeBSD中为vr0. 该网卡连接 ADSL Modem.
网内客户机
本文中有时称为ClIEnt, 安装Windows XP
网络结构
Gateway dc0分配地址192.168.0.1/24, 通过HUB连接内网Windows XP客户机
192.168.0.4/24, vr0连接ADSL Modem, 通过pppoe拨号上网.采用动态地址.
本文假定Gateway 的 pppoe和DNS已经正常工作, 有关这方面的介绍, 请参照其它文章.
Gateway设置
编译内核
cd /usr/src/sys/i386/conf
cp GENERIC KERNEL1
vi KERNEL1
修改该内核配置文件, 增加如下配置
options IPFILTER
# ipfilter support
options IPFILTER_LOG
# ipmon( log support
options IPFILTER_DEFAULT_BLOCK
# block all packets by default
options RANDOM_IP_ID
# RANDOM_IP_ID causes the ID field in IP packets to be
randomized
# instead of incremented by 1 with each packet generated.
options BRIDGE
options ICMP_BANDLIM
# Rate limit bad replies
#options TCP_DROP_SYNFIN
# drop TCP packets with SYN FIN
# 该参数可以提高系统的安全性,但在作web server时不建议使用,详见LINT
取消内核中所有与IPFIREWALL有关的配置
# options IPFIREWALL
# firewall
# options IPFIREWALL_VERBOSE
# enable logging to syslogd(
# options IPFIREWALL_FORWARD
# enable transparent proxy support
# options IPFIREWALL_VERBOSE_LIMIT=100
# limit verbosity
# options IPFIREWALL_DEFAULT_TO_ACCEPT
# allow everything by default
# options DUMMYNET
调整网络参数
options NMBCLUSTERS=32768
系统安装时该参数很小, 会影响网络的性能. 这个数值只是我简单的配置, 做服务器可能要更大. 具体说明详见 href="http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/index.html" target=_blank>FreeBSD HandBook "http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/configtuning-kernel-limits.html" target=_blank>6.10.2 Network Limits
标示该内核
ident KERNEL1
编译内核
cd /usr/src
make buildkernel KERNCONF=KERNEL1
make installkernel KERNCONF=KERNEL1
(这两个命令可以合并为 make kernel KERNCONF=KERNEL1)
修改配置文件
/etc/rc.conf
删除该文件中有关ipfw的配置, 或者将
推荐阅读
- 如何使用刀片式剃须刀,剃须不刮破皮肤
- 如何开通农村信用社网上银行
- 退货用空包犯法吗
- 三星D508试用兼谈与e808的比较
- 学信网绑定的手机号不用了怎么办
- 华为畅享10s怎么关闭应用自动对齐
- 初试P710的电子书
- 在FreeBSD 中使用USB Flash Memory
- 道家金光咒用来干什么呢
- 看了“ebbe_zx网友08-15 发表的6630使用感受后”我的一些看法