FreeBSD handbook中文版 10 安全(9)
2008-02-23 08:02:01来源:互联网 阅读 ()
过。一旦一个匹配找到了,这个规则动作就启用了。这个规则可能会减慢数据包以便传输数
据,或是发送一个ICMP 信息给这个数据包的发送者。只有第一个匹配会计数,以便按顺序
来查找到这些规则。因此,这些规则的列表可以被看作是规则链。
第31 页FreeBSD 使用手册
数据包匹配标准的变化依赖于使用的软件,但典型的你可以指定依赖于数据包的源IP
地址,目的IP 地址,源端口号,目的端口号,或是数据包类型(UDP, TCP, ICMP 等)的规则,
10.7.1.2 代理型服务器
代理型服务器是把普通系统守护程序(telnetd, ftpd 等)用作特殊服务器的机器。这些
服务器被叫做proxy servers。这个可以在你的防火墙主机上运行一个代理telnet 服务器,
人们可以从外部telnet 进入你的防火墙, 通过一些验证机制,然后获得访问内部网络的权
利。
代理型服务器通常要比普通的服务器更安全,可以提供更广泛的验证机制,包括
one-shot 口令系统,所以即使有人设法寻找了你使用的密码,他们也不能使用它获得访问你
的系统的权利,因为密码会立即失效。由于他们不能给用户访问主机的权利,所以它使得想
要在的系统上安装后门变得困难得多。
代理型服务器有很多种限制访问的方法,所以只有某个主机获得了访问服务器的权利,
他们才可以被设置,以至你可以限制哪个用户可以跟哪个机器交谈。另外,要使用哪个完全
取决于你选择的代理软件哪个更强大。
10.7.2 IPFW 允许你做些什么?
IPFW,由FreeBSD 提供的软件,是一个位于内核中的数据包过滤和结算系统,有一个用
户水平的控制工具,ipfw。他们允许你定义和查询内核正在使用的规则。
IPFW 有两个相关的部分。防火墙那节允许你执行数据包过滤。也有一个IP 结算章节允
许你追踪你的路由器的情况。这将允许你看到你的路由器从某个机器得到了多少的传输量,
或有多少的WWW 数据被转发。
你可以使用在没有路由的机器上在输入与输出的连接之间,使用IPFW 来执行数据包
过滤。这是IPFW 一个比较特殊的用法,同样的命令和技术也可以被用到。
10.7.3 在FreeBSD 上启用IPFW
由于IPFW 的主要部分被捆绑在内核中,你必须要在你的内核配置文件中添加一个或多
个选项,这取决于你要使用哪个工具,然后重新编译内核。
与IPFW 相关的有三种内核配置选项:
第32 页FreeBSD 使用手册
options IPFIREWALL
将数据包过滤编译进内核。
options IPFIREWALL_VERBOSE
通过syslogd 启用代码来允许记录数据包的日志。没有这个选项,即使你指定了,数据
包也不在过滤规则中被记录进日志。
options IPFIREWALL_VERBOSE_LIMIT=10
通过syslogd 限制数据包日志的记录。你可以使用这个选项记录防火墙的活动,但不要
过多地使用syslogd,否则会给拒绝式服务攻击提供机会。当一个数据链记录到达指定的受
限制的数据包时,日志会在那个特殊的记录被关闭.要继续进行日志,你必须使用ipfw 工具
刷新相关的记数器:
# ipfw zero 4500
这儿的4500 是你希望继续日志的数据链记录。
先前的FreeBSD 版本已经包含了IPFIREWALL_ACCT 选项。现在,现在把它作为防火墙代
码已经变得很陈旧了。
10.7.4 配置IPFW
IPFW 的配置可以通过使用ipfw 工具来完成。这个命令的语法看起来很复杂,但一旦
你理解个它的结构就会变得很简单。
当前,这个工具可以使用四种不同的命令:addition/deletion, listing, flushing 和clearing。
Addition/deletion 被用来建构控制数据包如何被接受,拒绝,和日志的控制规则。Listing 被
用来检查你规则设置的内容和数据包记数器。Flushing 被用来删除所有记录链的记录。
Clearing 被用来对一个或多个记数记录进行清零。
10.7.4.1 改变IPFW 的规则
这种形式的命令语法是:
ipfw [-N] command [index] action [log] protocol addresses [options]
第33 页FreeBSD 使用手册
当使用这种形式的命令时,会有一个正确的标记:
-N
在输出中解决地址和服务的名称。
给出的命令可以被缩短到最短的独特形式。正确的命令是这样的:
add
添加一个记录到firewall/accounting 规则列表
delete
从firewall/accounting 规则列表中删除一个记录
先前使用的IPFW 可以分离firewall 和accounting 记录。现在的版本提供了与每个防
火墙记录数据包accounting。
如果提供一个索引值,它会被放置在数据链中的一个指定点的记录。否则,记录会被放
置在超过上次数据链记录的索引值100 的数据链的结尾(这不包括默认的策略,一般是
65535,deny)。
如果内核编译进IPFIREWALL_VERBOSE,日志选项会把匹配规则输出到系统控制台。
正确的指令是:
reject
阻止数据包,然后发送一个ICMP 主机或无法到达数据包端口给数据源。
allow
通过数据包。(别名:pass and accept)
deny
阻止数据包。数据源没有得到ICMP 消息的通报。
count
升级数据包记数器,但不允许/阻止以这个规则为基础的数据包。会继续对下一个数据
链记录进行搜索。
第34 页FreeBSD 使用手册
每个动作会通过加上一个简短明确的前缀来验证。
可能被指定的协议是:
all
匹配所有的IP 数据包
icmp
匹配ICMP 数据包
tcp
匹配TCP 数据包
udp
匹配UDP 数据包
地址的规则:
from address/mask [ port] to address/mask [ port] [via interface]
你可以只指定与支持端口的协议相关联的端口(UDP 和TCP)。
所通过的路径是可选择的,可以指定一个本地IP 接口的IP 地址或域名,或是一个只与
来自这个接口的数据包匹配的接口名(如:ed0).接口单位数目可以用一个可选择的通配符
来表示。例如,ppp*将匹配所有内核PPP 接口。
指定一个address/mask的语法:
address
或
address/ mask-bits
或
address: mask-pattern
第35 页FreeBSD 使用手册
一个正确的主机名可以被指定用来代替IP 地址。mask-bits是一个十进制的数,可以
用来表示地址将被设置成多少位。例如,指定192.216.222.1/24 将创建一个允许与在C 类
子网中所有的地址相匹配的地址范围。(在这个例子中是,192.216.222)。mask-pattern
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash
