Current File : //usr/man/zh_CN.UTF-8/man1m/ipsecalgs.1m
'\" te
.\" Copyright (c) 2009, 2012, Oracle and/or its affiliates.All rights reserved.
.TH ipsecalgs 1M "2010 年 7 月 28 日" "SunOS 5.11" "系统管理命令"
.SH 名称
ipsecalgs \- 配置 IPsec 协议和算法表
.SH 用法概要
.LP
.nf
\fBipsecalgs\fR 
.fi

.LP
.nf
\fBipsecalgs\fR \fB-l\fR
.fi

.LP
.nf
\fBipsecalgs\fR \fB-s\fR
.fi

.LP
.nf
\fBipsecalgs\fR \fB-a\fR [\fB-P\fR \fIprotocol-number\fR | \fB-p\fR \fIprotocol-name\fR] \fB-k\fR \fIkeylen-list\fR 
     [\fB-i\fR \fIinc\fR] [\fB-K\fR \fIdefault-keylen\fR] \fB-b\fR \fIblocklen-list\fR \fB-n\fR \fIalg-names\fR
     \fB-N\fR \fIalg-number\fR \fB-m\fR \fImech-name\fR [\fB-I\fR \fIinitialization-vector_length\fR]
     [\fB-M\fR \fIMAC-length\fR] [\fB-S\fR \fIlength-of-salt\fR] [\fB-F\fR \fIflags\fR] [\fB-f\fR] [\fB-s\fR]
.fi

.LP
.nf
\fBipsecalgs\fR \fB-P\fR \fIprotocol-number\fR \fB-p\fR \fIprotocol-name\fR 
     [\fB-e\fR \fIexec-mode\fR] [\fB-f\fR] [\fB-s\fR]
.fi

.LP
.nf
\fBipsecalgs\fR \fB-r\fR \fB-p\fR \fIprotocol-name\fR [] \fB-n\fR \fIalg-name\fR [\fB-s\fR]
.fi

.LP
.nf
\fBipsecalgs\fR \fB-r\fR \fB-p\fR \fIprotocol-name\fR [] \fB-N\fR \fIalg-number\fR [\fB-s\fR]
.fi

.LP
.nf
\fBipsecalgs\fR \fB-R\fR \fB-P\fR \fIprotocol-number\fR [\fB-s\fR]
.fi

.LP
.nf
\fBipsecalgs\fR \fB-R\fR \fB-p\fR \fIprotocol-name\fR [\fB-s\fR]
.fi

.LP
.nf
\fBipsecalgs\fR \fB-e\fR \fIexec-mode\fR \fB-P\fR \fIprotocol-number\fR [\fB-s\fR]
.fi

.LP
.nf
\fBipsecalgs\fR \fB-e\fR \fIexec-mode\fR \fB-p\fR \fIprotocol-name\fR [\fB-s\fR]
.fi

