]> git.ipfire.org Git - thirdparty/strongswan.git/blame - NEWS
removed unneded includes
[thirdparty/strongswan.git] / NEWS
CommitLineData
34bbd0c3 1strongswan-4.1.0
cd3958f8
AS
2----------------
3
4- Support of SHA2_384 hash function for protecting IKEv1
5 negotiations and support of SHA2 signatures in X.509 certificates.
6
7- Fixed a serious bug in the computation of the SHA2-512 HMAC
8 function. Introduced automatic self-test of all IKEv1 hash
9 and hmac functions during pluto startup. Failure of a self-test
10 currently issues a warning only but does not exit pluto [yet].
11
9b45443d
MW
12- Support for SHA2-256/384/512 PRF and HMAC functions in IKEv2.
13
c5d0fbb6
AS
14- Full support of CA information sections. ipsec listcainfos
15 now shows all collected crlDistributionPoints and OCSP
16 accessLocations.
17
69ed04bf
AS
18- Support of the Online Certificate Status Protocol (OCSP) for IKEv2.
19 This feature requires the HTTP fetching capabilities of the libcurl
20 library which must be enabled by setting the --enable-http configure
21 option.
22
9b45443d
MW
23- Refactored core of the IKEv2 message processing code, allowing better
24 code reuse and separation.
25
26- Virtual IP support in IKEv2 using INTERNAL_IP4/6_ADDRESS configuration
27 payload. Additionally, the INTERNAL_IP4/6_DNS attribute is interpreted
28 by the requestor and installed in a resolv.conf file.
29
30- The IKEv2 daemon charon installs a route for each IPsec policy to use
31 the correct source address even if an application does not explicitly
32 specify it.
33
34- Integrated the EAP framework into charon which loads pluggable EAP library
35 modules. The ipsec.conf parameter authby=eap initiates EAP authentication
36 on the client side, while the "eap" parameter on the server side defines
37 the EAP method to use for client authentication.
38 A generic client side EAP-Identity module and an EAP-SIM authentication
39 module using a third party card reader implementation are included.
40
41- Added client side support for cookies.
42
43- Integrated the fixes done at the IKEv2 interoperability bakeoff, including
44 strict payload order, correct INVALID_KE_PAYLOAD rejection and other minor
45 fixes to enhance interoperability with other implementations.
cd3958f8 46
1c266d7d
AS
47strongswan-4.0.7
48----------------
49
6fdf5f44
AS
50- strongSwan now interoperates with the NCP Secure Entry Client,
51 the Shrew Soft VPN Client, and the Cisco VPN client, doing both
52 XAUTH and Mode Config.
1c266d7d
AS
53
54- UNITY attributes are now recognized and UNITY_BANNER is set
55 to a default string.
56
57
2b4405a3
MW
58strongswan-4.0.6
59----------------
60
e38a15d4
AS
61- IKEv1: Support for extended authentication (XAUTH) in combination
62 with ISAKMP Main Mode RSA or PSK authentication. Both client and
63 server side were implemented. Handling of user credentials can
64 be done by a run-time loadable XAUTH module. By default user
65 credentials are stored in ipsec.secrets.
66
2b4405a3
MW
67- IKEv2: Support for reauthentication when rekeying
68
5903179b 69- IKEv2: Support for transport mode
af87afed 70
5903179b 71- fixed a lot of bugs related to byte order
2b4405a3 72
5903179b 73- various other bugfixes
2b4405a3
MW
74
75
0cd645d2
AS
76strongswan-4.0.5
77----------------
78
79- IKEv1: Implementation of ModeConfig push mode via the new connection
80 keyword modeconfig=push allows interoperability with Cisco VPN gateways.
81
82- IKEv1: The command ipsec statusall now shows "DPD active" for all
83 ISAKMP SAs that are under active Dead Peer Detection control.
84
85- IKEv2: Charon's logging and debugging framework has been completely rewritten.
86 Instead of logger, special printf() functions are used to directly
87 print objects like hosts (%H) identifications (%D), certificates (%Q),
88 etc. The number of debugging levels have been reduced to:
03bf883d 89
0cd645d2 90 0 (audit), 1 (control), 2 (controlmore), 3 (raw), 4 (private)
03bf883d 91
0cd645d2
AS
92 The debugging levels can either be specified statically in ipsec.conf as
93
94 config setup
03bf883d 95 charondebug="lib 1, cfg 3, net 2"
0cd645d2 96
03bf883d 97 or changed at runtime via stroke as
0cd645d2 98
03bf883d 99 ipsec stroke loglevel cfg 2
0cd645d2
AS
100
101
48dc3934
MW
102strongswan-4.0.4
103----------------
104
105- Implemented full support for IPv6-in-IPv6 tunnels.
106
107- Added configuration options for dead peer detection in IKEv2. dpd_action
108 types "clear", "hold" and "restart" are supported. The dpd_timeout
109 value is not used, as the normal retransmission policy applies to
110 detect dead peers. The dpd_delay parameter enables sending of empty
111 informational message to detect dead peers in case of inactivity.
112
113- Added support for preshared keys in IKEv2. PSK keys configured in
114 ipsec.secrets are loaded. The authby parameter specifies the authentication
115 method to authentificate ourself, the other peer may use PSK or RSA.
116
117- Changed retransmission policy to respect the keyingtries parameter.
118
112ad7c3
AS
119- Added private key decryption. PEM keys encrypted with AES-128/192/256
120 or 3DES are supported.
48dc3934
MW
121
122- Implemented DES/3DES algorithms in libstrongswan. 3DES can be used to
123 encrypt IKE traffic.
124
125- Implemented SHA-256/384/512 in libstrongswan, allows usage of certificates
126 signed with such a hash algorithm.
127
128- Added initial support for updown scripts. The actions up-host/client and
129 down-host/client are executed. The leftfirewall=yes parameter
130 uses the default updown script to insert dynamic firewall rules, a custom
131 updown script may be specified with the leftupdown parameter.
132
133
a1310b6b
MW
134strongswan-4.0.3
135----------------
136
137- Added support for the auto=route ipsec.conf parameter and the
138 ipsec route/unroute commands for IKEv2. This allows to set up IKE_SAs and
139 CHILD_SAs dynamically on demand when traffic is detected by the
140 kernel.
141
142- Added support for rekeying IKE_SAs in IKEv2 using the ikelifetime parameter.
143 As specified in IKEv2, no reauthentication is done (unlike in IKEv1), only
144 new keys are generated using perfect forward secrecy. An optional flag
145 which enforces reauthentication will be implemented later.
146
b425d998
AS
147- "sha" and "sha1" are now treated as synonyms in the ike= and esp=
148 algorithm configuration statements.
149
150
bf4df11f
AS
151strongswan-4.0.2
152----------------
153
623d3dcf
AS
154- Full X.509 certificate trust chain verification has been implemented.
155 End entity certificates can be exchanged via CERT payloads. The current
156 default is leftsendcert=always, since CERTREQ payloads are not supported
157 yet. Optional CRLs must be imported locally into /etc/ipsec.d/crls.
efa40c11
MW
158
159- Added support for leftprotoport/rightprotoport parameters in IKEv2. IKEv2
160 would offer more possibilities for traffic selection, but the Linux kernel
161 currently does not support it. That's why we stick with these simple
162 ipsec.conf rules for now.
163
623d3dcf
AS
164- Added Dead Peer Detection (DPD) which checks liveliness of remote peer if no
165 IKE or ESP traffic is received. DPD is currently hardcoded (dpdaction=clear,
166 dpddelay=60s).
167
efa40c11
MW
168- Initial NAT traversal support in IKEv2. Charon includes NAT detection
169 notify payloads to detect NAT routers between the peers. It switches
170 to port 4500, uses UDP encapsulated ESP packets, handles peer address
171 changes gracefully and sends keep alive message periodically.
172
173- Reimplemented IKE_SA state machine for charon, which allows simultaneous
174 rekeying, more shared code, cleaner design, proper retransmission
175 and a more extensible code base.
176
cfd8b27f
AS
177- The mixed PSK/RSA roadwarrior detection capability introduced by the
178 strongswan-2.7.0 release necessitated the pre-parsing of the IKE proposal
179 payloads by the responder right before any defined IKE Main Mode state had
180 been established. Although any form of bad proposal syntax was being correctly
181 detected by the payload parser, the subsequent error handler didn't check
182 the state pointer before logging current state information, causing an
183 immediate crash of the pluto keying daemon due to a NULL pointer.
184
bf4df11f 185
7e81e975
MW
186strongswan-4.0.1
187----------------
188
c15c3d4b
MW
189- Added algorithm selection to charon: New default algorithms for
190 ike=aes128-sha-modp2048, as both daemons support it. The default
191 for IPsec SAs is now esp=aes128-sha,3des-md5. charon handles
192 the ike/esp parameter the same way as pluto. As this syntax does
193 not allow specification of a pseudo random function, the same
194 algorithm as for integrity is used (currently sha/md5). Supported
195 algorithms for IKE:
196 Encryption: aes128, aes192, aes256
197 Integrity/PRF: md5, sha (using hmac)
198 DH-Groups: modp768, 1024, 1536, 2048, 4096, 8192
199 and for ESP:
200 Encryption: aes128, aes192, aes256, 3des, blowfish128,
201 blowfish192, blowfish256
202 Integrity: md5, sha1
203 More IKE encryption algorithms will come after porting libcrypto into
204 libstrongswan.
f2c2d395 205
c15c3d4b
MW
206- initial support for rekeying CHILD_SAs using IKEv2. Currently no
207 perfect forward secrecy is used. The rekeying parameters rekey,
22ff6f57 208 rekeymargin, rekeyfuzz and keylife from ipsec.conf are now supported
c15c3d4b
MW
209 when using IKEv2. WARNING: charon currently is unable to handle
210 simultaneous rekeying. To avoid such a situation, use a large
211 rekeyfuzz, or even better, set rekey=no on one peer.
22ff6f57 212
7e81e975
MW
213- support for host2host, net2net, host2net (roadwarrior) tunnels
214 using predefined RSA certificates (see uml scenarios for
215 configuration examples).
216
f2c2d395
MW
217- new build environment featuring autotools. Features such
218 as HTTP, LDAP and smartcard support may be enabled using
219 the ./configure script. Changing install directories
220 is possible, too. See ./configure --help for more details.
221
22ff6f57
MW
222- better integration of charon with ipsec starter, which allows
223 (almost) transparent operation with both daemons. charon
224 handles ipsec commands up, down, status, statusall, listall,
225 listcerts and allows proper load, reload and delete of connections
226 via ipsec starter.
227
b425d998 228
9820c0e2
MW
229strongswan-4.0.0
230----------------
231
232- initial support of the IKEv2 protocol. Connections in
233 ipsec.conf designated by keyexchange=ikev2 are negotiated
234 by the new IKEv2 charon keying daemon whereas those marked
235 by keyexchange=ikev1 or the default keyexchange=ike are
236 handled thy the IKEv1 pluto keying daemon. Currently only
237 a limited subset of functions are available with IKEv2
238 (Default AES encryption, authentication based on locally
239 imported X.509 certificates, unencrypted private RSA keys
240 in PKCS#1 file format, limited functionality of the ipsec
241 status command).
242
243
997358a6
MW
244strongswan-2.7.0
245----------------
246
247- the dynamic iptables rules from the _updown_x509 template
248 for KLIPS and the _updown_policy template for NETKEY have
249 been merged into the default _updown script. The existing
250 left|rightfirewall keyword causes the automatic insertion
251 and deletion of ACCEPT rules for tunneled traffic upon
252 the successful setup and teardown of an IPsec SA, respectively.
253 left|rightfirwall can be used with KLIPS under any Linux 2.4
254 kernel or with NETKEY under a Linux kernel version >= 2.6.16
255 in conjuction with iptables >= 1.3.5. For NETKEY under a Linux
256 kernel version < 2.6.16 which does not support IPsec policy
257 matching yet, please continue to use a copy of the _updown_espmark
258 template loaded via the left|rightupdown keyword.
259
260- a new left|righthostaccess keyword has been introduced which
261 can be used in conjunction with left|rightfirewall and the
262 default _updown script. By default leftfirewall=yes inserts
263 a bi-directional iptables FORWARD rule for a local client network
264 with a netmask different from 255.255.255.255 (single host).
265 This does not allow to access the VPN gateway host via its
266 internal network interface which is part of the client subnet
267 because an iptables INPUT and OUTPUT rule would be required.
268 lefthostaccess=yes will cause this additional ACCEPT rules to
269 be inserted.
270
271- mixed PSK|RSA roadwarriors are now supported. The ISAKMP proposal
272 payload is preparsed in order to find out whether the roadwarrior
273 requests PSK or RSA so that a matching connection candidate can
274 be found.
275
276
277strongswan-2.6.4
278----------------
279
280- the new _updown_policy template allows ipsec policy based
281 iptables firewall rules. Required are iptables version
282 >= 1.3.5 and linux kernel >= 2.6.16. This script obsoletes
283 the _updown_espmark template, so that no INPUT mangle rules
284 are required any more.
285
286- added support of DPD restart mode
287
288- ipsec starter now allows the use of wildcards in include
289 statements as e.g. in "include /etc/my_ipsec/*.conf".
290 Patch courtesy of Matthias Haas.
291
292- the Netscape OID 'employeeNumber' is now recognized and can be
293 used as a Relative Distinguished Name in certificates.
294
295
296strongswan-2.6.3
297----------------
298
299- /etc/init.d/ipsec or /etc/rc.d/ipsec is now a copy of the ipsec
300 command and not of ipsec setup any more.
301
302- ipsec starter now supports AH authentication in conjunction with
303 ESP encryption. AH authentication is configured in ipsec.conf
304 via the auth=ah parameter.
305
306- The command ipsec scencrypt|scdecrypt <args> is now an alias for
307 ipsec whack --scencrypt|scdecrypt <args>.
308
309- get_sa_info() now determines for the native netkey IPsec stack
310 the exact time of the last use of an active eroute. This information
311 is used by the Dead Peer Detection algorithm and is also displayed by
312 the ipsec status command.
313
314
315strongswan-2.6.2
316----------------
317
318- running under the native Linux 2.6 IPsec stack, the function
319 get_sa_info() is called by ipsec auto --status to display the current
320 number of transmitted bytes per IPsec SA.
321
322- get_sa_info() is also used by the Dead Peer Detection process to detect
323 recent ESP activity. If ESP traffic was received from the peer within
324 the last dpd_delay interval then no R_Y_THERE notification must be sent.
325
326- strongSwan now supports the Relative Distinguished Name "unstructuredName"
327 in ID_DER_ASN1_DN identities. The following notations are possible:
328
329 rightid="unstructuredName=John Doe"
330 rightid="UN=John Doe"
331
332- fixed a long-standing bug which caused PSK-based roadwarrior connections
333 to segfault in the function id.c:same_id() called by keys.c:get_secret()
334 if an FQDN, USER_FQDN, or Key ID was defined, as in the following example.
335
336 conn rw
337 right=%any
338 rightid=@foo.bar
339 authby=secret
340
341- the ipsec command now supports most ipsec auto commands (e.g. ipsec listall).
342
343- ipsec starter didn't set host_addr and client.addr ports in whack msg.
344
345- in order to guarantee backwards-compatibility with the script-based
346 auto function (e.g. auto --replace), the ipsec starter scripts stores
347 the defaultroute information in the temporary file /var/run/ipsec.info.
348
349- The compile-time option USE_XAUTH_VID enables the sending of the XAUTH
350 Vendor ID which is expected by Cisco PIX 7 boxes that act as IKE Mode Config
351 servers.
352
353- the ipsec starter now also recognizes the parameters authby=never and
354 type=passthrough|pass|drop|reject.
355
356
357strongswan-2.6.1
358----------------
359
360- ipsec starter now supports the also parameter which allows
361 a modular structure of the connection definitions. Thus
362 "ipsec start" is now ready to replace "ipsec setup".
363
364
365strongswan-2.6.0
366----------------
367
368- Mathieu Lafon's popular ipsec starter tool has been added to the
369 strongSwan distribution. Many thanks go to Stephan Scholz from astaro
370 for his integration work. ipsec starter is a C program which is going
371 to replace the various shell and awk starter scripts (setup, _plutoload,
372 _plutostart, _realsetup, _startklips, _confread, and auto). Since
373 ipsec.conf is now parsed only once, the starting of multiple tunnels is
374 accelerated tremedously.
375
376- Added support of %defaultroute to the ipsec starter. If the IP address
377 changes, a HUP signal to the ipsec starter will automatically
378 reload pluto's connections.
379
380- moved most compile time configurations from pluto/Makefile to
381 Makefile.inc by defining the options USE_LIBCURL, USE_LDAP,
382 USE_SMARTCARD, and USE_NAT_TRAVERSAL_TRANSPORT_MODE.
383
384- removed the ipsec verify and ipsec newhostkey commands
385
386- fixed some 64-bit issues in formatted print statements
387
388- The scepclient functionality implementing the Simple Certificate
389 Enrollment Protocol (SCEP) is nearly complete but hasn't been
390 documented yet.
391
392
393strongswan-2.5.7
394----------------
395
396- CA certicates are now automatically loaded from a smartcard
397 or USB crypto token and appear in the ipsec auto --listcacerts
398 listing.
399
400
401strongswan-2.5.6
402----------------
403
404- when using "ipsec whack --scencrypt <data>" with a PKCS#11
405 library that does not support the C_Encrypt() Cryptoki
406 function (e.g. OpenSC), the RSA encryption is done in
407 software using the public key fetched from the smartcard.
408
409- The scepclient function now allows to define the
410 validity of a self-signed certificate using the --days,
411 --startdate, and --enddate options. The default validity
412 has been changed from one year to five years.
413
414
415strongswan-2.5.5
416----------------
417
418- the config setup parameter pkcs11proxy=yes opens pluto's PKCS#11
419 interface to other applications for RSA encryption and decryption
420 via the whack interface. Notation:
421
422 ipsec whack --scencrypt <data>
423 [--inbase 16|hex|64|base64|256|text|ascii]
424 [--outbase 16|hex|64|base64|256|text|ascii]
425 [--keyid <keyid>]
426
427 ipsec whack --scdecrypt <data>
428 [--inbase 16|hex|64|base64|256|text|ascii]
429 [--outbase 16|hex|64|base64|256|text|ascii]
430 [--keyid <keyid>]
431
432 The default setting for inbase and outbase is hex.
433
434 The new proxy interface can be used for securing symmetric
435 encryption keys required by the cryptoloop or dm-crypt
436 disk encryption schemes, especially in the case when
437 pkcs11keepstate=yes causes pluto to lock the pkcs11 slot
438 permanently.
439
440- if the file /etc/ipsec.secrets is lacking during the startup of
441 pluto then the root-readable file /etc/ipsec.d/private/myKey.der
442 containing a 2048 bit RSA private key and a matching self-signed
443 certificate stored in the file /etc/ipsec.d/certs/selfCert.der
444 is automatically generated by calling the function
445
446 ipsec scepclient --out pkcs1 --out cert-self
447
448 scepclient was written by Jan Hutter and Martin Willi, students
449 at the University of Applied Sciences in Rapperswil, Switzerland.
450
451
452strongswan-2.5.4
453----------------
454
455- the current extension of the PKCS#7 framework introduced
456 a parsing error in PKCS#7 wrapped X.509 certificates that are
457 e.g. transmitted by Windows XP when multi-level CAs are used.
458 the parsing syntax has been fixed.
459
460- added a patch by Gerald Richter which tolerates multiple occurrences
461 of the ipsec0 interface when using KLIPS.
462
463
464strongswan-2.5.3
465----------------
466
467- with gawk-3.1.4 the word "default2 has become a protected
468 keyword for use in switch statements and cannot be used any
469 more in the strongSwan scripts. This problem has been
470 solved by renaming "default" to "defaults" and "setdefault"
471 in the scripts _confread and auto, respectively.
472
473- introduced the parameter leftsendcert with the values
474
475 always|yes (the default, always send a cert)
476 ifasked (send the cert only upon a cert request)
477 never|no (never send a cert, used for raw RSA keys and
478 self-signed certs)
479
480- fixed the initialization of the ESP key length to a default of
481 128 bits in the case that the peer does not send a key length
482 attribute for AES encryption.
483
484- applied Herbert Xu's uniqueIDs patch
485
486- applied Herbert Xu's CLOEXEC patches
487
488
489strongswan-2.5.2
490----------------
491
492- CRLs can now be cached also in the case when the issuer's
493 certificate does not contain a subjectKeyIdentifier field.
494 In that case the subjectKeyIdentifier is computed by pluto as the
495 160 bit SHA-1 hash of the issuer's public key in compliance
496 with section 4.2.1.2 of RFC 3280.
497
498- Fixed a bug introduced by strongswan-2.5.1 which eliminated
499 not only multiple Quick Modes of a given connection but also
500 multiple connections between two security gateways.
501
502
503strongswan-2.5.1
504----------------
505
506- Under the native IPsec of the Linux 2.6 kernel, a %trap eroute
507 installed either by setting auto=route in ipsec.conf or by
508 a connection put into hold, generates an XFRM_AQUIRE event
509 for each packet that wants to use the not-yet exisiting
510 tunnel. Up to now each XFRM_AQUIRE event led to an entry in
511 the Quick Mode queue, causing multiple IPsec SA to be
512 established in rapid succession. Starting with strongswan-2.5.1
513 only a single IPsec SA is established per host-pair connection.
514
515- Right after loading the PKCS#11 module, all smartcard slots are
516 searched for certificates. The result can be viewed using
517 the command
518
519 ipsec auto --listcards
520
521 The certificate objects found in the slots are numbered
522 starting with #1, #2, etc. This position number can be used to address
523 certificates (leftcert=%smartcard) and keys (: PIN %smartcard)
524 in ipsec.conf and ipsec.secrets, respectively:
525
526 %smartcard (selects object #1)
527 %smartcard#1 (selects object #1)
528 %smartcard#3 (selects object #3)
529
530 As an alternative the existing retrieval scheme can be used:
531
532 %smartcard:45 (selects object with id=45)
533 %smartcard0 (selects first object in slot 0)
534 %smartcard4:45 (selects object in slot 4 with id=45)
535
536- Depending on the settings of CKA_SIGN and CKA_DECRYPT
537 private key flags either C_Sign() or C_Decrypt() is used
538 to generate a signature.
539
540- The output buffer length parameter siglen in C_Sign()
541 is now initialized to the actual size of the output
542 buffer prior to the function call. This fixes the
543 CKR_BUFFER_TOO_SMALL error that could occur when using
544 the OpenSC PKCS#11 module.
545
546- Changed the initialization of the PKCS#11 CK_MECHANISM in
547 C_SignInit() to mech = { CKM_RSA_PKCS, NULL_PTR, 0 }.
548
549- Refactored the RSA public/private key code and transferred it
550 from keys.c to the new pkcs1.c file as a preparatory step
551 towards the release of the SCEP client.
552
553
554strongswan-2.5.0
555----------------
556
557- The loading of a PKCS#11 smartcard library module during
558 runtime does not require OpenSC library functions any more
559 because the corresponding code has been integrated into
560 smartcard.c. Also the RSAREF pkcs11 header files have been
561 included in a newly created pluto/rsaref directory so that
562 no external include path has to be defined any longer.
563
564- A long-awaited feature has been implemented at last:
565 The local caching of CRLs fetched via HTTP or LDAP, activated
566 by the parameter cachecrls=yes in the config setup section
567 of ipsec.conf. The dynamically fetched CRLs are stored under
568 a unique file name containing the issuer's subjectKeyID
569 in /etc/ipsec.d/crls.
570
571- Applied a one-line patch courtesy of Michael Richardson
572 from the Openswan project which fixes the kernel-oops
573 in KLIPS when an snmp daemon is running on the same box.
574
575
576strongswan-2.4.4
577----------------
578
579- Eliminated null length CRL distribution point strings.
580
581- Fixed a trust path evaluation bug introduced with 2.4.3
582
583
584strongswan-2.4.3
585----------------
586
587- Improved the joint OCSP / CRL revocation policy.
588 OCSP responses have precedence over CRL entries.
589
590- Introduced support of CRLv2 reason codes.
591
592- Fixed a bug with key-pad equipped readers which caused
593 pluto to prompt for the pin via the console when the first
594 occasion to enter the pin via the key-pad was missed.
595
596- When pluto is built with LDAP_V3 enabled, the library
597 liblber required by newer versions of openldap is now
598 included.
599
600
601strongswan-2.4.2
602----------------
603
604- Added the _updown_espmark template which requires all
605 incoming ESP traffic to be marked with a default mark
606 value of 50.
607
608- Introduced the pkcs11keepstate parameter in the config setup
609 section of ipsec.conf. With pkcs11keepstate=yes the PKCS#11
610 session and login states are kept as long as possible during
611 the lifetime of pluto. This means that a PIN entry via a key
612 pad has to be done only once.
613
614- Introduced the pkcs11module parameter in the config setup
615 section of ipsec.conf which specifies the PKCS#11 module
616 to be used with smart cards. Example:
617
618 pkcs11module=/usr/lib/pkcs11/opensc-pkcs11.lo
619
620- Added support of smartcard readers equipped with a PIN pad.
621
622- Added patch by Jay Pfeifer which detects when netkey
623 modules have been statically built into the Linux 2.6 kernel.
624
625- Added two patches by Herbert Xu. The first uses ip xfrm
626 instead of setkey to flush the IPsec policy database. The
627 second sets the optional flag in inbound IPComp SAs only.
628
629- Applied Ulrich Weber's patch which fixes an interoperability
630 problem between native IPsec and KLIPS systems caused by
631 setting the replay window to 32 instead of 0 for ipcomp.
632
633
634strongswan-2.4.1
635----------------
636
637- Fixed a bug which caused an unwanted Mode Config request
638 to be initiated in the case where "right" was used to denote
639 the local side in ipsec.conf and "left" the remote side,
640 contrary to the recommendation that "right" be remote and
641 "left" be"local".
642
643
644strongswan-2.4.0a
645-----------------
646
647- updated Vendor ID to strongSwan-2.4.0
648
649- updated copyright statement to include David Buechi and
650 Michael Meier
651
652
653strongswan-2.4.0
654----------------
655
656- strongSwan now communicates with attached smartcards and
657 USB crypto tokens via the standardized PKCS #11 interface.
658 By default the OpenSC library from www.opensc.org is used
659 but any other PKCS#11 library could be dynamically linked.
660 strongSwan's PKCS#11 API was implemented by David Buechi
661 and Michael Meier, both graduates of the Zurich University
662 of Applied Sciences in Winterthur, Switzerland.
663
664- When a %trap eroute is triggered by an outgoing IP packet
665 then the native IPsec stack of the Linux 2.6 kernel [often/
666 always?] returns an XFRM_ACQUIRE message with an undefined
667 protocol family field and the connection setup fails.
668 As a workaround IPv4 (AF_INET) is now assumed.
669
670- the results of the UML test scenarios are now enhanced
671 with block diagrams of the virtual network topology used
672 in a particular test.
673
674
675strongswan-2.3.2
676----------------
677
678- fixed IV used to decrypt informational messages.
679 This bug was introduced with Mode Config functionality.
680
681- fixed NCP Vendor ID.
682
683- undid one of Ulrich Weber's maximum udp size patches
684 because it caused a segmentation fault with NAT-ed
685 Delete SA messages.
686
687- added UML scenarios wildcards and attr-cert which
688 demonstrate the implementation of IPsec policies based
689 on wildcard parameters contained in Distinguished Names and
690 on X.509 attribute certificates, respectively.
691
692
693strongswan-2.3.1
694----------------
695
696- Added basic Mode Config functionality
697
698- Added Mathieu Lafon's patch which upgrades the status of
699 the NAT-Traversal implementation to RFC 3947.
700
701- The _startklips script now also loads the xfrm4_tunnel
702 module.
703
704- Added Ulrich Weber's netlink replay window size and
705 maximum udp size patches.
706
707- UML testing now uses the Linux 2.6.10 UML kernel by default.
708
709
710strongswan-2.3.0
711----------------
712
713- Eric Marchionni and Patrik Rayo, both recent graduates from
714 the Zuercher Hochschule Winterthur in Switzerland, created a
715 User-Mode-Linux test setup for strongSwan. For more details
716 please read the INSTALL and README documents in the testing
717 subdirectory.
718
719- Full support of group attributes based on X.509 attribute
720 certificates. Attribute certificates can be generated
721 using the openac facility. For more details see
722
723 man ipsec_openac.
724
725 The group attributes can be used in connection definitions
726 in order to give IPsec access to specific user groups.
727 This is done with the new parameter left|rightgroups as in
728
729 rightgroups="Research, Sales"
730
731 giving access to users possessing the group attributes
732 Research or Sales, only.
733
734- In Quick Mode clients with subnet mask /32 are now
735 coded as IP_V4_ADDRESS or IP_V6_ADDRESS. This should
736 fix rekeying problems with the SafeNet/SoftRemote and NCP
737 Secure Entry Clients.
738
739- Changed the defaults of the ikelifetime and keylife parameters
740 to 3h and 1h, respectively. The maximum allowable values are
741 now both set to 24 h.
742
743- Suppressed notification wars between two IPsec peers that
744 could e.g. be triggered by incorrect ISAKMP encryption.
745
746- Public RSA keys can now have identical IDs if either the
747 issuing CA or the serial number is different. The serial
748 number of a certificate is now shown by the command
749
750 ipsec auto --listpubkeys
751
752
753strongswan-2.2.2
754----------------
755
756- Added Tuomo Soini's sourceip feature which allows a strongSwan
757 roadwarrior to use a fixed Virtual IP (see README section 2.6)
758 and reduces the well-known four tunnel case on VPN gateways to
759 a single tunnel definition (see README section 2.4).
760
761- Fixed a bug occuring with NAT-Traversal enabled when the responder
762 suddenly turns initiator and the initiator cannot find a matching
763 connection because of the floated IKE port 4500.
764
765- Removed misleading ipsec verify command from barf.
766
767- Running under the native IP stack, ipsec --version now shows
768 the Linux kernel version (courtesy to the Openswan project).
769
770
771strongswan-2.2.1
772----------------
773
774- Introduced the ipsec auto --listalgs monitoring command which lists
775 all currently registered IKE and ESP algorithms.
776
777- Fixed a bug in the ESP algorithm selection occuring when the strict flag
778 is set and the first proposed transform does not match.
779
780- Fixed another deadlock in the use of the lock_certs_and_keys() mutex,
781 occuring when a smartcard is present.
782
783- Prevented that a superseded Phase1 state can trigger a DPD_TIMEOUT event.
784
785- Fixed the printing of the notification names (null)
786
787- Applied another of Herbert Xu's Netlink patches.
788
789
790strongswan-2.2.0
791----------------
792
793- Support of Dead Peer Detection. The connection parameter
794
795 dpdaction=clear|hold
796
797 activates DPD for the given connection.
798
799- The default Opportunistic Encryption (OE) policy groups are not
800 automatically included anymore. Those wishing to activate OE can include
801 the policy group with the following statement in ipsec.conf:
802
803 include /etc/ipsec.d/examples/oe.conf
804
805 The default for [right|left]rsasigkey is now set to %cert.
806
807- strongSwan now has a Vendor ID of its own which can be activated
808 using the compile option VENDORID
809
810- Applied Herbert Xu's patch which sets the compression algorithm correctly.
811
812- Applied Herbert Xu's patch fixing an ESPINUDP problem
813
814- Applied Herbert Xu's patch setting source/destination port numbers.
815
816- Reapplied one of Herbert Xu's NAT-Traversal patches which got
817 lost during the migration from SuperFreeS/WAN.
818
819- Fixed a deadlock in the use of the lock_certs_and_keys() mutex.
820
821- Fixed the unsharing of alg parameters when instantiating group
822 connection.
823
824
825strongswan-2.1.5
826----------------
827
828- Thomas Walpuski made me aware of a potential DoS attack via
829 a PKCS#7-wrapped certificate bundle which could overwrite valid CA
830 certificates in Pluto's authority certificate store. This vulnerability
831 was fixed by establishing trust in CA candidate certificates up to a
832 trusted root CA prior to insertion into Pluto's chained list.
833
834- replaced the --assign option by the -v option in the auto awk script
835 in order to make it run with mawk under debian/woody.
836
837
838strongswan-2.1.4
839----------------
840
841- Split of the status information between ipsec auto --status (concise)
842 and ipsec auto --statusall (verbose). Both commands can be used with
843 an optional connection selector:
844
845 ipsec auto --status[all] <connection_name>
846
847- Added the description of X.509 related features to the ipsec_auto(8)
848 man page.
849
850- Hardened the ASN.1 parser in debug mode, especially the printing
851 of malformed distinguished names.
852
853- The size of an RSA public key received in a certificate is now restricted to
854
855 512 bits <= modulus length <= 8192 bits.
856
857- Fixed the debug mode enumeration.
858
859
860strongswan-2.1.3
861----------------
862
863- Fixed another PKCS#7 vulnerability which could lead to an
864 endless loop while following the X.509 trust chain.
865
866
867strongswan-2.1.2
868----------------
869
870- Fixed the PKCS#7 vulnerability discovered by Thomas Walpuski
871 that accepted end certificates having identical issuer and subject
872 distinguished names in a multi-tier X.509 trust chain.
873
874
875strongswan-2.1.1
876----------------
877
878- Removed all remaining references to ipsec_netlink.h in KLIPS.
879
880
881strongswan-2.1.0
882----------------
883
884- The new "ca" section allows to define the following parameters:
885
886 ca kool
887 cacert=koolCA.pem # cacert of kool CA
888 ocspuri=http://ocsp.kool.net:8001 # ocsp server
889 ldapserver=ldap.kool.net # default ldap server
890 crluri=http://www.kool.net/kool.crl # crl distribution point
891 crluri2="ldap:///O=Kool, C= .." # crl distribution point #2
892 auto=add # add, ignore
893
894 The ca definitions can be monitored via the command
895
896 ipsec auto --listcainfos
897
898- Fixed cosmetic corruption of /proc filesystem by integrating
899 D. Hugh Redelmeier's freeswan-2.06 kernel fixes.
900
901
902strongswan-2.0.2
903----------------
904
905- Added support for the 818043 NAT-Traversal update of Microsoft's
906 Windows 2000/XP IPsec client which sends an ID_FQDN during Quick Mode.
907
908- A symbolic link to libcrypto is now added in the kernel sources
909 during kernel compilation
910
911- Fixed a couple of 64 bit issues (mostly casts to int).
912 Thanks to Ken Bantoft who checked my sources on a 64 bit platform.
913
914- Replaced s[n]printf() statements in the kernel by ipsec_snprintf().
915 Credits go to D. Hugh Redelmeier, Michael Richardson, and Sam Sgro
916 of the FreeS/WAN team who solved this problem with the 2.4.25 kernel.
917
918
919strongswan-2.0.1
920----------------
921
922- an empty ASN.1 SEQUENCE OF or SET OF object (e.g. a subjectAltName
923 certificate extension which contains no generalName item) can cause
924 a pluto crash. This bug has been fixed. Additionally the ASN.1 parser has
925 been hardened to make it more robust against malformed ASN.1 objects.
926
927- applied Herbert Xu's NAT-T patches which fixes NAT-T under the native
928 Linux 2.6 IPsec stack.
929
930
931strongswan-2.0.0
932----------------
933
934- based on freeswan-2.04, x509-1.5.3, nat-0.6c, alg-0.8.1rc12