OpenVPN - Authentification par mot de passe uniquement

11

Lorsque j'utilise le client OpenVPN pour Windows, je peux me connecter au serveur OpenVPN avec uniquement un nom d'utilisateur et un mot de passe. Je ne peux pas comprendre comment faire la même chose dans Ubuntu. Il semble qu'une sorte de certificat soit requis.

Une idée de comment s'authentifier avec un serveur OpenVPN avec seulement un nom d'utilisateur et un mot de passe?

kbuilds
la source

Réponses:

5

Vous pouvez vous authentifier en utilisant un nom d'utilisateur / mot de passe parfaitement sans un serveur / certificat CA. Cependant, je recommande fortement de le configurer pour le vérifier avec votre certificat CA afin de prévenir les attaques Man-in-the-Middle.

Sans aucune vérification de serveur, n'importe qui peut usurper l'identité de votre serveur OpenVPN et accepter simplement votre nom d'utilisateur / mot de passe. Résultats:

  • L'attaquant peut intercepter tout le trafic. Comme vous ne vérifiez pas le serveur auquel vous vous connectez, n'importe qui peut prétendre être votre serveur dans un réseau public (ou réseau privé contrôlé par l'attaquant).
  • L'attaquant connaît votre combinaison nom d'utilisateur / mot de passe. Très très mauvais si vous réutilisez également le même mot de passe pour d'autres choses.

Dans Network Manager, cela fonctionne très bien sans CA Cert comme indiqué ci-dessous, mais veuillez ne pas l'utiliser comme ça! Si vous n'utilisez aucun serveur / certificat CA sous Windows, vous êtes vraiment vulnérable aux attaques ci-dessus.

entrez la description de l'image ici

gertvdijk
la source
Cela ne fonctionne pas sur Ubuntu 16.04. Le bouton «Enregistrer» est désactivé jusqu'à ce que vous sélectionniez un certificat
leo
1
@leo Oh, c'est une très bonne nouvelle. Cela évite alors un autre cas de configurations non sécurisées! :-)
gertvdijk
3

J'ai trouvé la réponse ici: http://openvpn.net/index.php/open-source/documentation/howto.html#auth

N'oubliez pas, vous devez toujours avoir un certificat de serveur

Utiliser l'authentification par nom d'utilisateur / mot de passe comme seule forme d'authentification client

Par défaut, l'utilisation d'auth-user-pass-verify ou d'un plug-in de vérification du nom d'utilisateur / mot de passe sur le serveur active la double authentification, ce qui nécessite que l'authentification par certificat client et l'authentification par nom d'utilisateur / mot de passe réussissent pour que le client soit authentifié.

Bien qu'il soit déconseillé du point de vue de la sécurité, il est également possible de désactiver l'utilisation des certificats clients et de forcer l'authentification par nom d'utilisateur / mot de passe uniquement. Sur le serveur:

client-cert-not-required De telles configurations devraient généralement également définir:

username-as-common-name qui indiquera au serveur d'utiliser le nom d'utilisateur à des fins d'indexation comme il utiliserait le nom commun d'un client qui s'authentifiait via un certificat client.

Notez que client-cert-not-required n'éliminera pas la nécessité d'un certificat de serveur, donc un client se connectant à un serveur qui utilise client-cert-not-required peut supprimer le cert et les directives clés du fichier de configuration client, mais pas la directive ca, car il est nécessaire que le client vérifie le certificat du serveur.

ruX
la source