Changelog for 4.4.x

Version 4.4.1

  • The PLUTO_MARK_IN and PLUTO_ESP_ENC environment variables can be used
    in a user-specific updown script to set marks on inbound ESP or
    ESP_IN_UDP packets.
  • The openssl plugin now supports X.509 certificate and CRL functions. The use of the Online
    Certificate Status Protocol (OCSP) still requires the x509 plugin, though.
    X.509 attribute certificate handling rely on the x509 plugin as well.
  • OCSP/CRL checking in IKEv2 has been moved to the revocation plugin, enabled
    by default. Plase update manual load directives in strongswan.conf.
  • RFC3779 ipAddrBlock constraint checking has been moved to the addrblock
    plugin, disabled by default. Enable it and update manual load directives
    in strongswan.conf, if required.
  • Issue a warning if explicit load lists are used. Since the number of pluto
    and charon plugins are increasing steadily with each release and explicit load
    lists might become obsoleted, a warning is now issued by ipsec starter if explicit
    load lists are found in strongswan.conf since we don't recommend their use for
    inexperienced users. Experts read on here.
  • The pki utility supports CRL generation using the --signcrl command.
  • The ipsec pki --self, --issue and --req commands now support output in
    PEM format using the --outform pem option.
  • The major refactoring of the IKEv1 Mode Config functionality now allows
    the transport and handling of arbitrary Mode Config attributes.
  • The RADIUS proxy plugin eap-radius now supports multiple servers. Configured
    servers are chosen randomly, with the option to prefer a specific server.
    Non-responding servers are degraded by the selection process.
  • The ipsec pool tool manages arbitrary configuration attributes stored
    in an SQL database. ipsec pool --help gives the details.
  • The new eap-simaka-sql plugin acts as a backend for EAP-SIM and EAP-AKA,
    reading triplets/quintuplets from an SQL database.
  • The High Availability plugin now supports a HA enabled in-memory address
    pool and Node reintegration without IKE_SA rekeying. The latter allows
    clients without IKE_SA rekeying support to keep connected during
    reintegration. Additionally, many other issues have been fixed in the ha
  • Fixed a potential remote code execution vulnerability resulting from
    the misuse of snprintf(). The vulnerability was introduced with the
    strongswan-4.3.3 release and is exploitable by unauthenticated users.
    Patches for all releases starting with 4.3.3 are available.

Version 4.4.0

  • The IKEv2 High Availability plugin has been integrated. It provides
    load sharing and failover capabilities in a cluster of currently two nodes,
    based on an extend ClusterIP kernel module (for details see HighAvailability).
    The development of the High Availability functionality was sponsored by
    secunet Security Networks AG.
  • Added IKEv1 and IKEv2 configuration support for the AES-GMAC
    authentication-only ESP cipher. Our aes_gmac kernel patch or a Linux
    2.6.34 kernel is required to make AES-GMAC available via the XFRM
    kernel interface.
  • Added support for Diffie-Hellman groups 22, 23 and 24 to the gmp, gcrypt
    and openssl plugins, usable by both pluto and charon. The new proposal
    keywords are modp1024s160, modp2048s224 and modp2048s256.
    Thanks to Joy Latten from IBM for her contribution.
  • The IKEv1 pluto daemon supports RAM-based virtual IP pools using
    the rightsourceip directive with a subnet from which addresses
    are allocated.
  • The ipsec pki --gen and --pub commands now allow the output of
    private and public keys in PEM format using the --outform pem
    command line option.
  • The new DHCP plugin queries virtual IP addresses for clients from a DHCP
    server using broadcasts, or a defined server using the
    charon.plugins.dhcp.server strongswan.conf option. DNS/WINS server information
    is additionally served to clients if the DHCP server provides such
    information. The plugin is used in ipsec.conf configurations having
    rightsourceip set to %dhcp.
  • A new plugin called farp fakes ARP responses for virtual IP addresses
    handed out to clients from the IKEv2 daemon charon. The plugin lets a
    road-warrior act as a client on the local LAN if it uses a virtual IP
    from the responders subnet, e.g. acquired using the DHCP plugin.
  • The existing IKEv2 socket implementations have been migrated to the
    socket-default and the socket-raw plugins. The new socket-dynamic plugin
    binds sockets dynamically to ports configured via the left-/rightikeport
    ipsec.conf connection parameters.
  • The Android charon plugin stores received DNS server information as "net.dns"
    system properties, as used by the Android platform.