Project

General

Profile

Version 5.5.1 » History » Version 2

Tobias Brunner, 18.10.2016 17:26
Added news for 5.5.1

1 1 Tobias Brunner
h1. Version 5.5.1
2 1 Tobias Brunner
3 2 Tobias Brunner
* The [[newhope]] plugin implements the post-quantum NewHope key exchange algorithm
4 2 Tobias Brunner
  proposed in their 2015 paper by Erdem Alkim, Léo Ducas, Thomas Pöppelmann and
5 2 Tobias Brunner
  Peter Schwabe.
6 2 Tobias Brunner
7 2 Tobias Brunner
* The libstrongswan crypto factory now offers the registration of Extended
8 2 Tobias Brunner
  Output Functions (XOFs). Currently supported XOFs are SHAKE128 and SHAKE256
9 2 Tobias Brunner
  implemented by the _sha3_ plugin, ChaCHa20 implemented by the _chapoly_ plugin
10 2 Tobias Brunner
  and the more traditional MGF1 Mask Generation Functions based on the SHA-1,
11 2 Tobias Brunner
  SHA-256 and SHA-512 hash algorithms implemented by the new _mgf1_ plugin.
12 2 Tobias Brunner
13 2 Tobias Brunner
* By default, the "outbound" FWD policies, introduced with version:5.5.0, are not installed anymore.
14 2 Tobias Brunner
  They may be enabled via the _policies_fwd_out_ setting in [[swanctl.conf]]/[[vici]] for a specific
15 2 Tobias Brunner
  CHILD_SA if its traffic would otherwise get blocked by a drop policy.
16 2 Tobias Brunner
  A bug in regards to updating reqids in the _kernel-netlink_ plugin, that was particularly a problem
17 2 Tobias Brunner
  with duplicate "outbound" FWD policies, has also been fixed (commit:175d78df60).
18 2 Tobias Brunner
19 2 Tobias Brunner
* XFRM policy hashing thresholds may be configured via [[strongswan.conf]]. This can significantly
20 2 Tobias Brunner
  improve the performance on hosts where the number of flows exceeds the flow cache size of the
21 2 Tobias Brunner
  Linux kernel.  Policies covering more than a single address don't get hash-indexed by default,
22 2 Tobias Brunner
  which result in wasting most of the cycles in @xfrm_policy_lookup_bytype()@ and the called
23 2 Tobias Brunner
  @xfrm_policy_match()@. Since Linux 3.18 the kernel can hash the first n-bit of a policy subnet to
24 2 Tobias Brunner
  perform indexed lookups. With correctly chosen thresholds this can completely eliminate the
25 2 Tobias Brunner
  performance impact of policy lookups.
26 2 Tobias Brunner
  *Note:* Due to a bug in Linux 3.19 through 4.7, the kernel crashes with a NULL pointer dereference
27 2 Tobias Brunner
  if a socket policy (used by strongSwan to exempt IKE traffic from IPsec tunnels) is installed while
28 2 Tobias Brunner
  hash thresholds are changed. See commit:ac9759a532 for details and a workaround.
29 2 Tobias Brunner
30 2 Tobias Brunner
* The [[NetworkManager|NetworkManager integration]] has been updated to support NM 1.2.
31 2 Tobias Brunner
  The directory from which CA certificates are loaded if no certificate is configured in the GUI can
32 2 Tobias Brunner
  now be configured via [[strongswan.conf]] using the new _charon-nm.ca_dir_ setting.
33 2 Tobias Brunner
34 2 Tobias Brunner
* IKE fragmentation is now enabled by default with the default fragment size set to 1280 bytes
35 2 Tobias Brunner
  for both IP address families.
