Network Manager - L2TP/IPSec VPN with non-Network Manager VPN Servers

 

Issue with VPN servers only proposing IPsec IKEv1 weak legacy algorithms

There is a general consensus that the following legacy algorithms are now considered weak or broken in regards to security and should be phased out and replaced with stronger algorithms.

Encryption Algorithms :

3DES
Blowfish

Integrity Algorithms :

MD5
SHA1

Diffie Hellman Groups :

MODP768
MODP1024
MODP1536

Legacy algorithms that are considered weak or broken are regularly removed from the default set of allowed algorithms with newer releases of strongSwan and Libreswan.

As of strongSwan 5.4.0 and Libreswan 3.20, the above algorithms (apart from SHA1 and MODP1536 for Libreswan which still includes them for backwards compatibility) have been or in some cases already been removed from the default set of allowed algorithms.

If you are not sure which IKEv1 algorithms your VPN server uses, you can query the VPN server with the ike-scan.sh script located in the IPsec IKEv1 algorithms section of the Wiki :

https://github.com/nm-l2tp/network-manager-l2tp/wiki/Known-Issues

If the VPN server is only proposing weak or broken algorithms, it is recommended that it be reconfigured to propose stronger algorithms, e.g. AES, SHA2 and MODP2048.

If for some reason the VPN server cannot be reconfigured and you are not too concerned about security, for a workaround, user specified phase 1 (ike) and phase 2 (esp) algorithms can be specified in the IPsec Options dialog box in the Advanced section. See the following example and the IPsec IKEv1 algorithms section of the Wiki for more details :

https://github.com/nm-l2tp/network-manager-l2tp/wiki/Known-Issues


Example workaround for 3DES, SHA1 and MODP1024 broken algorithms


Unfortunately there are many L2TP/IPsec VPN servers still offering only 3DES, SHA1 and MODP1024. One of the main reasons possibly for this is because it is the default Microsoft has offered with their L2TP/IPsec VPN servers since the days Windows XP was the main client.

If you are using strongSwan for IPsec client support, enter the following in the corresponding IPsec Options dialog box advanced section:

Phase1 Algorithms : 3des-sha1-modp1024
Phase2 Algorithms : 3des-sha1

If you are using Libreswan >= 3.20 for IPsec client support, enter the following in the IPsec Options dialog box advanced section:

Phase1 Algorithms : 3des-sha1;modp1024
Phase2 Algorithms : 3des-sha1