I am experiencing a quite annoying problem with OpenVPN (both openssl and mbetls version) running in server, TCP, tunneled mode.
It does not work until I restart the process after router startup. To be more precise, the clients can connect perfectly to the server, but it seems that the data format cannot be understood between client and servers. I get the same problem (invalid key format, etc...) like when you run comp-lzo server with client configured without comp-lzo.
It is enough to just restart the openvpn process to solve the problem, until the next router restart.
This is my server configuration:
ca /etc/openvpn/ca.crt cert /etc/openvpn/my-server.crt comp-lzo adaptive dev tun dh /etc/openvpn/dh2048.pem keepalive 10 120 key /etc/openvpn/my-server.key log /tmp/openvpn.log port 443 proto tcp push "redirect-gateway def1" push "dhcp-option DNS 192.168.182.1" server 10.8.0.0 255.255.255.0 verb 3
and this is one of my client configuration
dev tun proto tcp http-proxy 220.127.116.11 80 log /var/log/menion_client.log verb 3 mssfix client remote-cert-tls server remote x.x.x.x 443 comp-lzo redirect-gateway def1 script-security 2 up /etc/openvpn/update-resolv-conf down /etc/openvpn/update-resolv-conf ca /etc/openvpn/ca.crt cert /etc/openvpn/my-server.crt key /etc/openvpn/client.crt