Debian Stretch 및 openvpn 2.4.0을 실행하는 openvpn 서버를 Debian Bullseye 및 openvpn 2.5.7을 실행하는 서버로 교체하려고 합니다. 불행히도 이전 OS에서 openvpn 2.3을 실행하는 이전 클라이언트는 새 서버에 연결할 수 없습니다. 지금은 이러한 클라이언트를 쉽게 업그레이드할 수 없습니다. 고객의 의견(검토)
Socket Buffers: R=[163840->131072] S=[163840->131072]
UDPv4 link local: [undef]
UDPv4 link remote: [AF_INET]xx.xx.xx.xx:1194
TLS: Initial packet from [AF_INET]xx.xx.xx.xx:1194, sid=xxxxxx xxxxxx
그런 다음 잠시 중단된 다음 보고합니다.
TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity)
TLS handshake failed
구글에 검색해봤는데 찾기가 힘들더라구요, 데이터 채널 비밀번호에 대한 답변은 찾았는데 아직 데이터 채널이 구축되지 않는 것 같아요.
답변1
따라서 성공적인 연결을 얻으려면 두 가지 문제를 해결해야 합니다.
첫 번째는 기존 클라이언트는 tls 1.0만 지원하지만 Bullseye의 openvpn은 기본적으로 이를 거부한다는 것입니다(기본값은 openssl 라이브러리의 구성과 관련이 있다고 생각합니다). tls-version-min 1.0
TLS 1.0 지원은 서버 구성을 추가하여 다시 활성화할 수 있습니다 .
두 번째는 말한 대로https://blog.zs64.net/2021/01/enabling-backwards-compatibility-in-openvpn/데이터 채널 비밀번호입니다. 기본적으로 openvpn은 2.4 이전의 openvpn 클라이언트에 대한 대체 비밀번호를 더 이상 지원하지 않습니다. 거기에 명시된 것보다 더 큰 수리가 필요하다는 것을 알았습니다. 설정 외에도 data-cipher-fallback
설정도 해야 했습니다.data-ciphers
추가 서버 측 설정의 최종 세트는 다음과 같습니다.
data-ciphers AES-256-GCM:AES-128-GCM:AES-256-CBC
data-ciphers-fallback AES-256-CBC
tls-version-min 1.0
내가 설정한 클라이언트에서.
cipher AES-256-CBC