web-dev-qa-db-fra.com

Possible? OpenVPN Server nécessitant une connexion de certificat et basée sur le mot de passe (via le micrologiciel de routeur de tomate)

J'utilise la construction de tomates de Shibby (version 64k NVRAM) sur mon routeur ASUS N66U afin d'exécuter un serveur OpenVPN.

Je suis curieux s'il est possible de configurer ce serveur OpenVPN pour exiger à la fois un certificat ET Un nom d'utilisateur/mot de passe avant qu'un utilisateur ne soit autorisé à accéder.

J'ai remarqué qu'il y a une entrée "mot de passe de défi" lors de la remplacement des détails du certificat, mais tout le monde dit de le laisser vide "ou autre"; Je ne sais pas pourquoi et je ne trouve pas d'explication. De plus, j'ai google de google d'un groupe et j'ai remarqué que des personnes parlent d'un module PAM pour OpenVPN afin d'authentifier via le nom d'utilisateur/mot de passe, mais que est apparu être un/ou une option; En d'autres termes, je peux forcer l'authentification via nom d'utilisateur/mot de passe [~ # ~ ~] ou [~ # ~] Certificat. Je veux exiger les deux.

Est-ce possible? Si c'est le cas, comment?

8
Eric

La fonctionnalité OpenVPN que vous recherchez, ce qui permettra au serveur d'authentifier les clients basés sur à la fois leur certificat et une offre d'identification, est auth-user-pass-verify. Cette fonctionnalité permet au serveur de transmettre le nom d'utilisateur/mot de passe fourni par l'utilisateur distant à un script qui effectue l'authentification. À ce stade, vous pouvez valider les informations d'identification contre tout ce que vous voulez-- PAM, rayon, LDAP, signaux de fumée, etc.

Je ne sais rien des firmwares "tomates", donc je ne vais même pas tenter de vous donner une étape étape par étape ici. J'ai fait une recherche rapide et je suppose que vous pouvez utiliser l'option OpenVPN "Configuration personnalisée" pour inclure un auth-user-pass-verify référence. Vous aurez besoin d'un script pour effectuer l'authentification.

Faites des recherches et je soupçonne que vous trouverez des références spécifiques "tomates".

4
Evan Anderson

auth-User-Pass-Verify est la bonne chose à dire. De plus, vous pouvez forcer le nom d'utilisateur de l'utilisateur authentifiant doit être le CN certifié que vous pouvez également forcer OpenVPN à effectuer une seule connexion chaque cert à la fois.

De cette façon, un "Mimic" doit avoir le bon utilisateur par rapport au CRTC CN et à la bonne passe et il doit se connecter à la fois le véritable propriétaire prenant

De plus, vous pouvez penser à un IDS, selon lequel vous choisissez, vous pouvez même le réduire là-bas, comme autorisé des gammes IP externes, des temps de connexion et ainsi de suite.

Tout certificateur exposé doit être révoqué immédiatement. Le serveur de signature doit être hors clé de transfert de net par USB - alors vous avez un accès sécurisé bien serré.

et non, vous ne devriez pas passer par mot de passe un certificat.

  1. Facile à bruteforce.
  2. Vous ne pouvez pas verrouiller un utilisateur (CERT PASS est hors ligne uniquement).
  3. Les gens perdent leurs mots de passe tout le temps vous obligeant à révoquer et à recréer un cert à chaque fois - gros risque d'avoir beaucoup de certs là où vous oubliez parfois le révocation.

Mais si vous voulez vraiment que vous puissiez utiliser l'utilisateur authentifiant et le mot de passe certifié, il n'y aura pas de repli ou de quelque chose.

PREMIER OPENVPN utilisera le mot de passe CERT pour déchiffrer la clé privée pour établir une connexion: puis l'utilisateur authentifiant frappe à Serveridly - si les informations d'identification sont erronées.

Toutefois, si un attaquant obtient les informations d'identification régulières, vous avez déjà des problèmes et que des chances sont élevées, il a également eu le mot de passe du certificat.

Donc, je ne vois pas de véritables avantages ici, juste beaucoup d'inconvénients et d'un mauvais sentiment de plus de sécurité.

2
whatever

J'ai suivi ce tutoriel (avec Tomatousb shibby 1.28 sur mon ASUS N66U): http://www.dd-wrt.com/wiki/index.php/openvpn Cela peut vous aider beaucoup.

0
AndyZ