第六篇



实际的日志讯息会被记录在哪个档案,取决于当时系统的syslog.conf组态是如何设定的。对于iptables的讯息而言,右于他是位于Linux核心的机制,所以.假如您使用 - -log-level info选项,您应该寻找kern.=info path 。假如需要更进阶的日志记录能力,请参考《ULOG目标》。


mac过滤条件

此扩充模块让iptables能够使用Ethernet界面的「Media Access Controller」(MAC)位址为过滤条件。《表44》说明此过滤条件唯一的选项。

严格来说,MAC位址不算IP协议的过滤条件,因为在OSI layer架构中,Ethernet的位阶低于IP;然而,由于许多IP网络路架设在Ethernet 上,也就是说,大多数系统能够取得MAC信息,也因此mac成为重要的的扩充模组之一。

=============================
诀窍

本过滤条件必须在核心支持CONFIG_IP_NF_MATCH_MAC组态时才有效。

==============================







由於mac扩充模组只能过滤传讯方的MAC位址(过滤dest MAC是沒有意义的),所以此过滤条件只能用于PREROUTING、FORWARD或INPUT链结裡的规则,而且只对来自Ethernet装置的封包才有效。举例来說,下列规则限制ethl介面只能夠和特定Ethernet装置通讯:

iptables -A PREROUTING -i ethl -m mac - -mac-source
! 0d:bc:97:02:18:2l -j DROP


上述规则很适合用於无線网路环境裡.



mark过滤条件

过滤含有特定标记值的封包。封包标记功能,通常搭配ip命令(iproute2套件的工具程式之一)使用,用以执行进阶的选径应用。《表45》說明此过滤条件唯一的选项。

Linux 核心容许您贴一个「标记」(一个整数值)到某个封包,然后将该封包(连同标记)传给核心的另一个部门接手处理。请注意,「标记」並非储存於封包本身(也就是說,被贴标记的封包,其header和body都不会被改变),而是核心另外维护的一段中介资料(metadata),所以,当封包离开贴他们帖标记的电脑(当封包被转交给其他电脑时,就会发生这种现象),标记信息就会跟著消失。


===========================
诀窍

本过滤条件必须在核心支援CONFIG_IP_NF_MATCH_MARK组态时才有效。
===========================





mask可用来让您将核心的标记值当成一组位元栏来处理.但是,MARK目标扩充模组並不支援mask的使用,所以您不能利用iptables来渐进地设定位元栏。


相关参考:

MARK目标

设定包的标记。包的标记功能,通常搭配ip命令(iproute2套件的工具程式之一)使用,用以执行进阶的选径应用。《表46》說明MARK目标唯一的选项。


=============================
诀窍
本目标必须在核心支援CONFIG_IP_NF_TARGET_MARK组态时才有效。

MARK目标只能用於mangle表格。
=============================





相关参考:

● (mark过滤条件)

● 假如您希望标记资讯能跨越不同电脑,请参閱《TOS目标》。


MASQUERADE目标

具备连線追蹤能力的SNAT操作,特別适用於具备动态IP位址的介面。《表47》是本目标唯一的选项。

MASQUERADE扩充模组只能处理TCP和UDP连線。


============================
诀窍
本目标必须在核心支援CONFIG_IP_NF_TARGET_MASQUERADE组态时才有效。
============================


相关参考:

(SNAT目标) :提供相似的SNAT功能性,但是不理会封包之间的关系(连線追蹤),适用於具备固定IP位址的连線。


Mumport过滤条件

让iptables可同时以多个TCP或UPD通讯端口为过滤条件。
《表48》說明本过滤条件的选项。

只能搭配TCP和UDP恊定使用(-p tcp或-p udp)。


============================
诀窍
本过滤条件必须在核心支援CONFIG_IP_NF_MATCH_MULTIPORT组态时才有效。
============================





portspec能够是通讯端口的正式名称(定义於/etc/services档案)或编号,或是一连串以逗号分隔通讯端口编号(最多15个),或是p1 : p2格式的编号范围。


NETLINK目标

透过netlink socket将包传送到userspacc。利用NETLINK,您可将符合条件的封包传给userspace的包处理程式,或是交给 fwmon之类外部的应用程式(参閱
http://www.scaramanga.co.uk/fwmon/)。《表49》說明本目标的选项。


==========================
窍门
过滤选条件必须在核心支援CONFIG_IP_NF_QUEUE组态时才有效。
==========================






举例来說,若要将任何ICMP ping封包全部注入netlink然后才丟棄,使用下列命令:

iptables -A INPUT -p icmp - -icmp type ping -j NETLINK -nldrop



相关参考:

● (ULOG目标) :透过netlink sockets和userspace的ulogd记錄程式通讯。

● netlink manpages(使用man 7 netlink或marl 3 netlink命令查看)。

● RFC 3549 《Linux Netlink as an IP Services Protoco1》
(位於http://www.rfc-editor.org/rfc/rfc3549.txt)。

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!