Tengo un cliente Linux que estoy intentando conectar a mi servidor OpenVPN externo autohospedado. Llevo un tiempo golpeándome la cabeza contra esto.
Los clientes de Windows se conectan bien y funcionan correctamente (todo el tráfico enrutado, accesible a través de la subred, etc.) mientras intentan conectarse con un cliente de Linux (probé el servidor ubuntu 16.04 y un puñado de acopladores de cliente openvpn) produce lo que parece ser una conexión exitosa al servidor seguido de:
TUN/TAP device tun0 opened
TUN/TAP TX queue length set to 100
do_ifconfig, tt->did_ifconfig_ipv6_setup=0
/usr/bin/ip link set dev tun0 up mtu 1500
/usr/bin/ip addr add dev tun0 10.8.0.101/26 broadcast 10.8.0.127
/usr/bin/ip route add 0.0.0.0/1 via 10.8.0.1
Error: Nexthop has invalid gateway.
ERROR: Linux route add command failed: external program exited with error status: 2
/usr/bin/ip route add 128.0.0.0/1 via 10.8.0.1
Error: Nexthop has invalid gateway.
ERROR: Linux route add command failed: external program exited with error status: 2
Initialization Sequence Completed
lo que evita que el tráfico pase a través de la VPN. El ifconfig
aspecto es correcto, mientras que (por supuesto) los iptables no se ven del todo bien (probado en un contenedor acoplable):
# ip route
default via 172.17.0.1 dev eth0
10.8.0.64/26 dev tun0 proto kernel scope link src 10.8.0.101
172.17.0.0/16 dev eth0 proto kernel scope link src 172.17.0.7
Mover el cliente ovpn a una computadora con Windows produce una conexión perfecta. Configuré el servidor coneste script de instalacióny agregó IP estáticas manualmente con la ayuda deesta guíaproduciendo una configuración del lado del servidor de:
./servidor.conf
port 42069
proto udp
dev tun
user nobody
group nogroup
persist-key
persist-tun
keepalive 10 120
topology subnet
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "dhcp-option DNS 208.67.222.222"
push "dhcp-option DNS 208.67.220.220"
push "redirect-gateway def1"
crl-verify crl.pem
ca ca.crt
cert server_fWRfyP6vszBv9CaM.crt
key server_fWRfyP6vszBv9CaM.key
tls-auth tls-auth.key 0
dh dh.pem
auth SHA256
cipher AES-128-CBC
tls-server
tls-version-min 1.2
tls-cipher TLS-DHE-RSA-WITH-AES-128-GCM-SHA256
status openvpn.log
verb 3
client-config-dir /etc/openvpn/staticclients
./staticclients/[nombre de cliente]
ifconfig-push 10.8.0.101 255.255.255.192
y una configuración del lado del cliente de:
[nombre del cliente].ovpn
remote *** 42069
client
proto udp
dev tun
resolv-retry infinite
nobind
persist-key
remote-cert-tls server
verify-x509-name server_fWRfyP6vszBv9CaM name
auth SHA256
auth-nocache
cipher AES-128-CBC
tls-client
tls-version-min 1.2
tls-cipher TLS-DHE-RSA-WITH-AES-128-GCM-SHA256
setenv opt block-outside-dns
verb 3
<ca>
-----BEGIN CERTIFICATE-----
...
Cualquier ayuda será apreciada y estoy dispuesto a proporcionar más detalles según sea necesario.
Respuesta1
Cambiar la ./staticclients/[clientname]
subred de 255.255.255.192 (/26) a 255.255.255.0 (/24) resolvió el problema.