web-dev-qa-db-ja.com

Windows IPSec / L2TPVPNにIPSecメインモードでAESを使用するように強制する

WindowsのRASベースのIPSecVPNクライアントは、Windowsファイアウォール(IPSecドライバーをホストする)のIPSecのデフォルトを尊重していないようですが、キー交換にSHA1整合性を備えた3DES暗号化を使用することを主張しています(別名IPSecメインモード)。これらは両方とも現在レガシーアルゴリズムです。

したがって、データ転送(クイックモード)にどの暗号化が採用されているかは関係ありません。RASはAES-256-CBCまでサポートし、リンク全体は3DES/SHA1と同じくらい弱いだけです。

一方、WindowsファイアウォールのIPSecドライバーはSHA-384、AES-GCM、ECDH P-384を処理できるので、これらを使用するようにVPNクライアントを構成したり、Windowsファイアウォールで設定されたデフォルトを単に尊重したりする方法はありますか?

1
billc.cn

IPSec/IKEでも同様の問題があります。 RasManサービスは、Windowsファイアウォールを介して構成されたIPSecポリシーを完全に無視しているようです。そして、私が思いついた最高のものは、レジストリのマングリングによるAES-SHA1-DH2048です。私はそれを.regファイルとして保存しました。コメントがあるので、物事はかなり明確になるはずです。

REGEDIT4

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\IKEv2]
"CustomParams"=dword:00000001
"CustomProposalsCount"=dword:00000001

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\IKEv2\Proposals]

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\IKEv2\Proposals\0]
; for "Quick Mode", all keys optional
; DES, 3DES, AES_128, AES_256
"esp_encr"="AES_128"
; MD5, SHA1
"esp_auth"="SHA1"
; MD5, SHA1
;"AH"="SHA1"
; NONE, 1, 2, 2048, ECP_256, ECP_384, MM
;"PFS"="MM"

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\Parameters]
"AllowL2TPWeakCrypto"=dword:00000000
"AllowPPTPWeakCrypto"=dword:00000000
; for "Main Mode"
; 0 - disable, 1 - enable, 2 - force /// WARNING! "force" disables stronger DH groups!
"NegotiateDH2048_AES256"=dword:00000001
2
Jordan123