机,哪一个特定的埠号, 哪一种特定的通讯协定, 或是上述各种条件的组合... 同样地, 对於准备送往主机外的封包,我们也可以具有相同程度的管理控制。
ipfwadm 有几种主要的参数:
-A 指定记录 (accounting) 之处理方式
-I 指定准备进入主机内的封包 (incoming packets) 之处理方式
-O 指定准备送往主机外的封包 (outgoing packets) 之处理方式
-F 指定封包转送 (forwarding) 之处理方式
-M 用来进行 IP masquareding 的管理
本文中, 我只打算介绍 -I 与 -O 参数, 它们两者都具有相同的语法。
这些参数的选项有:
-a 在表单後面加进一个或多个处理方式
-i 在表单前面加入一个或多个处理方式
-d 从表单里面删除一个或多个处理方式
-l 显示表单上面的处理方式
-f 删除表单上面所有的处理方式
-p 指定哪些封包一定被 acceppted (a)、 denied (d) 或 rejected (r)
-c 检查某个封包准备进入时, 其应用哪些处理方式
-h 辅助说明
重要的参数有:
-P 指定某个表单上, 处理方式所作用到的通讯协定。 这里的通讯协定, 可以是 TCP、 UDP、 ICMP 或 all ( 表示所有的通讯协定 )
-S 指定封包的来源位址。 其格式为: ADDRESS[/MASK] [PORT] 举例来说, 像这样 123.32.34.0/255.255.255.250 25 便代表从 123.32.34.0 到 123.32.34.5 的 IP 范围
-D 指定封包的目的位址, 其格式与 -S 相同
原则上, 这些都是最基本的参数, 因此, 想要让所有从我的电脑发出的封包, 能够到达我自己的电脑, 可以这样设定处理方式:
pfwadm -I -i a -S 127.0.0.1
还想要挡掉来自於 123.34.22.XXX 的封包, 可以这样设定:
pfwadm -I -a d -S 123.34.22.0/255.255.255.0
接下来, 如果除了 111.222.123.221 这个 IP 之外, 我想要挡掉所有其他对於 netbios 埠号的连线要求, 可以这样设定:
pfwadm -I -a a -P tcp -S 111.222.123.221 139
ipfwadm -I -a d -P tcp -D 0.0.0.0/0 139