web-dev-qa-db-fra.com

Échec de l’authentification OpenVPN HMAC, peu importe ce que je fais?

J'ai un problème avec mon serveur openvpn, qui exécute Debian Wheezy x64, et mon client, qui exécute Ubuntu 14.10 x64. Il semble que peu importe les configurations que j'essaie, j'obtiens cette erreur, encore et encore, au moins deux fois par minute:

Mon Mar  9 22:14:10 2015 Authenticate/Decrypt packet error: packet HMAC authentication failed
Mon Mar  9 22:14:10 2015 TLS Error: incoming packet authentication failed from [AF_INET] x.x.x.(clientip)

J'utilise cette configuration sur le serveur:

local x.x.x.x
port xxxx
proto udp
dev tun
ca /etc/openvpn/.certs/ca.crt
cert /etc/openvpn/.certs/[email protected]
key /etc/openvpn/.certs/[email protected]
dh /etc/openvpn/.certs/dh.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
client-config-dir clients
client-to-client
keepalive 7 80
tls-auth /etc/openvpn/.certs/ta.key 0
cipher AES-128-CBC
comp-lzo
max-clients 3
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
log openvpn.log
verb 3
tun-mtu 1500
auth SHA256

Et sur le client, la configuration est gérée par le gestionnaire de réseau, mais j'ai la direction correcte de la clé, le certificat de tls correct, un MTU correspondant, la directive auth SHA256, et il est configuré pour vérifier le nom distinctif, etc. quelque chose me manque?

J'ai essayé différents codes d’authentification, en régénérant la clé tls (avec --gen-key --secret ta.key), et l’erreur persiste. Le VPN fonctionne bien, même si ma vitesse est légèrement inférieure à ce qu’elle devrait être. Toute aide serait appréciée.

13
Chev_603

En fait, la solution dans mon cas était d’ajouter ces directives au server.conf:

mode server
tls-server

Et que pour la configuration du client:

 tls-client

Et si vous utilisez une clé intégrée tls via <tls-auth>, ajoutez

key-direction 1

Si vous utilisez le gestionnaire de réseau, assurez-vous que la case "authentification attendue" est cochée.

13
Chev_603

L'ajout de lignes d'authentification et de chiffrement correspondant à celles du fichier server.conf au fichier .conf du client devrait suffire. Ou, si vous utilisez Network Manager pour le client, cliquez sur Authentification par chiffrement et HMAC, puis ajoutez les paramètres dans les lignes de chiffrement et d'authentification du serveur.conf. Ça devrait marcher.

3
SinaOwolabi