.SH 描述
.sp
.LP
使用 \fBipsecalgs\fR 命令可查询和修改存储在 \fB/etc/inet/ipsecalgs\fR 中的 IPsec 协议和算法。可以使用 \fBipsecalgs\fR 命令执行以下操作:
.RS +4
.TP
.ie t \(bu
.el o
列出当前定义的 IPsec 协议和算法
.RE
.RS +4
.TP
.ie t \(bu
.el o
修改 IPsec 协议定义
.RE
.RS +4
.TP
.ie t \(bu
.el o
修改 IPsec 算法定义
.RE
.sp
.LP
\fB切勿\fR手动编辑 \fB/etc/inet/ipsecalgs\fR 文件。ISAKMP DOI 描述了有效的 IPsec 协议和算法。请参见 \fIRFC 2407\fR。从一般意义上说,系统解释域 (domain of interpretation, DOI) 定义数据格式、网络通信交换类型和安全相关信息的命名约定(例如安全策略或加密算法和模式)。对于 \fBipsecalgs\fR,DOI 定义了算法及其所属协议的命名和编号约定。这些编号由 Internet 号码分配机构 (Internet Assigned Numbers Authority, IANA) 定义。每个算法都属于一个协议。算法信息包含支持的密钥长度、块长度或 MAC 长度以及与该算法对应的加密机制的名称。IPsec 模块 \fBipsecesp\fR(7P) 和 \fBipsecah\fR(7P) 使用这些信息确定可应用于 IPsec 通信的验证和加密算法。
.sp
.LP
预定义了以下协议:
.sp
.ne 2
.mk
.na
\fB\fBIPSEC_PROTO_ESP\fR\fR
.ad
.RS 19n
.rt  
定义 IPsec 提供数据保密性可使用的加密算法(转换)。 
.RE

.sp
.ne 2
.mk
.na
\fB\fBIPSEC_PROTO_AH\fR\fR
.ad
.RS 19n
.rt  
定义 IPsec 提供验证可使用的验证算法(转换)。
.RE

.sp
.LP
算法条目指定的机制名称必须对应有效的 Solaris 加密框架机制。您可以使用 \fBcryptoadm\fR(1M) 命令获取可用机制的列表。
.sp
.LP
应用程序可以使用以下函数检索支持的算法及其关联协议:\fBgetipsecalgbyname\fR(3NSL)、\fBgetipsecalgbynum\fR(3NSL)、\fBgetipsecprotobyname\fR(3NSL) 和 \fBgetipsecprotobynum\fR(3NSL)。
.sp
.LP
缺省情况下,对协议和算法的修改仅更新 \fB/etc/inet/ipsecalgs\fR 配置文件的内容。要将新定义用于 IPsec 处理,必须使用 \fB-s\fR 选项将所做更改传递给内核。有关 \fBipsecalgs\fR 配置如何在系统重启时与内核同步的说明,请参见\fB\fR“附注”部分。
.sp
.LP
不带参数调用时,\fBipsecalgs\fR 显示当前在 \fB/etc/inet/ipsecalgs\fR 中定义的映射的列表。可以使用 \fB-l\fR 选项获取协议和算法对应的内核表。
.SH 选项
.sp
.LP
\fBipsecalgs\fR 支持以下选项:
.sp
.ne 2
.mk
.na
\fB\fB-a\fR\fR
.ad
.sp .6
.RS 4n
添加 \fB-P\fR 选项指定的协议的算法。算法名称使用 \fB-n\fR 选项指定。支持的密钥长度和块大小使用 \fB-k\fR、\fB-i\fR 和 \fB-b\fR 选项指定。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-b\fR\fR
.ad
.sp .6
.RS 4n
指定算法的块长度或 MAC 长度(以字节为单位)。通过逗号分隔值可设置多个块长度。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-e\fR\fR
.ad
.sp .6
.RS 4n
在没有加密硬件提供器的情况下,为指定的协议指定加密请求的执行模式。请参见 \fBcryptoadm\fR(1M)。\fIexec-mode\fR 可以为以下值之一:
.sp
.ne 2
.mk
.na
\fB\fBsync\fR\fR
.ad
.RS 9n
.rt  
在没有加密硬件提供器的情况下同步处理加密请求。没有加密硬件提供器可用时,该执行模式会缩短延迟。
.RE

.sp
.ne 2
.mk
.na
\fB\fBasync\fR\fR
.ad
.RS 9n
.rt  
在没有加密硬件提供器的情况下始终都以异步方式处理加密请求。该执行模式可以提高多 CPU 系统中的资源利用率,但在没有加密硬件提供器可用时会加大延迟。
.RE

该选项可以在定义新协议或修改现有协议的执行模式时指定。在没有加密硬件提供器时,缺省情况下使用 \fBsync\fR 执行模式。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-f\fR\fR
.ad
.sp .6
.RS 4n
与 \fB-a\fR 选项一起使用时,可强制在已有相同名称或编号的条目的情况下添加算法或协议。 
.RE

.sp
.ne 2
.mk
.na
\fB\fB-i\fR\fR
.ad
.sp .6
.RS 4n
指定有效的密钥长度增量(以位为单位)。如果算法的有效密钥长度是使用 \fB-k\fR 选项按范围指定的,必须使用该选项。 
.RE

.sp
.ne 2
.mk
.na
\fB\fB-K\fR\fR
.ad
.sp .6
.RS 4n
指定算法的缺省密钥长度(以位为单位)。如果未指定 \fB-K\fR 选项,则最小密钥长度将按以下方式确定: 
.RS +4
.TP
.ie t \(bu
.el o
如果支持的密钥长度是按范围指定的,则缺省密钥长度将成为最小密钥长度。 
.RE
.RS +4
.TP
.ie t \(bu
.el o
如果支持的密钥长度是按枚举指定的,则缺省密钥长度将成为首先列出的密钥长度。 
.RE
.RE

.sp
.ne 2
.mk
.na
\fB\fB-k\fR\fR
.ad
.sp .6
.RS 4n
指定算法支持的密钥长度(以位为单位)。可以按枚举或范围指定支持的密钥长度。 
.sp
如果未使用 \fB-i\fR 选项,\fB-k\fR 选项按枚举指定支持的密钥长度。在这种情况下,\fIkeylen-list\fR 是包含一个或多个用逗号分隔的密钥长度的列表,例如:
.sp
.in +2
.nf
128,192,256
.fi
.in -2
.sp

列出的密钥长度无需增加,如果未使用 \fB-K\fR 选项,列出的第一个密钥长度将用作该算法的缺省密钥长度。
.sp
如果使用了 \fB-i\fR 选项,\fB-k\fR 选项将为算法指定支持的密钥长度范围。最小和最大密钥长度必须用破折号 ('\fB-\fR') 字符分隔,例如:
.sp
.in +2
.nf
32-448
.fi
.in -2
.sp

.RE

.sp
.ne 2
.mk
.na
\fB\fB-l\fR\fR
.ad
.sp .6
.RS 4n
显示内核算法表。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-m\fR\fR
.ad
.sp .6
.RS 4n
指定与算法对应的加密框架机制的名称。\fBcryptoadm\fR(1M) 手册页中介绍了加密框架机制。 
.RE

.sp
.ne 2
.mk
.na
\fB\fB-N\fR\fR
.ad
.sp .6
.RS 4n
指定算法编号。协议的算法编号必须是唯一的。IANA 管理算法编号。请参见 \fIRFC 2407\fR。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-n\fR\fR
.ad
.sp .6
.RS 4n
为算法指定一个或多个名称。使用 \fB-a\fR 选项添加算法时,\fIalg-names\fR 包含一个字符串或逗号分隔的字符串列表,例如:
.sp
.in +2
.nf
des-cbs,des
.fi
.in -2
.sp

与 \fB-r\fR 选项一起使用来删除算法时,\fIalg-names\fR 包含有效算法名称之一。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-P\fR\fR
.ad
.sp .6
.RS 4n
添加编号由 \fIprotocol-number\fR 指定的协议,其名称由 \fB-p\fR 选项指定。该选项与 \fB-a\fR 和 \fB-R\fR 选项一起使用时,还可指定 IPsec 协议。协议编号由 IANA 管理。请参见 \fIRFC 2407\fR。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-p\fR\fR
.ad
.sp .6
.RS 4n
指定 IPsec 协议的名称。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-R\fR\fR
.ad
.sp .6
.RS 4n
从算法表中删除 IPsec 协议。可以使用 \fB-P\fR 选项按编号指定协议,或使用 \fB-p\fR 选项按名称指定协议。与协议相关联的算法也会被删除。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-r\fR\fR
.ad
.sp .6
.RS 4n
删除算法映射。可以使用 \fB-N\fR 选项按算法编号指定算法,或使用 \fB-A\fR 选项按算法名称指定算法。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-s\fR\fR
.ad
.sp .6
.RS 4n
将内核与 \fB/etc/inet/ipsecalgs\fR 的内容同步。\fB/etc/inet/ipsecalgs\fR 的内容始终都会更新,但只有使用了 \fB-s\fR 才会将新信息传递到内核。有关 \fBipsecalgs\fR 配置如何在系统重启时与内核同步的说明,请参见\fB\fR“附注”部分。
.RE

.sp
.LP
以下选项允许配置可选参数。这些选项当前仅用于组合模式算法,即在单个操作中提供加密和验证的算法。
.sp
.ne 2
.mk
.na
\fB\fB-I\fR\fR
.ad
.sp .6
.RS 4n
初始化向量 (Initialization Vector, IV) 的长度(以字节为单位)。缺省 IV 长度与块长度相同。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-M\fR\fR
.ad
.sp .6
.RS 4n
组合模式算法的 MAC 或 ICV 长度(以字节为单位)。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-S\fR\fR
.ad
.sp .6
.RS 4n
算法所需的 salt 字节数。salt 需要由密钥管理机制提供。
.RE

.sp
.ne 2
.mk
.na
\fB\fB-F\fR\fR
.ad
.sp .6
.RS 4n
算法标志。这些标志会影响内核处理安全任务(尤其是验证)的方式。\fBipseckey\fR(1M) 和 \fBipsecconf\fR(1M) 也会使用这些标志。可以将标志指定为以逗号分隔的标记列表;请参见下文的示例。支持以下标记:
.sp
.ne 2
.mk
.na
\fB\fBCOUNTERMODE\fR\fR
.ad
.sp .6
.RS 4n
算法使用计数器模式。
.RE

.sp
.ne 2
.mk
.na
\fB\fBCOMBINED\fR\fR
.ad
.sp .6
.RS 4n
算法在同一操作中提供加密和验证。
.RE

.sp
.ne 2
.mk
.na
\fB\fBCCM\fR\fR
.ad
.sp .6
.RS 4n
加密框架机制需要使用 \fBCK_AES_CCM_PARAMS\fR 结构。
.RE

.sp
.ne 2
.mk
.na
\fB\fBGMAC\fR\fR
.ad
.sp .6
.RS 4n
加密框架机制需要使用 \fBCK_AES_GMAC_PARAMS\fR 结构。
.RE

.sp
.ne 2
.mk
.na
\fB\fBGCM\fR\fR
.ad
.sp .6
.RS 4n
加密框架机制需要使用 \fBCK_AES_GCM_PARAMS\fR 结构。
.RE

.sp
.ne 2
.mk
.na
\fB\fBCBC\fR\fR
.ad
.sp .6
.RS 4n
该标志指示算法使用分块加密链接。加密框架机制不需要 params 结构。这也是缺省值,可以省略该标志。
.RE

可以使用 \fB-l\fR 选项显示算法标志。
.RE

.SH 示例
.LP
\fB示例 1 \fR添加 IPsec 加密协议
.sp
.LP
以下示例显示如何添加 IPsec 加密协议:

.sp
.in +2
.nf
example# \fBipsecalgs -P 3 -p "IPSEC_PROTO_ESP"\fR
.fi
.in -2
.sp

.LP
\fB示例 2 \fR添加 Blowfish 算法
.sp
.LP
以下示例显示如何添加 Blowfish 算法:

.sp
.in +2
.nf
example# \fBipsecalgs -a -P 3 -k 32-488 -K 128 -i 8 -n "blowfish" \e
  -b 8 -N 7 -m CKM_BF_CBC\fR
.fi
.in -2
.sp

.LP
\fB示例 3 \fR更新内核算法表
.sp
.LP
以下示例使用当前定义的协议和算法定义更新内核算法表:

.sp
.in +2
.nf
example# \fBsvcadm refresh ipsecalgs\fR
.fi
.in -2
.sp

.LP
\fB示例 4 \fR添加 AES Galois/计数器模式 (Galois/Counter Mode, GCM) 算法
.sp
.LP
以下命令可添加此算法。

.sp
.in +2
.nf
example# \fBipsecalgs -a -P3 -k 128-256 -K 128 -i 64 -N 20 -b 16 \e\fR
\fB-n "aes-gcm16,aes-gcm" -m CKM_AES_GCM -M 16 -I 8 -S 4 \e\fR
\fB-F GCM,COMBINED,COUNTER\fR
.fi
.in -2
.sp

.SH 文件
.sp
.ne 2
.mk
.na
\fB\fB/etc/inet/ipsecalgs\fR\fR
.ad
.sp .6
.RS 4n
包含配置的 IPsec 协议和算法定义的文件。切勿手动编辑该文件。
.RE

.SH 属性
.sp
.LP
有关下列属性的说明,请参见 \fBattributes\fR(5):
.sp

.sp
.TS
tab() box;
cw(2.75i) |cw(2.75i) 
lw(2.75i) |lw(2.75i) 
.
属性类型属性值
_
可用性system/core-os
_
接口稳定性Committed(已确定)
.TE

.SH 另请参见
.sp
.LP
\fBcryptoadm\fR(1M)、\fBipsecconf\fR(1M)、\fBipseckey\fR(1M)、\fBsvcadm\fR(1M)、\fBgetipsecalgbyname\fR(3NSL)、\fBgetipsecprotobyname\fR(3NSL)、\fBike.config\fR(4)、\fBattributes\fR(5)、\fBsmf\fR(5)、\fBipsecah\fR(7P)、\fBipsecesp\fR(7P)
.sp
.LP
由 Piper, Derrell 编著的《\fIThe Internet IP Security Domain of Interpretation for ISAKMP\fR》,RFC 2407。Network Working Group 出版。1998 年 11 月。
.SH 附注
.sp
.LP
如果协议或算法定义被删除或更改,则依赖这些定义的服务可能变得不可用。例如,如果 \fBIPSEC_PROTO_ESP\fR 协议被删除,则 IPsec 无法对包进行加密和解密。
.sp
.LP
在系统启动时将 \fBipsecalgs\fR 配置与内核同步是通过以下 \fBsmf\fR(5) 服务提供的:
.sp
.in +2
.nf
svc:/network/ipsec/ipsecalgs:default
.fi
.in -2
.sp

.sp
.LP
IPsec 服务按如下方式交付:
.sp
.in +2
.nf
svc:/network/ipsec/policy:default (enabled)
svc:/network/ipsec/ipsecalgs:default (enabled)
svc:/network/ipsec/manual-key:default (disabled)
svc:/network/ipsec/ike:default (disabled)
.fi
.in -2
.sp

.sp
.LP
以禁用状态交付的服务之所以按该方式交付是因为:系统管理员必须先为其创建配置文件,然后才能启用这些服务。请参见 \fBipseckey\fR(1M) 和 \fBike.config\fR(4)。\fBpolicy\fR 服务的缺省策略是允许传递所有的通信而不使用 IPsec 保护。请参见 \fBipsecconf\fR(1M)。
.sp
.LP
正确的管理过程是为每个服务创建配置文件,然后使用 \fBsvcadm\fR(1M) 启用每个服务,如以下示例所示:
.sp
.in +2
.nf
example# \fBsvcadm enable ipsecalgs\fR
.fi
.in -2
.sp

.sp
.LP
可以使用 \fBsvcs\fR(1) 命令来查询服务的状态。
.sp
.LP
如果 \fBipsecalgs\fR 配置做了修改,应按照如下方式重新同步新配置:
.sp
.in +2
.nf
example# \fBsvcadm refresh ipsecalgs\fR
.fi
.in -2
.sp

.sp
.LP
可以使用 \fBsvcadm\fR(1M) 来对此服务执行管理操作(如启用、禁用、刷新和请求重新启动)。分配有以下授权的用户可以执行这些操作:
.sp
.in +2
.nf
solaris.smf.manage.ipsec
.fi
.in -2
.sp

.sp
.LP
请参见 \fBauths\fR(1)、\fBuser_attr\fR(4)、\fBrbac\fR(5)。
.sp
.LP
\fBipsecalgs\fR \fBsmf\fR(5) 服务没有任何用户可配置的属性。
.sp
.LP
\fBsmf\fR(5) 框架在服务特定的日志文件中记录所有错误。可使用以下任一命令检查 \fBlogfile\fR 属性:
.sp
.in +2
.nf
example# \fBsvcs -l ipsecalgs\fR
example# \fBsvcprop ipsecalgs\fR
example# \fBsvccfg -s ipsecalgs listprop\fR
.fi
.in -2
.sp

.sp
.LP
该命令需要有 \fBsys_ip_config\fR 特权才能操作,可以在全局区域和独占 IP 区域中运行。所有共享 IP 区域可以共享同一可用算法集合,但您可以使用 \fBipsecconf\fR(1M) 设置系统策略,将不同算法用于不同共享 IP 区域。所有的独占 IP 区域都有自己的算法集。