![通过 CLI 编辑 Windows Defender 防火墙默认 IPSEC 设置](https://linux22.com/image/1587137/%E9%80%9A%E8%BF%87%20CLI%20%E7%BC%96%E8%BE%91%20Windows%20Defender%20%E9%98%B2%E7%81%AB%E5%A2%99%E9%BB%98%E8%AE%A4%20IPSEC%20%E8%AE%BE%E7%BD%AE.png)
我正在寻找一个命令行来通过 CLI 修改 Windows Defender 防火墙的默认 IPSEC 设置。具体来说是默认身份验证设置。
以下是我想要修改的 GUI 菜单的屏幕截图:“IPsec 默认值”
我已经尝试过几乎所有以“Get-NetFirewall...”或“Get-NetIPsec...”开头的 Powershell 命令,但我认为没有任何 Powershell 命令允许这样做......
也许是 netsh 命令?或者是注册表项?
答案1
尝试 Powershell 命令 Get-NetIPsecRule Set-NetIPsecRule
答案2
在深渊中找到答案docs.microsoft.com。
论点-默认命令新-NetIPsecPhase1AuthSet扮演编辑默认设置的角色。
正如文档中所述,使用硬编码的 GUID 来指定默认的 IPSEC 身份验证设置(哈哈):
-默认
指定用于覆盖主模式加密默认值的自定义参数,使其成为加密的新默认设置。对于默认的 Phase1Authset 对象,默认的 Name 参数值为 {E5A5D32A-4BCE-4e4d-B07F-4AB1BA7E5FE3}。要检索默认设置,请使用默认的 Name 参数值进行查询。要指定不同的默认加密集,请删除当前默认集并使用 Rename-NetIPsecPhase1AuthSet cmdlet 指定默认集 {E5A5D32A-4BCE-4e4d-B07F-4AB1BA7E5FE3}。
因此,对于那些希望通过 Powershell 编辑此设置的人来说,解决方案将类似于:
# in case defaults settings would already be present, we remove them...
Remove-NetIPsecPhase1AuthSet -Name "{E5A5D32A-4BCE-4e4d-B07F-4AB1BA7E5FE3}"
# and create new default settings
$proposal = New-NetIPsecPhase1AuthSet -Anonymous
New-NetIPsecPhase1AuthSet -Default -Proposal $proposal -DisplayName "ServiceHardcoded Default Phase1 AuthSet"