web-dev-qa-db-fra.com

OpenVPN ne peut pas désactiver le cryptage

Dans la configuration du serveur et du client, j'ai défini:

cipher none
auth none

Suivant ce conseil J'utilise également le port UDP 1195.

Lorsque je lance le serveur et le client, je reçois les avertissements suivants:

Tue Dec  4 12:58:25 2018 ******* WARNING *******: '--cipher none' was specified. This means NO encryption will be performed and tunnelled data WILL be transmitted in clear text over the network! PLEASE DO RECONSIDER THIS SETTING!
Tue Dec  4 12:58:25 2018 ******* WARNING *******: '--auth none' was specified. This means no authentication will be performed on received packets, meaning you CANNOT trust that the data received by the remote side have NOT been manipulated. PLEASE DO RECONSIDER THIS SETTING!

... ce qui est bien, mais openvpn utilise toujours le cryptage. Je le sais, car:

1) Je reçois le message suivant côté serveur lorsque le client se connecte:

Tue Dec  4 12:59:59 2018 client_abc/10.20.73.2:36752 Outgoing Data Channel: Cipher 'AES-256-GCM' initialized with 256 bit key
Tue Dec  4 12:59:59 2018 client_abc/10.20.73.2:36752 Incoming Data Channel: Cipher 'AES-256-GCM' initialized with 256 bit key

2) Je reçois une charge CPU énorme des deux côtés

3) Je vois dans Wireshark que les données sont cryptées

Que faut-il d'autre pour désactiver le chiffrement?

11
user2449761

Il semble que vous ayez activé les paramètres de cryptage négociables (NCP). Vous devez spécifier

ncp-disable

Désactivez les "paramètres cryptographiques négociables". Cela désactive complètement la négociation de chiffrement.

Lorsque deux instances OpenVPN ont activé NCP (par défaut pour les versions récentes), elles négocieront le chiffrement à utiliser à partir d'un ensemble de chiffrements définis par ncp-chiffreurs. La valeur par défaut pour cela est 'AES-256-GCM: AES-128-GCM' qui explique pourquoi vous voyez AES-256-GCM sur votre connexion.

31
user9517

En supposant que vous utilisez openvpn 2.4, je pense que vous devez également définir

ncp-disable

https://openvpn.net/community-resources/reference-manual-for-openvpn-2-4/

Quelques antécédents:

Openvpn vous demandait de configurer manuellement l'algorithme de chiffrement à la même valeur aux deux extrémités. Cela posait cependant un problème, il rendait très difficile la mise à niveau du cryptage sur un VPN multi-utilisateur existant. En 2016, une attaque appelée "sweet32" a été conçue, permettant de récupérer du texte en clair dans certaines circonstances. Ce n'était pas exactement une attaque facile à réussir dans la pratique et il y avait un moyen de l'atténuer sans changer de chiffre, mais c'était toujours un développement préoccupant.

Openvpn 2.4 a introduit une nouvelle fonctionnalité, activée par défaut pour la négociation des paramètres cryptographiques. Je ne sais pas si c'était une réaction à sweet32 ou le résultat de préoccupations générales sur les implications d'être effectivement enfermé dans une seule suite de chiffrement.

Ainsi, lorsque la négociation des paramètres de cryptographie est activée, le paramètre "chiffrement" agit effectivement comme une solution de repli à utiliser si l'autre côté de la connexion ne prend pas en charge la négociation.

12
Peter Green