我想使用 python 将 windows 机器连接到 L2TP/ IPsec vpn
I want to connect a windows machine to a L2TP/ IPsec vpn using python
我有一个 soft-ether VPN 服务器,我想制作一个自定义客户端应用程序,它看起来像 python 中的其他 vpn 客户端(Nord、Hola vpns)。问题出在 python 我找不到使用 windows 内置 vpn 管理器以编程方式通过 IPsec 协议连接的方法。
在 C 中,我可以找到一个 RAS API,但由于我是网络基础设施编程的新手,所以我很难正确理解它并理解它的实际工作原理。
您可以在 Windows PowerShell
中使用 Add-VpnConnection
and Set-VpnConnectionIPsecConfiguration
参见第 2 个示例 2 link:
PS C:\> Add-VpnConnection -Name "Contoso" -ServerAddress 176.16.1.2 -TunnelType "L2tp"
PS C:\> Set-VpnConnectionIPsecConfiguration -ConnectionName "Contoso" -AuthenticationTransformConstants None -CipherTransformConstants AES128 -EncryptionMethod AES128 -IntegrityCheckMethod SHA256 -PfsGroup None -DHGroup ECP256 -PassThru -Force
AuthenticationTransformConstants : None
CipherTransformConstants : AES128
DHGroup : ECP256
IntegrityCheckMethod : SHA256
PfsGroup : None
EncryptionMethod : AES128
而且从 Python 调用 PowerShell 应该也很简单。
我有一个 soft-ether VPN 服务器,我想制作一个自定义客户端应用程序,它看起来像 python 中的其他 vpn 客户端(Nord、Hola vpns)。问题出在 python 我找不到使用 windows 内置 vpn 管理器以编程方式通过 IPsec 协议连接的方法。
在 C 中,我可以找到一个 RAS API,但由于我是网络基础设施编程的新手,所以我很难正确理解它并理解它的实际工作原理。
您可以在 Windows PowerShell
中使用Add-VpnConnection
and Set-VpnConnectionIPsecConfiguration
参见第 2 个示例 2 link:
PS C:\> Add-VpnConnection -Name "Contoso" -ServerAddress 176.16.1.2 -TunnelType "L2tp"
PS C:\> Set-VpnConnectionIPsecConfiguration -ConnectionName "Contoso" -AuthenticationTransformConstants None -CipherTransformConstants AES128 -EncryptionMethod AES128 -IntegrityCheckMethod SHA256 -PfsGroup None -DHGroup ECP256 -PassThru -Force
AuthenticationTransformConstants : None
CipherTransformConstants : AES128
DHGroup : ECP256
IntegrityCheckMethod : SHA256
PfsGroup : None
EncryptionMethod : AES128
而且从 Python 调用 PowerShell 应该也很简单。