36 2 Tobias Brunner
37 2 Tobias Brunner
* A DELETE is sent when a rekeyed IKEv1 SA is deleted. This fixes issues with peers that continue
38 2 Tobias Brunner
  to send DPDs on the old SA and then delete all SAs if no response is received (see #2090).
39 2 Tobias Brunner
  Also, when terminating IKEv1 SAs, DELETEs for all CHILD_SAs are now sent before sending one for
40 2 Tobias Brunner
  the IKE_SA and destroying it.
41 2 Tobias Brunner
42 2 Tobias Brunner
* The [[IpsecPKI|pki tool]], with help of the _pkcs1_ or _openssl_ plugins, can parse private keys in any of the
43 2 Tobias Brunner
  supported formats without having to know the exact type.  So instead of having to specify _rsa_ or
44 2 Tobias Brunner
  _ecdsa_ explicitly the keyword _priv_ may be used to indicate a private key of any type.
45 2 Tobias Brunner
  Similarly, [[swanctl]] can load any type of private key from the [[swanctldirectory|swanctl/private]] directory.
46 2 Tobias Brunner
47 2 Tobias Brunner
* The [[IpsecPKI|pki tool]] can handle RSASSA-PKCS1v1.5-with-SHA-3 signatures using the
48 2 Tobias Brunner
  _sha3_ and _gmp_ plugins.
49 2 Tobias Brunner
50 2 Tobias Brunner
* The VICI flush-certs command flushes certificates from the volatile certificate cache.
51 2 Tobias Brunner
  Optionally the type of the certificates to be flushed  (e.g. type = x509_crl) can be specified.
52 2 Tobias Brunner
53 2 Tobias Brunner
* Setting _charon.cache_crls = yes_ in [[strongswan.conf]] the [[vici]] plugin saves regular,
54 2 Tobias Brunner
  base and delta CRLs to disk.
55 2 Tobias Brunner
  Fetched CRLs are now also cached if the checked certificate has been revoked.
56 2 Tobias Brunner
57 2 Tobias Brunner
* The serial number for delta CRLs generated by [[IpsecPKIsigncrl|pki --signcrl]] is now based on
58 2 Tobias Brunner
  the given base CRL again (was broken since version:4.6.3).
59 2 Tobias Brunner
60 2 Tobias Brunner
* Delta CRLs are now properly cached in-memory (and on disk) together with their base. Before this
61 2 Tobias Brunner
  the presence of a delta CRL might required that the base be refetched every time.
62 2 Tobias Brunner
63 2 Tobias Brunner
* When verifying trust chains with [[IpsecPkiVerify|pki --verify]] local CRLs may now be specified with the
64 2 Tobias Brunner
  new @--crl@ argument.
65 2 Tobias Brunner
66 2 Tobias Brunner
* IKE and ESP/AH proposals configured as strings in [[ipsec.conf]] and [[swanctl.conf]] are now checked to
67 2 Tobias Brunner
  avoid invalid proposals. For instance, the presence of DH, PRF and encryption algorithms for IKE proposal
68 2 Tobias Brunner
  are now enforced and AEAD and regular encryption algorithms are not allowed in the same proposal
69 2 Tobias Brunner
  anymore.  Also fixed is the mapping of the _aes*gmac_ keywords to an integrity algorithm in AH proposals.
70 2 Tobias Brunner
71 2 Tobias Brunner
* Unmarked packets may now be matched by setting _0/0xffffffff_ as XFRM mark (commit:33d3ffde25).
72 2 Tobias Brunner
73 2 Tobias Brunner
* The maximum registered log level is now determined correctly if loggers implementing only
74 2 Tobias Brunner
  @log@ or @vlog@ are mixed (commit:dac15e03c8).
75 2 Tobias Brunner
76 2 Tobias Brunner
* In addition to the existing @ike_keys@ and @child_keys@ hooks on @listener_t@ two new hooks
77 2 Tobias Brunner
  allow listeners to receive the derived IKE and CHILD_SA keys (@ike|child_derived_keys@).
78 2 Tobias Brunner
79 2 Tobias Brunner
* The check for _libatomic_ has been improved (commit:6e19a1f5f2).
80 2 Tobias Brunner
81 2 Tobias Brunner
* The use of AES-GCM with BoringSSL has been fixed (commit:c72c6e9225).
82 2 Tobias Brunner
83 2 Tobias Brunner
* libtpmtss: In the TSS2 API the function TeardownSocketTcti() was replaced by
84 2 Tobias Brunner
  tss2_tcti_finalize().
85 2 Tobias Brunner
86 2 Tobias Brunner
* The results of leak-detective are now evaluated in our [[TestingEnvironment|testing environment]], which
87 2 Tobias Brunner
  lead to the fixing of several memory leaks.
88 2 Tobias Brunner
89 2 Tobias Brunner
* No key and self-signed certificate is generated by starter anymore if ipsec.secrets does not exist.
90 2 Tobias Brunner
91 2 Tobias Brunner
* The long unmaintained [[Maemo]] plugin and frontend have been removed.