用于 Internet 协议安全性 (IPSec) 的 Netsh 命令
在 Microsoft 管理控制台 (MMC) 中可以获得“IP 安全策略管理”和“IP 安全监视器”管理单元,而 Internet 协议安全性 (IPSec) 的 Netsh 命令则提供了等价于由这两个管理单元提供的基于控制台的管理和诊断功能。通过使用用于 IPSec 的 Netsh 命令,可以配置和查看静态或动态的 IPSec 主模式设置、快速模式设置、规则和配置参数。
尤其有以下需要时,通过命令行管理 IPSec 非常有用:
-
编写 IPSec 配置脚本。
-
通过配置下列功能来扩展 IPSec 的安全性和可管理性,而这些功能是“IP 安全策略管理”管理单元所不具备的:IPSec 诊断、默认的通讯免除、证书吊销列表 (CRL) 强制检测、IKE (Oakley) 日志记录、日志记录间隔、计算机启动安全以及计算机启动通讯免除。
可以从 Windows Server™ 2003 家族产品的命令提示符下,或 netsh ipsec 环境的命令提示符下运行这些命令。对于在 Windows Server™ 2003 家族产品命令提示符下运行的这些命令,必须先键入 netsh ipsec,然后再按照下面的语法键入命令和参数。
Netsh ipsec static 模式命令
使用 netsh ipsec static 命令,可以执行通过使用“IP 安全策略管理”和“IP 安全监视器”控制台所能执行的管理和监视任务。通过使用这些命令,可以创建、修改和指派 IPSec 策略,而不会立即影响活动 IPSec 策略的配置。
Netsh ipsec dynamic 模式命令
可以使用 netsh ipsec dynamic 命令来显示 IPSec 的活动状态,并立即影响活动 IPsec 策略的配置。这些命令直接配置安全策略数据库 (SPD)。只有当 IPSec 服务正在运行时,使用这些命令对 IPSec 策略进行的更改才能生效。如果 IPSec 服务停止,将放弃动态策略设置。尽管这些命令中的大多数会立即生效,但仍有几个配置命令需要在重新启动 IPSec 服务或重新启动计算机之后才能生效。有关这些命令的详细信息,请参阅 netsh ipsec dynamic set config 命令的语法描述。
警告
-
由于 IPSec 策略代理不会解释 netsh ipsec dynamic 命令,所以必须掌握如何应用 IKE 主模式和快速模式策略,才能有效地使用这些命令。使用这些命令时应当谨慎,因为有可能即使创建了无效的 IPSec 策略配置却不会遇到警告。
注意
-
IPSec 的 Netsh 命令只能用来在运行 Windows Server™ 2003 家族产品成员的计算机上配置 IPSec 策略。
要使用命令行来配置运行 Windows XP 的计算机上的 IPSec 策略,请使用 Ipseccmd.exe(该工具在 Windows XP CD 内的 \Support\Tools 文件夹中)。要使用命令行来配置运行 Windows 2000 的计算机上的 IPSec 策略,请使用 Ipsecpol.exe(该工具在“Windows 2000 Server 资源工具包”中)。
-
有关 netsh 的详细信息,请参阅 Netsh 概述和输入 netsh 上下文。
-
有关 Netsh 命令的详细信息,请参阅 Netsh 命令行实用程序。
Netsh ipsec
下列命令可在 ipsec> 提示符下使用,该提示符在 netsh 上下文中是根级提示符。
注意
-
尽管 dump 命令在 ipsec> 提示符下可用,但它是无效的。
若要查看该命令语法,请单击以下命令:
Netsh ipsec static
下列命令可在 ipsec static> 提示符下使用,该提示符在 netsh 上下文中为根级提示符。
若要查看该命令语法,请单击以下命令:
add filter
添加筛选器到指定的筛选器列表。
语法
add filter filterlist=srcaddr=dstaddr= [description=][protocol=][mirrored=] [srcmask=][dstmask=][srcport=] [dstport=]
参数
- filterlist=字符串
-
必需。指定要向其中添加筛选器的筛选器列表的名称。每个筛选器定义了一组要保护的入站或出站网络通讯。
- srcaddr={ Me| Any| IPAddress| DNSName| ServerType}
-
必需。指定 IP 通讯的源 IP 地址、DNS 名称或服务器类型。ServerType 可以使用 WINS、DNS、DHCP 或 gateway。
- dstaddr={Me | Any |IPAddress | DNSName | ServerType}
-
必需。指定 IP 通讯的目标 IP 地址、DNS 名称或服务器类型。ServerType 可以使用 WINS、DNS、DHCP 或 gateway。
- [ description=字符串]
-
提供有关 IP 筛选器的信息。
- [ protocol={ANY | ICMP |TCP| UDP | RAW | Integer }]
-
指定 IP 协议(除了寻址信息以外,如果要筛选特定的 IP 协议)。默认值为 ANY,表示该筛选器可以使用所有协议。
- [ mirrored={yes | no}]
-
指定是否创建镜像筛选器。使用 yes 可以基于筛选器设置创建两个筛选器,一个用于到目标的通讯,一个用于来自目标的通讯。默认值为 yes。
- [ srcmask={Mask | Prefix}]
-
指定将被筛选的数据包源地址子网掩码或前缀。可以指定从 1 到 32 这个范围内的前缀值,子网掩码的默认值为 255.255.255.255。
- [ dstmask={Mask | Prefix}
-
指定将被筛选的数据包目标地址子网掩码或前缀值。可以指定从 1 到 32 这个范围内的前缀值,子网掩码的默认值为 255.255.255.255。
- [ srcport=Port]
-
指定将被筛选的数据包的源端口号。该选项仅适用于筛选 TCP 或 UDP 数据包。如果指定为 0,则来自任何端口的数据包都将被筛选。默认设置为任意值。
- [ dstport=Port]
-
指定将被筛选的数据包的目标端口号。该选项仅适用于筛选 TCP 或 UDP 数据包。如果指定为 0,则发送到任何端口的数据包都将被筛选。默认设置为任意值。
注释
-
如果筛选器列表不存在,则创建此列表。
-
不要创建名称为 all 的筛选器列表。这样做会与选择所有 IPSec 筛选器列表的 netsh ipsec 选项(例如 delete filterlist all)产生冲突。
-
要筛选进出特定计算机的任何数据包,可以使用 srcaddr=Me 或 dstaddr=Me。
-
要筛选进出任何计算机的数据包,可以使用 srcaddr=Any 或 dstaddr=Any。
-
所有字符串参数都区分大小写。
add filteraction
创建一个具有指定的快速模式安全措施的筛选器操作。
语法
add filteractionname= [description=][qmpfs=][inpass=] [soft=][action=][qmsecmethods=]
参数
- name=字符串
-
必需。指定要创建的筛选器操作的名称。
- [ description=字符串]
-
提供有关筛选器操作的信息。
- [ qmpfs={yes | no}]
-
指定是否启用会话密钥完全向前保密 (PFS)。如果指定 yes,则每当要求新的会话密钥时都需要重新协商新的主密钥材料。默认值为 no。
- [ inpass={yes | no}]
-
指定是否允许与配置的筛选器列表匹配的传入数据包不采取安全措施,但是要求答复时提供采取安全措施的 IPSec 通讯。默认值为 no。
- [ soft={yes | no}]
-
指定当其他计算机不支持 IPSec 时,或者与具有 IPSec 功能的计算机进行 IPSec 协商失败时,是否重新使用不安全的通讯。默认值为 no。
- [ action={permit | block | negotiate}]
-
指定是否允许通讯而不协商 IP 安全性。如果指定 permit,则可在不协商或不应用 IP 安全的情况下,传输或接收通讯。如果指定 block,则通讯将被阻止。如果指定 negotiate,则将使用带有指定安全措施列表的 IP 安全。默认值为 negotiate。
- [ qmsecmethods="Neg1Neg2"]
-
指定由空格分隔并按以下格式定义的一个或多个安全措施:
{ESP [ConfAlg,AuthAlg]:k/s | AH [HashAlg]:k/s | AH [HashAlg+ESPConfAlg,AuthAlg]:k/s}]
其中:
- ConfAlg
-
指定加密算法。ConfigAlg 可以是 DES(数据加密标准)、3DES 或无。
- AuthAlg
-
指定完整性算法。AuthAlg 可以是 MD5(消息摘要 5)、SHA1(安全哈希算法 1)或无。
- HashAlg
-
指定哈希函数。HashAlg 可以是 MD5(消息摘要 5)或 SHA1。
- k
-
指定以千字节为单位的会话密钥生命周期。传输了指定千字节的数据后,会为快速模式 SA 生成新的会话密钥。默认值为 100000 千字节。
- s
-
指定以秒为单位的会话密钥生命周期。默认值是 3600 秒。
注释
-
不要创建名为 all 的筛选器操作。这样做会与选择所有 IPSec 筛选器操作的 netsh ipsec 选项(例如 delete filteraction all)产生冲突。
-
如果指定了 action=permit 或 action=block,并且指定了 qmsecmethods 参数,将不使用 qmsecmethods 参数。此外,如果指定了 qmpfs=yes、inpass=yes 或 soft=yes,也不会使用这些参数。
-
启动会话密钥的重新生成基于首先到达的时间间隔(秒或千字节)。如果未配置新间隔,则将使用默认间隔。
-
如果未指定 qmsecmethods=(快速模式安全措施),则将使用以下默认值:
-
ESP [3DES, SHA1]:100000k/3600s
-
ESP [3DES, MD5]:100000k/3600s
-
在命令中指定的每个快速模式安全措施的顺序决定了该安全措施的首选顺序。
-
所有字符串参数都区分大小写。
add filterlist
创建具有指定名称的空筛选器列表。
语法
add filterlistname= [description=]
参数
- name=字符串
-
必需。指定要创建的筛选器列表的名称。
- [ description=字符串]
-
提供有关筛选器列表的信息。
注释
-
不要创建名称为 all 的筛选器列表。这样做会与选择所有 IPSec 筛选器列表的 netsh ipsec 选项(例如 delete filterlist all)产生冲突。
-
所有字符串参数都区分大小写。
add policy
创建具有指定名称的 IPSec 策略。
语法
add policyname= [description=][mmpfs=][qmpermm=] [mmlifetime=][activatedefaultrule=][pollinginterval=][assign=][mmsecmethods=]
参数
- name=字符串
-
必需。指定要创建的 IPSec 策略的名称。
- [ description=字符串]
-
提供有关 IPSec 策略的信息。
- [ mmpfs={yes | no}]
-
指定是否启用主密钥完全向前保密 (PFS)。如果指定 yes,则主模式安全 SA 将被重新验证,而且每当要求提供快速模式 SA 的会话密钥材料时都需要协商新的主密钥的密钥材料。默认值为 no。
- [ qmpermm=Integer]
-
指定主密钥材料可用来派生会话密钥的次数。默认值为 0,这意味着可以从主模式 SA 派生出无限多个快速模式 SA。
- [ mmlifetime=Integer]
-
指定生成新主密钥所需的分钟数。默认值为 480 分钟。
- [ activatedefaultrule={yes | no}]
-
指定是否为该 IPSec 策略激活默认响应规则。默认设置为 yes。
- [ pollinginterval=Integer]
-
指定为了解该策略的变化而进行轮询的频率。默认值为 180 分钟。
- [ assign={yes | no}]
-
指定是否指派该 IPSec 策略(只能指派一个 IPSec 策略)。默认值是 no。
- [ mmsecmethods="SecMeth1SecMeth2"]
-
指定由空格分隔并按以下格式定义的一个或多个密钥交换安全措施:ConfAlg-HashAlg-GroupNumb,其中:
- ConfAlg
-
指定加密算法。ConfAlg 可以是 DES(数据加密标准)或 3DES。
- HashAlg
-
指定哈希函数。HashAlg 可以是 MD5(消息摘要 5)或 SHA1(安全哈希算法 1)。
- GroupNum
-
指定用于基本密钥材料的 Diffie-Hellman 组。GroupNumb 可以为:1(低,使用 768 位密钥材料保护),2(中等,使用 1024 位保护)以及 3(高,使用 2048 位保护)。
注释
-
不要创建名为 all 的策略。这样做可能会与 netsh ipsec 选项产生冲突,因为它会选择所有 IPSec 策略(例如 delete policy all)。
-
由于只能指派一个 IPSec 策略,如果当前已指派了策略并指派了新的策略,则当前指派的策略将自动解除指派。
-
如果指定了 set store=domain(当 IPSec 策略存储在 Active Directory 中时),则 assign 将无效。要为组策略对象指派策略,必须先使用 add policy 命令创建策略,然后使用 set store 命令。
-
如果指定 mmpfs=yes(启用主密钥 PFS),则 qmperm 的默认设置为 1 且不可配置,因为每一个新会话都将使主密钥的密钥材料被重新协商。
-
如果未指定 mmsecmethods=(密钥交换安全措施),则使用如下默认值:
-
3DES-SHA1-2
-
3DES-MD5-2
-
3DES-SHA1-3
-
IPSec 双方都必须具有至少一个通用的密钥交换安全措施(使用相同设置的措施),否则协商将会失败。
-
在主模式生存期内,如果快速模式协商数超过按照主模式协商为快速模式协商数设置的值,将发生新的主模式协商。
-
所有字符串参数都区分大小写。
add rule
用指定的身份验证方法,创建一个链接指定 IPSec 策略、筛选器列表和筛选器操作的规则。
语法
add rulename=policy=filterlist=filteraction=[tunnel=][conntype=] [activate=][description=][kerberos=][psk=][rootca=]
参数
- name=字符串
-
必需。指定要创建的 IPSec 策略的名称。
- policy=字符串
-
必需。指定包含该规则的 IPSec 策略的名称。
- filterlist=字符串
-
必需。指定适用于该规则的 IP 筛选器列表的名称。
- filteraction=字符串
-
必需。指定适用于该规则的 IP 筛选器操作的名称。
- [ tunnel={IPAddress | DNSName}]
-
为隧道模式指定隧道端点的 IP 地址或 DNS 名称。默认情况下,没有指定该选项并且使用传输模式。
- [ conntype={lan | dialup | all}]
-
指定该规则是仅应用于远程访问、拨号连接或局域网 (LAN) 连接,还是应用于所有连接。默认值为 all。
- [ activate={yes | no}]
-
指定是否为指定的 IPSec 策略激活该规则。默认设置为 yes。
- [ description=字符串]
-
提供有关该规则的信息。
- [ kerberos={yes | no}]
-
指定是否将 Kerberos V5 协议作为身份验证方法。
- [ psk=字符串]
-
如果将预共享的密钥作为身份验证方法,则指定用于该预共享密钥的字符串。
- [ rootca="Stringcertmap:{yes| no} excludecaname:{yes| no} "]
-
指定证书身份验证选项,其中:
- String
-
如果将证书作为身份验证方法,则指定该证书的可分辨名称。
- certmap:{yes|no}
-
指定是否启用证书到帐户的映射。可以启用证书到帐户映射,以验证证书是否正在被受信任的计算机使用。
- excludecaname:{yes|no}
-
指定是否从证书申请中排除受信任的根 CA 名称列表(从中接受证书)。
注释
-
不要创建名为 all 的规则。这样做会与选择所有 IPSec 规则的 netsh ipsec 选项(例如 delete rule all)产生冲突。
-
对于作为 Active Directory 域成员的计算机,只能使用 Kerberos V5 身份验证或证书到帐户的映射。
-
尽管只能使用一个预共享的密钥进行身份验证,但是如果为每个要使用的证书都指定一次 rootca 参数,则可以使用多个证书。
-
所有的证书身份验证参数都必须包含在引号中。嵌入式引号标记必须用后面跟撇号的反斜杠替换 (\')。
-
所有字符串参数都区分大小写。
-
在命令中为每个身份验证方法指定的顺序决定了该方法的首选顺序。
-
如果未指定身份验证方法,则使用动态的默认值。默认情况下,IPSec 策略使用 Kerberos V5 身份验证。如果该计算机具有计算机证书,则与该计算机证书链接的任意根 CA 也可用作身份验证。
-
如果指定了 excludecaname:yes,则受信任的根 CA 的列表不作为证书申请的一部分被发送,从而杜绝了有关计算机信任关系的敏感信息泄漏的可能性。要增强连接到 Internet 的计算机的安全性,请指定该选项。
-
不推荐使用预共享密钥身份验证方法,因为相对来说它是一种比较弱的身份验证方法。此外,预共享密钥以明文方式存储。
-
IPSec 双方都必须有至少一个通用身份验证方法,否则通讯将失败。
delete all
删除所有的 IPSec 策略、筛选器列表和筛选器操作。
语法
参数
delete filter
从与指定参数相匹配的筛选器列表中删除筛选器。
语法
delete filter filterlist=srcaddr=dstaddr=[protocol=] [srcmask=][dstmask=][srcport=] [dstport=][mirrored=]
参数
- filterlist=字符串
-
必需。指定向其中添加筛选器的筛选器列表的名称。
- srcaddr={Me | Any | IPAddress | DNSName | ServerType}
-
必需。指定被匹配的 IP 通讯的源 IP 地址、DNS 名称或服务器类型。ServerType 可以使用 WINS、DNS、DHCP 或 gateway。
- dstaddr={Me | Any |IPAddress | DNSName | ServerType}
-
必需。指定当前匹配的 IP 通讯的目标 IP 地址、DNS 名称或服务器类型。ServerType 可以使用 WINS、DNS、DHCP 或 gateway。
- [ protocol={ANY | ICMP |TCP| UDP | RAW | Integer }]
-
除了寻址信息外,如果筛选某个特定的 IP 协议,则指定该 IP 协议。值为 ANY 表示与协议设置为 any 的筛选器匹配。
- [ srcmask={Mask | Prefix}]
-
指定当前被筛选数据包的源地址子网掩码或前缀。可以指定从 1 到 32 这个范围内的前缀值,子网掩码的默认值为 255.255.255.255。
- [ dstmask={Mask | Prefix}]
-
指定当前被筛选数据包的目标地址子网掩码或前缀值。可以指定从 1 到 32 这个范围内的前缀值,子网掩码的默认值为 255.255.255.255。
- [ srcport=Port]
-
指定当前被筛选数据包的源端口号。该选项仅适用于筛选 TCP 或 UDP 数据包。值为 0 表示与源端口设置为 any 的筛选器匹配。
- [ dstport=Port]
-
指定当前被筛选数据包的目标端口号。该选项仅适用于筛选 TCP 或 UDP 数据包。值为 0 表示与目标端口设置为 any 的筛选器匹配。
- [ mirrored={yes | no}]
-
指定是否创建镜像筛选器。
注释
-
该命令只删除与所指定的参数完整匹配的筛选器。
-
如果没有指定可选参数,则会删除与指定的(必需)参数相匹配的所有筛选器。
-
要将筛选进出计算机的任何数据包的筛选器删除,可以使用 srcaddr=Me 或 dstaddr=Me。
-
要将筛选进出任何计算机的数据包的筛选器删除,可以使用 srcaddr=Any 或 dstaddr=Any。
-
所有字符串参数都区分大小写。
delete filteraction
删除指定的筛选器操作或所有筛选器操作。
语法
delete filteractionname= | all
参数
- name=字符串| all
-
必需。指定要删除的筛选操作的名称。或者,如果指定 all,则删除所有筛选操作。
注释
delete filterlist
删除指定的筛选器列表或所有筛选器列表。
语法
delete filterlistname= | all
参数
- name=字符串| all
-
必需。指定要删除的筛选器列表的名称。或者,如果指定 all,则删除所有筛选器列表。
注释
delete policy
删除指定的 IPSec 策略及所有关联规则,或所有 IPSec 策略。
语法
参数
- name=字符串| all
-
必需。指定要删除的 IPSec 策略的名称。或者,如果指定 all,则删除所有 IPSec 策略。
注释
delete rule
从指定的 IPSec 策略中删除指定的规则或所有规则。
语法
delete rulename= | ID= | allpolicy=
参数
- name=字符串| ID=Integer| all
-
必需。指定要删除的规则。如果指定了规则名称或规则 ID(用来标识规则在策略规则列表中的位置的编号),则删除相应的规则。如果指定了 all,则删除所有规则。
- policy=字符串
-
必需。指定从中删除一个或多个规则的策略的名称。
注释
-
不能删除默认的响应规则。
-
删除规则后,剩余规则的所有 ID 将相应发生更改。
-
所有字符串参数都区分大小写。
exportpolicy
将所有 IPSec 策略信息导出到指定的文件。
语法
参数
- file=字符串
-
必需。指定将 IPSec 策略信息导出到其中的文件的名称。
注释
-
默认情况下,当 IPSec 策略被导入文件时,该文件名称将添加 .ipsec 扩展名。
-
为增强混合环境中运行 Windows 2000 的计算机之间的互操作性,请将用于保存策略信息的文件的名称限制在 60 个字符以内。
-
所有字符串参数都区分大小写。
importpolicy
从指定的 IPSec 文件导入所有的 IPSec 策略信息。
语法
参数
- file=字符串
-
必需。指定从中导入 IPSec 策略信息的文件的名称。
注释
restorepolicyexamples
恢复默认的 IPSec 策略。
语法
restorepolicyexamplesrelease=
参数
- release={ win2K| Win2003}
-
必需。指定当前所还原的默认 IPSec 策略的版本。如果指定了 win2K,将还原 Windows 2000 附带的默认 IPSec 策略。如果指定了 Win2003,将还原 Windows Server™ 2003 家族产品附带的默认 IPSec 策略。
注释
-
还原默认的 IPSec 策略,将覆盖对原始默认策略、筛选器列表和筛选器操作的所有更改,即使这些配置项的名称已经更改也是如此。如果已经修改了这些项并且不想让修改被覆盖,则不要还原默认策略。
-
只能还原基于计算机的 IPSec 策略的默认 IPSec 策略。不能还原 Active Directory 中 IPSec 策略的默认 IPSec 策略。
set defaultrule
修改指定策略的默认响应规则。
语法
set defaultrulepolicy=[qmpfs=][activate=] [qmsecmethods=][kerberos=][psk=][rootca=]
参数
- policy=字符串
-
必需。指定其默认响应规则已被修改的 IPSec 策略的名称。
- [ qmpfs={yes | no}]
-
指定是否启用会话密钥完全向前保密 (PFS)。如果指定 yes,则每当要求新的会话密钥时都需要重新协商新的主密钥材料。默认值为 no。
- [ activate={yes | no}]
-
指定是否为指定的 IPSec 策略激活该规则。默认设置为 yes。
- [ qmsecmethods="Neg1Neg2"]
-
指定由空格分隔并按以下格式定义的一个或多个安全措施:
{ESP [ConfAlg,AuthAlg]:k/s | AH [HashAlg]:k/s | AH [HashAlg+ESPConfAlg,AuthAlg]:k/s}]
其中:
- ConfAlg
-
指定加密算法。ConfigAlg 可以是 DES(数据加密标准)、3DES 或无。
- AuthAlg
-
指定完整性算法。AuthAlg 可以是 MD5(消息摘要 5)、SHA1(安全哈希算法 1)或无。
- HashAlg
-
指定哈希函数。HashAlg 可以是 MD5(消息摘要 5)或 SHA1。
- k
-
指定以千字节为单位的会话密钥生命周期。传输了指定千字节的数据后,会为快速模式 SA 生成新的会话密钥。默认值为 100,000 千字节。
- s
-
指定以秒为单位的会话密钥生命周期。默认值是 3600 秒。
- [ kerberos={yes | no}]
-
指定是否将 Kerberos V5 协议作为身份验证方法。
- [ psk=字符串]
-
如果将预共享的密钥作为身份验证方法,则指定用于该预共享密钥的字符串。
- [ rootca="Stringcertmap:{yes| no} excludecaname:{yes| no} "]
-
指定证书身份验证选项,其中:
- String
-
如果将证书作为身份验证方法,则指定该证书的可分辨名称。
- certmap:{yes|no}
-
指定是否启用证书到帐户的映射。可以启用证书到帐户映射,以验证证书是否正在被受信任的计算机使用。
- excludecaname:{yes|no}
-
指定是否从证书申请中排除受信任的根 CA 名称列表(从中接受证书)。
注释
-
对于作为 Active Directory 域成员的计算机,只能使用 Kerberos V5 身份验证或证书到帐户的映射。
-
尽管只能使用一个预共享的密钥进行身份验证,但是如果为每个要使用的证书都指定一次 rootca 参数,则可以使用多个证书。
-
所有的证书身份验证参数都必须包含在引号中。嵌入式引号标记必须用后面跟撇号的反斜杠替换 (\')。
-
所有字符串参数都区分大小写。
-
在命令中为每个身份验证方法指定的顺序决定了该方法的首选顺序。
-
如果未指定身份验证方法,则使用动态的默认值。默认情况下,IPSec 策略使用 Kerberos V5 身份验证。如果该计算机具有计算机证书,则与该计算机证书链接的任意根 CA 也可用作身份验证。
-
如果指定了 excludecaname:yes,则受信任的根 CA 的列表不作为证书申请的一部分被发送,从而杜绝了有关计算机信任关系的敏感信息泄漏的可能性。要增强连接到 Internet 的计算机的安全性,请指定该选项。
-
不推荐使用预共享密钥身份验证方法,因为相对来说它是一种比较弱的身份验证方法。此外,预共享密钥以明文方式存储。
-
IPSec 双方都必须有至少一个通用身份验证方法,否则通讯将失败。
-
修改身份认证方法将会覆盖所有以前的身份认证方法,即使以前的身份认证方法有所不同。例如,如果已指定了 kerberos=yes 和 psk=yes,而后又指定了 kerberos=no,则 psk=yes 参数也将被覆盖,而且不再使用预共享的密钥身份验证。
-
不能将 ConfAlg 和 AuthAlg 同时设置为无。
set filteraction
修改筛选器操作。
语法
set filteractionname= | guid=[newname=] [description=][qmpfs=][inpass=] [soft=][action=][qmsecmethods=]
参数
- name=字符串| guid= guid
-
必需。指定要修改的筛选器操作的名称或全局唯一标识符 (GUID)。
- [ newname=字符串]
-
指定筛选器操作的新名称。
- [ description=字符串]
-
提供有关筛选器操作的信息。
- [ qmpfs={yes | no}]
-
指定是否启用会话密钥完全向前保密 (PFS)。如果指定 yes,则每当要求新的会话密钥时都需要重新协商新的主密钥材料。
- [ inpass={yes | no}]
-
指定是否允许与配置的筛选器列表匹配的传入数据包不采取安全措施,但是要求答复时提供采取安全措施的 IPSec 通讯。
- [ soft={yes | no}]
-
指定当其他计算机不支持 IPSec 时,或者与具有 IPSec 功能的计算机进行 IPSec 协商失败时,是否重新使用不安全的通讯。
- [ action={permit | block | negotiate}]
-
指定是否允许通讯而不协商 IP 安全性。如果指定 permit,则可在不协商或不应用 IP 安全的情况下,传输或接收通讯。如果指定 block,则通讯将被阻止。如果指定了 negotiate,则使用带有指定安全措施列表的 IP 安全。
- [ qmsecmethods="Neg1Neg2"]
-
指定由空格分隔并按以下格式定义的一个或多个安全措施:
{ESP [ConfAlg,AuthAlg]:k/s | AH [HashAlg]:k/s | AH [HashAlg+ESPConfAlg,AuthAlg]:k/s}]
其中:
- ConfAlg
-
指定加密算法。ConfigAlg 可以是 DES(数据加密标准)、3DES 或无。
- AuthAlg
-
指定完整性算法。AuthAlg 可以是 MD5(消息摘要 5)、SHA1(安全哈希算法 1)或无。
- HashAlg
-
指定哈希函数。HashAlg 可以是 MD5(消息摘要 5)或 SHA1(安全哈希算法 1)。
- k
-
指定以千字节为单位的会话密钥生命周期。传输了指定千字节的数据后,会为快速模式 SA 生成新的会话密钥。默认值为 100000 千字节。
- s
-
指定以秒为单位的会话密钥生命周期。默认值是 3600 秒。
注释
-
为筛选器操作指定新名称时,不要使用名称 all。这样做会与选择所有 IPSec 筛选器操作的 netsh ipsec 选项(例如 delete filteraction all)产生冲突。
-
如果指定了 action=permit 或 action=block,请不要设置 qmpfs=yes、inpass=yes 或 soft=yes。
-
启动会话密钥的重新生成基于首先到达的时间间隔(秒或千字节)。如果未配置新间隔,则将使用默认间隔。
-
如果以前没有为该筛选器操作指定 qmsecmethods=(快速模式安全方法),将使用以下默认设置:
-
ESP [3DES, SHA1]:100000s/3600k
-
ESP [3DES, MD5]:100000s/3600k
-
在命令中指定的每个快速模式安全措施的顺序决定了该安全措施的首选顺序。
-
所有字符串参数都区分大小写。
set filterlist
修改筛选器列表。
语法
set filterlistname= [newname=] [description=]
参数
- name=字符串
-
必需。指定要修改的筛选器列表的名称。
- [ newname=字符串]
-
指定筛选器列表的新名称。
- [ description=字符串]
-
提供有关筛选器列表的信息。
注释
-
为筛选器列表指定新名称时,不要使用名称 all。这样做会与选择所有 IPSec 筛选器列表的 netsh ipsec 选项(例如 delete filterlist all)产生冲突。
-
所有字符串参数都区分大小写。
set policy
修改 IPSec 策略。
语法
set policyname=newname= [description=][mmpfs=][qmpermm=] [mmlifetime=][activatedefaultrule=][pollinginterval=][assign=][gponame=][mmsecmethods=]
参数
- name=字符串| guid=guid
-
必需。指定要修改的 IPSec 策略的名称或 GUID。
- newname=字符串
-
必需。为 IPSec 策略指定新名称。
- [ description=字符串]
-
提供有关 IPSec 策略的信息。
- [ mmpfs={yes | no}]
-
指定是否启用主密钥完全向前保密 (PFS)。如果指定 yes,则主模式安全 SA 将被重新验证,而且每当要求提供快速模式 SA 的会话密钥材料时都需要协商新的主密钥的密钥材料。
- [ qmpermm=Integer]
-
指定主密钥材料可用来派生会话密钥的次数。
- [ mmlifetime=Integer]
-
指定生成新主密钥所需的分钟数。
- [ activatedefaultrule={yes | no}]
-
指定是否为该 IPSec 策略激活默认响应规则。
- [ pollinginterval=Integer]
-
指定为了解该策略的变化而进行轮询的频率。默认值为 180 分钟。
- [ assign={yes | no}]
-
指定是否指派该 IPSec 策略。
- [ gponame=字符串]
-
指定为其指派 IPSec 策略的组策略对象的名称。只有在为作为 Active Directory 域成员的计算机配置策略时,该参数才是适用的。
- [ mmsecmethods="SecMeth1SecMeth2"]
-
指定由空格分隔并按以下格式定义的一个或多个密钥交换安全措施:ConfAlg-HashAlg-GroupNumb,其中:
- ConfAlg
-
指定加密算法。ConfAlg 可以是 DES(数据加密标准)或 3DES。
- HashAlg
-
指定哈希函数。HashAlg 可以是 MD5(消息摘要 5)或 SHA1(安全哈希算法 1)。
- GroupNum
-
指定用于基本密钥材料的 Diffie-Hellman 组。GroupNumb 可以为:1(低,使用 768 位密钥材料保护),2(中等,使用 1024 位保护)以及 3(高,使用 2048 位保护)。
注释
-
如果为策略指定新的名称,请不要使用名称 all。这样做会与选择所有 IPSec 策略的 netsh ipsec 选项(例如 delete policy all)产生冲突。
-
如果指定了 set store=domain(当 IPSec 策略存储在 Active Directory 中时),assign 将无效。
-
如果指定 mmpfs=yes(启用主密钥 PFS),则 qmperm 的默认设置为 1 且不可配置,因为每一个新会话都将使主密钥的密钥材料被重新协商。
-
IPSec 双方都必须具有至少一个通用的密钥交换安全措施(使用相同设置的措施),否则协商将会失败。
-
如果设置为 set store=domain,则只能指定一个组策略对象名称。
-
所有字符串参数都区分大小写。
set rule
修改 IPSec 策略中的规则。
语法
set rulename= | ID=policy= [newname=][description=][filterlist=] [filteraction=] [tunnel=][conntype=] [activate=][kerberos=][psk=][rootca=]
参数
- name=字符串| ID=Integer
-
必需。指定要修改的规则的名称或 ID(标识规则在策略规则列表中的位置的编号)。
- policy=字符串
-
必需。指定包含该规则的 IPSec 策略的名称。
- [ newname=字符串]
-
指定规则的新名称。
- [ description=字符串]
-
提供有关该规则的信息。
- [ filterlist=字符串]
-
指定适用于该规则的 IP 筛选器列表的名称。
- [ filteraction=字符串]
-
指定适用于该规则的 IP 筛选器操作的名称。
- [ tunnel={IPAddress | DNSName}]
-
为隧道模式指定隧道端点的 IP 地址或 DNS 名称。
- [ conntype={lan | dialup | all}]
-
指定该规则是仅应用于远程访问、拨号连接或局域网 (LAN) 连接,还是应用于所有连接。
- [ activate={yes | no}]
-
指定是否为指定的 IPSec 策略激活该规则。
- [ kerberos={yes | no}]
-
指定是否将 Kerberos V5 协议作为身份验证方法。
- [ psk=字符串]
-
如果将预共享的密钥作为身份验证方法,则指定用于该预共享密钥的字符串。
- [ rootca="Stringcertmap:{yes| no} excludecaname:{yes| no} "]
-
指定证书身份验证选项,其中:
- String
-
如果将证书作为身份验证方法,则指定该证书的可分辨名称。
- certmap:{yes|no}
-
指定是否启用证书到帐户的映射。可以启用证书到帐户映射,以验证证书是否正在被受信任的计算机使用。
- excludecaname:{yes|no}
-
指定是否从证书申请中排除受信任的根 CA 名称列表(从中接受证书)。
注释
-
对于作为 Active Directory 域成员的计算机,只能使用 Kerberos V5 身份验证或证书到帐户的映射。
-
尽管只能使用一个预共享的密钥进行身份验证,但是如果为每个要使用的证书都指定一次 rootca 参数,则可以使用多个证书。
-
所有的证书身份验证参数都必须包含在引号中。嵌入式引号标记必须用后面跟撇号的反斜杠替换 (\')。
-
所有字符串参数都区分大小写。
-
在命令中为每个身份验证方法指定的顺序决定了该方法的首选顺序。
-
如果未指定身份验证方法,则使用动态的默认值。默认情况下,IPSec 策略使用 Kerberos V5 身份验证。如果该计算机具有计算机证书,则与该计算机证书链接的任意根 CA 也可用作身份验证。
-
如果指定了 excludecaname:yes,则受信任的根 CA 的列表不作为证书申请的一部分被发送,从而杜绝了有关计算机信任关系的敏感信息泄漏的可能性。要增强连接到 Internet 的计算机的安全性,请指定该选项。
-
不推荐使用预共享密钥身份验证方法,因为相对来说它是一种比较弱的身份验证方法。此外,预共享密钥以明文方式存储。
-
IPSec 双方都必须有至少一个通用身份验证方法,否则通讯将失败。
-
修改身份认证方法将会覆盖所有以前的身份认证方法,即使以前的身份认证方法有所不同。例如,如果已指定了 kerberos=yes 和 psk=yes,而后又指定了 kerberos=no,则 psk=yes 参数也将被覆盖,而且不再使用预共享的密钥身份验证。
set store
设置当前 IPSec 策略的存储位置。
语法
set storelocation= [domain=]
参数
- location={local | persistent | domain}
-
必需。指定 IPSec 策略的存储位置。
- [ domain=]
-
如果策略存储在 Active Directory 中(当指定 location=domain 时),则指定存储 IPSec 策略的域的名称。
注释
- set store 命令仅在 netsh 上下文中有效,就是说:
-
如果从 netsh ipsec 上下文的命令提示符下运行该命令;
-
如果通过使用 netsh.exe 命令运行批处理文件。
-
持久存储中包含 IPSec 策略,通过指派这些策略,可以保护该计算机在启动时(在应用本地策略或基于域的策略之前)的安全。一旦出现故障,持久 IPSec 策略将提供安全保护,因为无论应用的是本地策略还是基于域的策略(例如,如果 IPSec 策略被破坏,则可能不会应用该策略),持久 IPSec 策略都将保持有效。为了增强安全性,建议您创建并指派持久策略。
-
可以指派本地存储中包含的 IPSec 策略来保护该计算机的安全。如果域策略可用,将应用域策略而不是本地策略。
-
可以指派域存储中包含的 IPSec 策略来保护域中计算机组的安全。
-
建议将持久策略设置为所有策略中限制性最严格的策略。域策略和本地策略应当补充持久策略。
-
使用 set machine 命令来配置远程计算机。
-
所有字符串参数都区分大小写。
show all
显示所有 IPSec 策略、规则、筛选器列表和筛选器操作的配置信息。
语法
show all [format=] [wide=]
参数
- [ format={list | table}]
-
指定以屏幕格式还是以制表符分隔的格式显示 IPSec 配置信息。默认值为 list,表示以屏幕格式显示输出。
- [ wide={yes | no}]
-
指定是否允许 IPSec 配置信息的显示超过 80 个字符的屏幕宽度。默认值为 no,表示配置信息的显示限制在屏幕宽度之内。
注释
-
由于 show all 命令可能会产生冗长和快速滚动的输出,所以可以考虑将输出保存在一个文本文件中,除非您仅需查看有限的部分。
要将 show all 命令的输出保存在一个文本文件中,请执行以下操作之一:
如果您在 netsh 环境中 (netsh>)
-
在 netsh 提示符下,键入:
set file open FileName.txt
-
然后键入:
ipsec static show all
-
要停止发送输出并关闭文件,请键入:
set file close
如果您不在 netsh 环境中
-
在命令提示符下,键入:
netsh ipsec static show all >FileName.txt
-
要停止输出 IPSec 配置信息,必须通过执行以下操作之一退出 Netsh:
-
单击 Netsh 窗口右上角的“X”图标关闭该窗口。
-
使用“任务管理器”结束 Netsh 程序。
show filteraction
显示一个或多个筛选器操作的配置信息。
语法
show filteractionname= | rule= | all [level=][format=] [wide=]
参数
- name=字符串| rule=字符串| all
-
必需。指定一个或多个将显示其配置信息的筛选器操作。如果指定了 name,将显示具有指定名称的筛选器操作。如果指定了 rule,将显示与指定的规则关联的所有筛选器操作。如果指定了 all,将显示所有筛选器操作。
- [ level={verbose | normal}]
-
指定要显示的信息的级别。如果指定了 verbose,除了基本筛选器操作信息以外,还将显示有关安全方法、策略存储位置以及是否启用会话密钥完全向前保密 (PFS) 的信息。默认值为 normal。
- [ format={list | table}]
-
指定以屏幕格式还是以制表符分隔的格式显示 IPSec 配置信息。默认值为 list,表示以屏幕格式显示输出。
- [ wide={yes | no}]
-
指定是否允许 IPSec 配置信息的显示超过 80 个字符的屏幕宽度。默认值为 no,表示配置信息的显示限制在屏幕宽度之内。
注释
-
所有字符串参数都区分大小写。
-
由于 show filteraction 命令可能会产生冗长和快速滚动的输出,所以可以考虑将输出保存在一个文本文件中,除非您仅需查看有限的部分。
要将 show filteraction 命令的输出保存在一个文本文件中,请执行以下操作之一:
如果您在 netsh 环境中 (netsh>)
-
在 netsh 提示符下,键入:
set file open FileName.txt
-
然后键入:
ipsec static show filteractionName | Rule | all [level=verbose | normal]
-
要停止发送输出并关闭文件,请键入:
set file close
如果您不在 netsh 环境中
-
在命令提示符下,键入:
netsh ipsec static show filteractionName | Rule | all [level=verbose | normal] >FileName.txt
-
要停止输出 IPSec 配置信息,必须通过执行以下操作之一退出 Netsh:
-
单击 Netsh 窗口右上角的“X”图标关闭该窗口。
-
使用“任务管理器”结束 Netsh 程序。
show filterlist
显示一个或多个筛选器列表的配置信息。
语法
show filterlistname= | rule= | all [level=][format=][resolvedns=] [wide=]
参数
- name=字符串| rule=字符串| all
-
必需。指定要显示的一个或多个筛选器列表。如果指定了 name,将显示具有指定名称的筛选器列表。如果指定了 rule,将显示与指定的规则关联的所有筛选器列表。如果指定了 all,将显示所有筛选器列表。
- [ level={verbose | normal}]
-
指定要显示的信息的级别。如果指定了 verbose,除了基本筛选器列表信息以外,还将显示由每个筛选器所定义的 IP 通讯的源、目标和类型。默认值为 normal。
- [ format={list | table}]
-
指定以屏幕格式还是以制表符分隔的格式显示 IPSec 配置信息。默认值为 list,表示以屏幕格式显示输出。
- [ resolvedns={yes | no}]
-
指定当显示源和目标时是否解析与 IP 地址相关的域名系统 (DNS) 或 NETBIOS 计算机名称。如果指定了 yes,则还必须将 level 设置为 verbose,否则将不显示 DNS 名称。默认值为 no。
- [ wide={yes | no}]
-
指定是否允许 IPSec 配置信息的显示超过 80 个字符的屏幕宽度。默认值为 no,表示配置信息的显示限制在屏幕宽度之内。
注释
-
所有字符串参数都区分大小写。
-
由于 show filterlist 命令可能会产生冗长和快速滚动的输出,所以可以考虑将输出保存在一个文本文件中,除非您仅需查看有限的部分。
要将 show all 命令的输出保存在一个文本文件中,请执行以下操作之一:
如果您在 netsh 环境中 (netsh>)
-
在 netsh 提示符下,键入:
set file open FileName.txt
-
然后键入:
ipsec static show filterlistName | rule | all [level=verbose | normal][resolvedns=yes | no
-
要停止发送输出并关闭文件,请键入:
set file close
如果您不在 netsh 环境中
-
在命令提示符下,键入:
netsh ipsec static show filterlistName | rule | all [level=verbose | normal][resolvedns=yes | no >FileName.txt
-
要停止输出 IPSec 配置信息,必须通过执行以下操作之一退出 Netsh:
-
单击 Netsh 窗口右上角的“X”图标关闭该窗口。
-
使用“任务管理器”结束 Netsh 程序。
show gpoassignedpolicy
显示指派给特定组策略对象的活动 IPSec 策略的配置信息。
语法
show gpoassignedpolicy [name= ]
参数
- [ name=字符串]
-
指定为其指派活动 IPSec 策略的组策略对象的名称。如果没有指定名称,将显示本地 IPSec 策略。
注释
-
如果设置为 set store=domain,则只能指定一个组策略对象名称。
-
所有字符串参数都区分大小写。
要将 show gpossignedpolicy 命令的输出保存在一个文本文件中,请执行以下操作之一:
如果您在 netsh 环境中 (netsh>)
-
在 netsh 提示符下,键入:
set file open FileName.txt
-
然后键入:
ipsec static show gpoassignedpolicy [Name]
-
要停止发送输出并关闭文件,请键入:
set file close
如果您不在 netsh 环境中
-
在命令提示符下,键入:
netsh ipsec static show gpoassignedpolicy [Name] >FileName.txt
show policy
显示指定 IPSec 策略或所有 IPSec 策略的配置信息。
语法
show policyname= | all [level=] [format=] [wide=]
参数
- name=字符串| all
-
必需。指定要显示的 IPSec 策略的名称,或者如果指定了 all,则显示所有 IPSec 策略。
- [ level={verbose | normal}]
-
指定要显示的信息的级别。如果指定了 verbose,除了有关筛选器操作和规则的信息以外,还将显示安全方法和身份验证方法。默认值为 normal。
- [ format={list | table}]
-
指定以屏幕格式还是以制表符分隔的格式显示 IPSec 配置信息。默认值为 list,表示以屏幕格式显示输出。
- [ wide={yes | no}]
-
指定是否允许 IPSec 配置信息的显示超过 80 个字符的屏幕宽度。默认值为 no,表示配置信息的显示限制在屏幕宽度之内。
注释
-
所有字符串参数都区分大小写。
-
由于 show policy 命令可能会产生冗长和快速滚动的输出,所以可以考虑将输出保存在一个文本文件中,除非您仅需查看有限的部分。
要将 show policy 命令的输出保存在一个文本文件中,请执行以下操作之一:
如果您在 netsh 环境中 (netsh>)
-
在 netsh 提示符下,键入:
set file open FileName.txt
-
然后键入:
ipsec static show policyName | all >FileName.txt
-
要停止发送输出并关闭文件,请键入:
set file close
如果您不在 netsh 环境中
-
在命令提示符下,键入:
netsh ipsec static show policyName | all >FileName.txt
-
要停止输出 IPSec 配置信息,必须通过执行以下操作之一退出 Netsh:
-
单击 Netsh 窗口右上角的“X”图标关闭该窗口。
-
使用“任务管理器”结束 Netsh 程序。
show rule
显示指定策略的某个规则的配置信息,或指定策略的所有规则的配置信息。
语法
show rulename= | ID= | all | defaultpolicy= [type=][level=][format=] [wide=]
参数
- name={字符串 | ID=Integer | all | default}
-
必需。指定要显示的一个或多个规则。如果指定了规则名称或规则 ID(用来标识规则在策略规则列表中的位置的编号),将显示相应的规则。如果指定了 all,将显示指定策略的所有规则。如果指定了 default,将显示默认响应规则。
- policy=字符串
-
必需。指定要显示其指定规则或所有规则的策略的名称。
- [ type={transport | tunnel}]
-
指定是否显示所有传输规则或所有隧道规则。默认值是显示所有规则。
- [ level={verbose | normal}]
-
指定要显示的信息的级别。如果指定了 verbose,除了显示与规则有关的基本信息以外,还将显示与关联的筛选器操作有关的信息。默认值为 normal。
- [ format={list | table}]
-
指定以屏幕格式还是以制表符分隔的格式显示 IPSec 配置信息。默认值为 list,表示以屏幕格式显示输出。
- [ wide={yes | no}]
-
指定是否允许 IPSec 配置信息的显示超过 80 个字符的屏幕宽度。默认值为 no,表示配置信息的显示限制在屏幕宽度之内。
注释
-
如果使用 type 参数,还必须使用 all 参数(必须指定 show rule all)。
-
所有字符串参数都区分大小写。
-
由于 show rule 命令可能会产生冗长和快速滚动的输出,所以可以考虑将输出保存在一个文本文件中,除非您仅需查看有限的部分。
要将 show rule 命令的输出保存在一个文本文件中,请执行以下操作之一:
如果您在 netsh 环境中 (netsh>)
-
在 netsh 提示符下,键入:
set file open FileName.txt
-
然后键入:
ipsec static show ruleName | ID | all | defaultPolicy [level=verbose | normal]
-
要停止发送输出并关闭文件,请键入:
set file close
如果您不在 netsh 环境中
-
在命令提示符下,键入:
netsh ipsec static show ruleName | ID | all | defaultPolicy [level=verbose | normal] >FileName.txt
-
要停止输出 IPSec 配置信息,必须通过执行以下操作之一退出 Netsh:
-
单击 Netsh 窗口右上角的“X”图标关闭该窗口。
-
使用“任务管理器”结束 Netsh 程序。
Netsh ipsec dynamic
下列命令可在 ipsec dynamic > 提示符下使用,该提示符在 netsh 上下文中为根级提示符。
若要查看该命令语法,请单击以下命令:
格式图例
|
格式
|
意义
|
|---|
斜体 | 用户必须提供的信息 |
粗体 | 用户必须像显示的一样准确键入的元素 |
省略号 (...) | 可在命令行中重复多次的参数 |
在括号 ([]) 之间 | 可选项目 |
在大括号 ({}) 之间;将选项用管线 (|) 隔开。例如:{even|odd} | 用户必须从中只选择一个选项的选项组 |
Courier font
| 代码或程序输出 |