300000 wrote
Client and server must be the same version
They are the same.
I don't change tls-ciphersuites on the client, only on the server.
Therefore, it remains unclear to me why the server allows connecting with a set of ciphers (albeit a stronger one) but not indicated in the list of allowed ones.
If you set up, say, nginx and set it a tls encryption set, then during auto-negotiation with the client, one of the server ciphers (the same as the client one) will be selected, depending on the priority specified on the server. If the client does not support the set of ciphers specified on the server, then the client will simply be refused connection.
OpenVPN gives priority to the client. Those, the client dictates the conditions to the server and, theoretically (and practically), can lower the encryption level by specifying it in its configuration.
port 443
proto tcp
dev tun
sndbuf 0
rcvbuf 0
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA256
cipher AES-128-CBC
data-ciphers AES-128-GCM:AES-128-CBC
tls-cipher TLS-DHE-RSA-WITH-AES-128-GCM-SHA256
tls-crypt ta.key 0
topology subnet
server yyy.yyy.yyy.yyy 255.255.255.0
push "route zzz.zzz.zzz.zzz 255.255.255.0"
ifconfig-pool-persist ipp.txt
keepalive 10 120
user nobody
group nogroup
persist-key
persist-tun
verb 3
crl-verify crl.pem
status /dev/null
log-append /dev/null
tcp-nodelay
client
dev tun
windows-driver wintun
proto tcp
sndbuf 0
rcvbuf 0
remote xxx.xxx.xxx.xxx 443
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
auth-nocache
auth SHA256
cipher AES-128-CBC
data-ciphers AES-128-GCM:AES-128-CBC
verb 3
TLS1
TLS_AES_256_GCM-SHA384
port 443
proto tcp
dev tun
sndbuf 0
rcvbuf 0
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA256
cipher AES-128-CBC
data-ciphers AES-128-GCM:AES-128-CBC
tls-ciphersuites
TLS_AES_128_GCM-SHA256
tls-cipher TLS-DHE-RSA-WITH-AES-128-GCM-SHA256
tls-crypt ta.key 0
topology subnet
server yyy.yyy.yyy.yyy 255.255.255.0
push "route zzz.zzz.zzz.zzz 255.255.255.0"
ifconfig-pool-persist ipp.txt
keepalive 10 120
user nobody
group nogroup
persist-key
persist-tun
verb 3
crl-verify crl.pem
status /dev/null
log-append /dev/null
tcp-nodelay
client
dev tun
windows-driver wintun
proto tcp
sndbuf 0
rcvbuf 0
remote xxx.xxx.xxx.xxx 443
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
auth-nocache
auth SHA256
cipher AES-128-CBC
data-ciphers AES-128-GCM:AES-128-CBC
verb 3
TLS2
TLS_AES_256_GCM-SHA384
port 443
proto tcp
dev tun
sndbuf 0
rcvbuf 0
ca ca.crt
cert server.crt
key server.key
dh dh.pem
auth SHA256
cipher AES-128-CBC
data-ciphers AES-128-GCM:AES-128-CBC
tls-ciphersuites
TLS_CHACHA20_POLY1305_SHA256
tls-cipher TLS-DHE-RSA-WITH-AES-128-GCM-SHA256
tls-crypt ta.key 0
topology subnet
server yyy.yyy.yyy.yyy 255.255.255.0
push "route zzz.zzz.zzz.zzz 255.255.255.0"
ifconfig-pool-persist ipp.txt
keepalive 10 120
user nobody
group nogroup
persist-key
persist-tun
verb 3
crl-verify crl.pem
status /dev/null
log-append /dev/null
tcp-nodelay
client
dev tun
windows-driver wintun
proto tcp
sndbuf 0
rcvbuf 0
remote xxx.xxx.xxx.xxx 443
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
auth-nocache
auth SHA256
cipher AES-128-CBC
data-ciphers AES-128-GCM:AES-128-CBC
tls-ciphersuites
TLS_AES_128_GCM-SHA256
verb 3
TLS3
TLS_AES_128_GCM-SHA256