OpenVPN 2.4 ⇒ OpenVPN 2.3: đź’Ł — Authenticate/Decrypt packet error: packet HMAC authentication failed

Och Menno. Jetzt sitze ich hier schon wieder vier Stunden, google mir ’nen Wolf, weil irgendeine Fickschweinkackoption offensichtlich zwischen OpenVPN 2.3 und OpenVPN 2.4 anders ist. Wird Zeit, daĂź September kommt und die Corona-Impfung mich dahinrafft, ich habe echt keine Lust mehr …

Server:

root@nobby:/etc/openvpn# openvpn --version
OpenVPN 2.3.10 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [EPOLL] [PKCS11] [MH] [IPv6] built on Jan  9 2019
library versions: OpenSSL 1.0.2g  1 Mar 2016, LZO 2.08
Originally developed by James Yonan
Copyright (C) 2002-2010 OpenVPN Technologies, Inc. 
Compile time defines: enable_crypto=yes enable_crypto_ofb_cfb=yes enable_debug=yes enable_def_auth=yes enable_dependency_tracking=no enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown enable_fast_install=yes enable_fragment=yes enable_http_proxy=yes enable_iproute2=yes enable_libtool_lock=yes enable_lzo=yes enable_lzo_stub=no enable_maintainer_mode=no enable_management=yes enable_multi=yes enable_multihome=yes enable_pam_dlopen=no enable_password_save=yes enable_pedantic=no enable_pf=yes enable_pkcs11=yes enable_plugin_auth_pam=yes enable_plugin_down_root=yes enable_plugins=yes enable_port_share=yes enable_selinux=no enable_server=yes enable_shared=yes enable_shared_with_static_runtimes=no enable_silent_rules=no enable_small=no enable_socks=yes enable_ssl=yes enable_static=yes enable_strict=no enable_strict_options=no enable_systemd=yes enable_win32_dll=yes enable_x509_alt_username=yes with_crypto_library=openssl with_gnu_ld=yes with_mem_check=no with_plugindir='${prefix}/lib/openvpn' with_sysroot=no
root@nobby:/etc/openvpn# dpkg -l openvpn
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version      Architecture Description
+++-==============-============-============-=================================
ii  openvpn        2.3.10-1ubun amd64        virtual private network daemon

Client:

root@gw-bfe01:/etc/openvpn# openvpn --version
OpenVPN 2.4.7 x86_64-pc-linux-gnu [SSL (OpenSSL)] [LZO] [LZ4] [EPOLL] [PKCS11] [MH/PKTINFO] [AEAD] built on Apr 27 2021
library versions: OpenSSL 1.1.1f  31 Mar 2020, LZO 2.10
Originally developed by James Yonan
Copyright (C) 2002-2018 OpenVPN Inc 
Compile time defines: enable_async_push=no enable_comp_stub=no enable_crypto=yes enable_crypto_ofb_cfb=yes enable_debug=yes enable_def_auth=yes enable_dependency_tracking=no enable_dlopen=unknown enable_dlopen_self=unknown enable_dlopen_self_static=unknown enable_fast_install=needless enable_fragment=yes enable_iproute2=yes enable_libtool_lock=yes enable_lz4=yes enable_lzo=yes enable_maintainer_mode=no enable_management=yes enable_multihome=yes enable_pam_dlopen=no enable_pedantic=no enable_pf=yes enable_pkcs11=yes enable_plugin_auth_pam=yes enable_plugin_down_root=yes enable_plugins=yes enable_port_share=yes enable_selinux=no enable_server=yes enable_shared=yes enable_shared_with_static_runtimes=no enable_silent_rules=no enable_small=no enable_static=yes enable_strict=no enable_strict_options=no enable_systemd=yes enable_werror=no enable_win32_dll=yes enable_x509_alt_username=yes with_aix_soname=aix with_crypto_library=openssl with_gnu_ld=yes with_mem_check=no with_sysroot=no
root@gw-bfe01:/etc/openvpn# dpkg -l openvpn
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name           Version                Architecture Description
+++-==============-======================-============-========================>
ii  openvpn        2.4.7-1ubuntu2.20.04.2 amd64        virtual private network >

Config:

root@gw-bfe01:/etc/openvpn# diff -u us.conf bfe01.conf 
--- us.conf	2021-08-20 23:31:14.064071559 +0000
+++ bfe01.conf	2021-08-20 23:31:11.000000000 +0000
@@ -1,16 +1,15 @@
 cipher AES-128-CBC
 auth SHA512
 script-security 2
-dev Ous
+dev Obfe01
 dev-type tun
-ifconfig 192.168.78.13 192.168.78.14
+ifconfig 192.168.78.14 192.168.78.13
 secret bfe01.key
+local 666.444.222.138
 port 11702
-remote 666.444.222.138
-up us.up
+up bfe01.up
 up-restart
 up-delay
-down us.up
 ping 15
 ping-restart 45
 ping-timer-rem

Sprich: die Config ist vom Server auf den Client kopiert worden und die ĂĽblichen Verdächtigen (local/remote, ifconfig, dev, up/down) wurden angepaĂźt. Selbst den Key habe ich auf dem Server (2.3.10) neu erzeugt, just in case, und auf den Client scp’t. Dennoch, alles, was geschieht, ist:

Aug 21 02:41:00 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:41:10 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:43:55 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:44:05 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:44:15 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:44:25 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:44:35 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:49:40 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:49:50 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:50:00 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:50:11 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:50:22 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:55:25 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:55:35 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:55:45 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:55:55 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 02:56:05 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 03:01:10 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 03:01:20 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 03:01:30 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 03:01:40 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed
Aug 21 03:01:51 nobby ovpn-bfe01[27143]: Authenticate/Decrypt packet error: packet HMAC authentication failed

What The Firetruck geht da bitte ab‽ Warum klappt das, was ich seit gefühlt 20 Jahren mache – minimalistisches PSK-OpenVPN-Setup – jetzt mit OpenVPN 2.4 nicht mehr gegen einen OpenVPN-2.3-Server? Seriöslich jetzt?

Key, Cipher & Algo sind identisch, mehr kann ich bei PSK AFAICS nicht einstellen.

Was mit Holz. Angespitzte Pflöcke oder so …

Update: Wie sich herausstellte, waren tatsächlich unterschiedliche Keys verwendet worden. Oh, wie ich es hasse, wenn es letztendlich doch ein Layer-8-Problem war …