Project

General

Profile

Windows Suite B Support with IKEv1 » History » Version 12

Andreas Steffen, 22.07.2009 14:31
completed Suite B Support for 128 bits

1 10 Andreas Steffen
h1. Windows Suite B Support with IKEv1
2 1 Andreas Steffen
3 3 Andreas Steffen
Windows Vista Service Pack 1, Windows Server 2008 and Windows 7 support the Suite B cryptographic algorithms for IPsec defined by "RFC 4869":http://tools.ietf.org/html/rfc4869. For Windows configuration details see http://support.microsoft.com/kb/949856/.
4 2 Andreas Steffen
5 8 Andreas Steffen
The following command sets the IKEv1 Main Mode algorithms:
6 2 Andreas Steffen
7 1 Andreas Steffen
<pre>
8 1 Andreas Steffen
netsh advfirewall set global mainmode mmsecmethods ecdhp256:aes128-sha256,ecdhp384:aes192-sha384,dhgroup14:aes128-sha1
9 1 Andreas Steffen
</pre>
10 2 Andreas Steffen
11 2 Andreas Steffen
The currently configured algorithms can be checked using the command:
12 1 Andreas Steffen
13 1 Andreas Steffen
<pre>
14 1 Andreas Steffen
netsh advfirewall show global
15 1 Andreas Steffen
16 1 Andreas Steffen
Main Mode:
17 1 Andreas Steffen
KeyLifetime  480min,0sess
18 1 Andreas Steffen
SecMethods   ECDHP256-AES128-SHA256,ECDHP384-AES192-SHA384,DHGroup14-AES128-SHA1
19 1 Andreas Steffen
ForceDH      No
20 3 Andreas Steffen
</pre>
21 3 Andreas Steffen
22 11 Andreas Steffen
The following command sets the IKEv1 Quick Mode algorithms in the rule "VPN Suite B":
23 3 Andreas Steffen
24 3 Andreas Steffen
<pre>
25 11 Andreas Steffen
netsh advfirewall consec set rule name="VPN Suite B" new qmsecmethods=esp:aesgcm128-aesgcm128,esp:aesgcm192-aesgcm192,esp:aesgcm256-aesgcm256
26 3 Andreas Steffen
</pre>
27 4 Andreas Steffen
28 8 Andreas Steffen
The current rule settings are shown with the following command:
29 5 Andreas Steffen
30 5 Andreas Steffen
<pre>
31 11 Andreas Steffen
netsh advfirewall consec show rule name="VPN Suite B"
32 5 Andreas Steffen
33 11 Andreas Steffen
Rule Name:                            VPN Suite B
34 5 Andreas Steffen
----------------------------------------------------------------------
35 5 Andreas Steffen
Enabled:                              Yes
36 5 Andreas Steffen
Profiles:                             Domain,Private,Public
37 5 Andreas Steffen
Type:                                 Static
38 5 Andreas Steffen
Mode:                                 Tunnel
39 11 Andreas Steffen
LocalTunnelEndpoint:                  10.10.0.6
40 5 Andreas Steffen
RemoteTunnelEndpoint:                 10.10.0.1
41 5 Andreas Steffen
Endpoint1:                            10.10.0.6/32
42 5 Andreas Steffen
Endpoint2:                            10.10.1.0/24
43 5 Andreas Steffen
Protocol:                             Any
44 5 Andreas Steffen
Action:                               RequireInRequireOut
45 11 Andreas Steffen
Auth1:                                ComputerCertECDSAP256
46 11 Andreas Steffen
Auth1ECDSAP256CAName:                 C=CH, O=strongSec GmbH, CN=strongSec 2007 CA
47 11 Andreas Steffen
Auth1ECDSAP256CertMapping:            No
48 11 Andreas Steffen
Auth1ECDSAP256ExcludeCAName:          No
49 11 Andreas Steffen
Auth1ECDSAP256CertType:               Root
50 11 Andreas Steffen
Auth1ECDSAP256HealthCert:             No
51 5 Andreas Steffen
MainModeSecMethods:                   ECDHP256-AES128-SHA256,ECDHP384-AES192-SHA384,DHGroup14-AES128-SHA1
52 11 Andreas Steffen
QuickModeSecMethods:                  ESP:AESGCM128-AESGCM128+60min+100000kb,ESP:AESGCM192-AESGCM192+60min+100000kb,ESP:AESGCM256-AESGCM256+60min+100000kb
53 1 Andreas Steffen
ExemptIPsecProtectedConnections:      No
54 1 Andreas Steffen
ApplyAuthorization:                   No
55 5 Andreas Steffen
Ok.
56 1 Andreas Steffen
</pre>
57 5 Andreas Steffen
58 8 Andreas Steffen
On the strongSwan side the following entries are required in ipsec.conf for 128 bit security:
59 8 Andreas Steffen
60 1 Andreas Steffen
<pre>
61 11 Andreas Steffen
conn suiteB
62 12 Andreas Steffen
     left=10.10.0.1
