'\" te .\" To view license terms, attribution, and copyright for IP Filter, the default path is /usr/lib/ipf/IPFILTER.LICENCE.If the Solaris operating environment has been installed anywhere other than the default, modify the given path to access the file at the installed location. .\" Copyright (c) 2012, Oracle and/or its affiliates.All rights reserved. .TH ipf 1M "2012 年 10 月 3 日" "SunOS 5.11" "系统管理命令" .SH 名称 ipf \- 更改 IP 包输入和输出的包过滤列表 .SH 用法概要 .LP .nf \fBipf\fR [\fB-6AdDEInoPRrsvVyzZ\fR] [\fB-l\fR block | pass | nomatch] [\fB-T\fR \fIoptionlist\fR] [\fB-F\fR i | o | a | s | S] \fB-f\fR \fIfilename\fR [\fB-f\fR \fIfilename\fR...] .fi .SH 描述 .sp .LP \fBipf\fR 实用程序属于与 Solaris IP 过滤器功能关联的一套命令。请参见 \fBipfilter\fR(5)。 .sp .LP \fBipf\fR 实用程序打开列出的文件名(将连字符 (\fB-\fR) 视为 stdin)并针对要在包过滤器规则集合中添加或删除的规则集解析该文件。 .sp .LP 如果没有解析问题,则会将 \fBipf\fR 处理的每个规则添加到内核的内部列表中。规则将被添加到内部列表的末尾,并按提供给 \fBipf\fR 时的先后顺序排列。 .sp .LP 只能通过 \fB/dev/ipauth\fR、\fB/dev/ipl\fR 和 \fB/dev/ipstate\fR 访问 \fBipf\fR。这些文件的缺省权限要求 \fBipf\fR 以 root 的身份运行才能执行所有操作。 .SS "启用 Solaris IP 过滤器功能" .sp .LP Solaris IP 过滤器随 Solaris 操作系统一起安装。但是,缺省情况下不启用包过滤。可以使用以下过程激活 Solaris IP 过滤器功能。 .RS +4 .TP 1. 担任一个具有 "IP Filter Management"(IP 过滤器管理)权限配置文件的角色(请参见 \fBrbac\fR(5))或成为超级用户。 .RE .RS +4 .TP 2. 配置系统和服务的防火墙策略。请参见 \fBsvc.ipfd\fR(1M) 和 \fBipf\fR(4)。 .RE .RS +4 .TP 3. (可选的)创建网络地址转换 (network address translation, NAT) 配置文件。请参见 \fBipnat.conf\fR(4)。 .RE .RS +4 .TP 4. (可选的)创建地址池配置文件。请参见 \fBippool\fR(4)。 .sp 如果要将一组地址作为单个地址池引用,请创建 \fBipool.conf\fR 文件。如果希望在引导时装入地址池配置文件,请创建一个名为 \fB/etc/ipf/ippool.conf \fR 的文件,在其中放置地址池。如果不希望在引导时装入地址池配置文件,请将 \fBippool.conf\fR 文件放置在 \fB/etc/ipf\fR 之外的位置,然后手动激活这些规则。 .RE .RS +4 .TP 5. 启用 Solaris IP 过滤器,如下所述: .sp .in +2 .nf # \fBsvcadm enable network/ipfilter\fR .fi .in -2 .sp .RE .sp .LP 要在临时禁用包过滤功能后重新启用,请重新引导计算机或输入以下命令: .sp .in +2 .nf # \fBsvcadm enable network/ipfilter\fR .fi .in -2 .sp .sp .LP \&...这本质上是执行以下 \fBipf\fR 命令: .RS +4 .TP 1. 启用 Solaris IP 过滤器: .sp .in +2 .nf # \fBipf -E\fR .fi .in -2 .sp .RE .RS +4 .TP 2. 装入 \fBippools\fR: .sp .in +2 .nf \fB# ippool -f\fR \fI\fR .fi .in -2 .sp 请参见 \fBippool\fR(1M)。 .RE .RS +4 .TP 3. (可选的)激活包过滤: .sp .in +2 .nf \fBipf -f\fR \fI\fR .fi .in -2 .sp 请参见 \fBsvc.ipfd\fR(1M),以了解如何指定配置文件位置。 .RE .RS +4 .TP 4. (可选的)激活 NAT: .sp .in +2 .nf \fBipnat -f\fR \fI\fR .fi .in -2 .sp 请参见 \fBipnat\fR(1M)。 .RE .LP 注 - .sp .RS 2 如果重新引导系统,IPfilter 配置会自动激活。 .RE .SH 选项 .sp .LP 支持以下选项: .sp .ne 2 .mk .na \fB\fB-6\fR\fR .ad .sp .6 .RS 4n 要解析并装入 IPv6 规则,此选项是必需的。IPv6 规则的装入将来可能会有更改。 .RE .sp .ne 2 .mk .na \fB\fB-A\fR\fR .ad .sp .6 .RS 4n 设置列表以更改活动列表(缺省)。 .RE .sp .ne 2 .mk .na \fB\fB-d\fR\fR .ad .sp .6 .RS 4n 打开调试模式。使得它在处理每个过滤器规则时生成过滤器规则的十六进制转储。 .RE .sp .ne 2 .mk .na \fB\fB-D\fR\fR .ad .sp .6 .RS 4n 禁用过滤器(如果已启用)。对可装入的内核版本无效。 .RE .sp .ne 2 .mk .na \fB\fB-E\fR\fR .ad .sp .6 .RS 4n 启用过滤器(如果已禁用)。对可装入的内核版本无效。 .RE .sp .ne 2 .mk .na \fB\fB-F\fR \fBi\fR | \fBo\fR | \fBa\fR\fR .ad .sp .6 .RS 4n 指定要刷新的过滤器列表。参数应该为 \fBi\fR(输入)、\fBo\fR(输出)或 \fBa\fR(删除所有过滤器规则)。可以使用单个字母或以相应字母开头的整个单词。此选项可以放在任何其他选项之前或之后,选项在命令行上的顺序确定了用来执行选项的顺序。 .RE .sp .ne 2 .mk .na \fB\fB-F\fR \fBs\fR | \fBS\fR\fR .ad .sp .6 .RS 4n 要刷新状态表中的条目,可将 \fB-F\fR 选项与 \fBs\fR(删除关于任何非完全建立的连接的状态信息)或 \fBS\fR(删除整个状态表)一起使用。只能指定这两个选项中的一个。完全建立的连接将会在 \fBipfstat\fR \fB-s\fR 输出中显示为 \fB4/4\fR,这两个方面中任何一个有偏差都表示连接不是完全建立的。 .RE .sp .ne 2 .mk .na \fB\fB-f\fR \fIfilename\fR\fR .ad .sp .6 .RS 4n 指定 \fBipf\fR 应当从哪些文件获取输入来修改包过滤器规则列表。 .RE .sp .ne 2 .mk .na \fB\fB-I\fR\fR .ad .sp .6 .RS 4n 设置列表以更改非活动的列表。 .RE .sp .ne 2 .mk .na \fB\fB-l\fR \fBpass\fR | \fBblock\fR | \fBnomatch\fR\fR .ad .sp .6 .RS 4n 切换包的缺省日志记录。此选项的有效参数为 \fBpass\fR、\fBblock\fR 和 \fBnomatch\fR。如果设置了某个选项,则会记录退出了过滤并且与所设置的类别匹配的任何包。这最适用于记录与所装入的任何规则都不匹配的所有包。 .RE .sp .ne 2 .mk .na \fB\fB-n\fR\fR .ad .sp .6 .RS 4n 防止 \fBipf\fR 进行任何 ioctl 调用或执行会更改当前运行的内核的任何操作。 .RE .sp .ne 2 .mk .na \fB\fB-o\fR\fR .ad .sp .6 .RS 4n 强制在缺省情况下将规则添加到输出列表(或从中删除规则),而不是在(缺省)输入列表中执行这些操作。 .RE .sp .ne 2 .mk .na \fB\fB-P\fR\fR .ad .sp .6 .RS 4n 将规则添加为验证规则表中的临时条目。 .RE .sp .ne 2 .mk .na \fB\fB-R\fR\fR .ad .sp .6 .RS 4n 同时禁用“IP 地址到主机名”解析和“端口号到服务名称”解析。 .RE .sp .ne 2 .mk .na \fB\fB-r\fR\fR .ad .sp .6 .RS 4n 删除匹配的过滤器规则,而不是将它们添加到内核列表中。 .RE .sp .ne 2 .mk .na \fB\fB-s\fR\fR .ad .sp .6 .RS 4n 使当前活动的过滤器列表成为备用列表。 .RE .sp .ne 2 .mk .na \fB\fB-T\fR \fIoptionlist\fR\fR .ad .sp .6 .RS 4n 允许 IPFilter 内核变量的运行时更改。要允许更改,某些变量要求 IPFilter 处于禁用状态 (\fB-D\fR),另一些变量则不要求。\fIoptionlist\fR 参数是以逗号分隔的调优命令列表。调优命令是以下项之一: .sp .ne 2 .mk .na \fB\fBlist\fR\fR .ad .sp .6 .RS 4n 检索内核中所有变量的列表、它们的最大值、最小值和当前值。 .RE .sp .ne 2 .mk .na \fB单个变量名称\fR .ad .sp .6 .RS 4n 检索它的当前值。 .RE .sp .ne 2 .mk .na \fB后跟一个赋值的变量名称\fR .ad .sp .6 .RS 4n 设置一个新值。 .RE 示例如下: .sp .in +2 .nf # Print out all IPFilter kernel tunable parameters ipf -T list # Display the current TCP idle timeout and then set it to 3600 ipf -D -T fr_tcpidletimeout,fr_tcpidletimeout=3600 -E # Display current values for fr_pass and fr_chksrc, then set # fr_chksrc to 1. ipf -T fr_pass,fr_chksrc,fr_chksrc=1 .fi .in -2 .sp .RE .sp .ne 2 .mk .na \fB\fB-v\fR\fR .ad .sp .6 .RS 4n 打开详细模式。显示与规则处理相关的信息。 .RE .sp .ne 2 .mk .na \fB\fB-V\fR\fR .ad .sp .6 .RS 4n 显示版本信息。这将显示编译为 \fBipf\fR 二进制代码的版本信息并从内核代码中检索该信息(如果正在运行或存在)。如果它存在于内核中,将会显示有关它的当前状态的信息;例如,日志记录是否活动、缺省过滤等。 .RE .sp .ne 2 .mk .na \fB\fB-y\fR\fR .ad .sp .6 .RS 4n 手动将由 IP 过滤器维护的内核中接口列表与当前接口状态列表重新同步。 .RE .sp .ne 2 .mk .na \fB\fB-z\fR\fR .ad .sp .6 .RS 4n 对于输入文件中的每个规则,将它的统计信息重置为零并显示在它们归零前的统计信息。 .RE .sp .ne 2 .mk .na \fB\fB-Z\fR\fR .ad .sp .6 .RS 4n 使内核中保留的仅用于过滤的全局统计信息归零。这不会影响片段或状态统计信息。 .RE .SH 文件 .sp .ne 2 .mk .na \fB\fB/dev/ipauth\fR\fR .ad .br .na \fB\fB/dev/ipl\fR\fR .ad .br .na \fB\fB/dev/ipstate\fR\fR .ad .sp .6 .RS 4n 指向 IP 过滤器伪设备的链接。 .RE .sp .ne 2 .mk .na \fB\fB/etc/ipf/ipf.conf\fR\fR .ad .sp .6 .RS 4n \fBipf\fR 启动配置文件的位置。请参见 \fBipf\fR(4)。 .RE .sp .ne 2 .mk .na \fB\fB/usr/share/ipfilter/examples/\fR\fR .ad .sp .6 .RS 4n 包含大量的 IP 过滤器示例。 .RE .SH 属性 .sp .LP 有关下列属性的说明,请参见 \fBattributes\fR(5): .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性类型属性值 _ 可用性network/ipfilter _ 接口稳定性Committed(已确定) .TE .SH 另请参见 .sp .LP \fBipfstat\fR(1M)、\fBipmon\fR(1M)、\fBipnat\fR(1M)、\fBippool\fR(1M)、\fBsvcadm\fR(1M)、\fBsvc.ipfd\fR(1M)、\fBipf\fR(4)、\fBipnat.conf\fR(4)、\fBippool\fR(4)、\fBattributes\fR(5)、\fBipfilter\fR(5) .sp .LP \fI《Managing IP Quality of Service in Oracle Solaris 11.3》\fR .SH 诊断 .sp .LP 需要以 root 的身份运行才能实际在内核中影响包过滤列表。