63 12 Andreas Steffen
     leftcert=koala_ecCert.pem
64 12 Andreas Steffen
     leftid=@koala.strongsec.com
65 12 Andreas Steffen
     leftsubnet=10.10.1.0/24
66 12 Andreas Steffen
     leftfirewall=yes
67 12 Andreas Steffen
     lefthostaccess=yes
68 12 Andreas Steffen
     right=10.10.0.6
69 12 Andreas Steffen
     rightid="C=CH, O=strongSec GmbH, OU=ECDSA-256, CN=bonsai.strongsec.com"
70 12 Andreas Steffen
     rightca=%same
71 1 Andreas Steffen
     keyexchange=ikev1
72 1 Andreas Steffen
     ike=aes128-sha256-ecp256!
73 1 Andreas Steffen
     esp=aes128gcm16!
74 10 Andreas Steffen
     pfs=no
75 12 Andreas Steffen
     dpdaction=clear
76 12 Andreas Steffen
     dpddelay=300s
77 12 Andreas Steffen
     rekey=no
78 12 Andreas Steffen
     auto=add
79 10 Andreas Steffen
</pre>
80 1 Andreas Steffen
81 12 Andreas Steffen
Here the resulting status output:
82 8 Andreas Steffen
83 8 Andreas Steffen
<pre>
84 12 Andreas Steffen
root@koala:~# ipsec statusall suiteB
85 8 Andreas Steffen
86 12 Andreas Steffen
Status of IKEv1 pluto daemon (strongSwan 4.3.3):
87 12 Andreas Steffen
loaded plugins: curl test-vectors aes des sha1 sha2 md5 gmp openssl pubkey random hmac 
88 12 Andreas Steffen
debug options: control
89 10 Andreas Steffen
 
90 12 Andreas Steffen
"suiteB": 10.10.1.0/24===10.10.0.1[@koala.strongsec.com]...10.10.0.6[C=CH, O=strongSec GmbH, OU=ECDSA-256, CN=bonsai.strongsec.com]; erouted; eroute owner: !#21
91 12 Andreas Steffen
"suiteB":   CAs: 'C=CH, O=strongSec GmbH, CN=strongSec 2007 CA'...'C=CH, O=strongSec GmbH, CN=strongSec 2007 CA'
92 12 Andreas Steffen
"suiteB":   ike_life: 10800s; ipsec_life: 3600s; rekey_margin: 540s; rekey_fuzz: 100%; keyingtries: 3
93 12 Andreas Steffen
"suiteB":   dpd_action: clear; dpd_delay: 300s; dpd_timeout: 150s;
94 12 Andreas Steffen
"suiteB":   policy: PUBKEY+ENCRYPT+TUNNEL+DONTREKEY; prio: 24,32; interface: eth1; 
95 12 Andreas Steffen
"suiteB":   newest ISAKMP SA: !#20; newest IPsec SA: !#21; 
96 12 Andreas Steffen
"suiteB":   IKE proposal: AES_CBC_128/HMAC_SHA2_256/ECP_256
97 12 Andreas Steffen
"suiteB":   ESP proposal: AES_GCM_16_128/AUTH_NONE/<N/A>
98 12 Andreas Steffen
 
99 12 Andreas Steffen
!#21: "suiteB" STATE_QUICK_R2 (IPsec SA established); EVENT_SA_EXPIRE in 3580s; newest IPSEC; eroute owner
100 12 Andreas Steffen
!#21: "suiteB" esp.671c2d71@10.10.0.6 (180 bytes, 14s ago) esp.9f12330a@10.10.0.1 (240 bytes, 14s ago); tunnel
101 12 Andreas Steffen
!#20: "suiteB" STATE_MAIN_R3 (sent MR3, ISAKMP SA established); EVENT_SA_EXPIRE in 28780s; newest ISAKMP
102 1 Andreas Steffen
</pre>