SSH é terminado ao iniciar o Ovpn Client

1

Eu tenho um VPS rodando o Ubuntu 16.04.1 ao qual me conecto com o SSH. Eu gostaria de executar um cliente OpenVPN no VPS para que o tráfego da Internet seja roteado através da VPN, mas ainda permitir que eu me conecte ao servidor via SSH. Quando eu inicio o OpenVPN, minha sessão SSH é desconectada e não consigo mais me conectar ao meu VPS. Como posso configurar o VPS para permitir que conexões SSH (portas 22) de entrada sejam abertas no IP real do VPS (84.XxX), mas ainda direcionar o tráfego de saída (como de um navegador da Web no VPS) através da VPN?

O serviço OpenVPN que uso é o PrivateInternetAccess, e um exemplo do arquivo config.ovpn é:

proto udp
tun-mtu 1500
fragment 1300
mssfix
cipher AES-256-CBC
remote amsterdam.perfect-privacy.com 149
remote amsterdam.perfect-privacy.com 1151
remote amsterdam.perfect-privacy.com 1150
remote amsterdam.perfect-privacy.com 1149
remote amsterdam.perfect-privacy.com 151
remote amsterdam.perfect-privacy.com 150
remote amsterdam.perfect-privacy.asia 151
remote amsterdam.perfect-privacy.asia 150
remote amsterdam.perfect-privacy.org 1149
remote amsterdam.perfect-privacy.info 1150
remote amsterdam.perfect-privacy.asia 149

auth SHA512
auth-user-pass password.txt
client
comp-lzo
dev tun
#float
hand-window 120
inactive 604800
mute-replay-warnings
nobind
ns-cert-type server
persist-key
persist-remote-ip
persist-tun
ping 5
ping-restart 120
redirect-gateway def1
remote-random
reneg-sec 3600
resolv-retry 60
route-delay 2
route-method exe
script-security 2
tls-cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384:TLS-DHE-RSA-WITH-AES-256-CBC-SHA256:TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA:TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-CAMELLIA-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
tls-timeout 5
verb 4
tun-ipv6

ca ca.crt
cert Amsterdam_cl.crt
key Amsterdam_cl.key
tls-auth Amsterdam_ta.key 1
down /etc/openvpn/update-resolv-conf
up /etc/openvpn/update-resolv-conf
crl-verify ca.crl

ip addr do VPS:

    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              inet6 addr: ::1/128 Scope:Host
              UP LOOPBACK RUNNING  MTU:65536  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

    venet0    Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
              inet addr:127.0.0.2  P-t-P:127.0.0.2  Bcast:0.0.0.0  Mask:255.255.255.255
              UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1
              RX packets:27052 errors:0 dropped:0 overruns:0 frame:0
              TX packets:30619 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:3363556 (3.3 MB)  TX bytes:4903075 (4.9 MB)

    venet0:0  Link encap:UNSPEC  HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
              inet addr:84.200.105.209  P-t-P:84.X.x.X  
              Bcast:84.X.x.X  Mask:255.255.255.255
              UP BROADCAST POINTOPOINT RUNNING NOARP  MTU:1500  Metric:1

Eu li que isso pode ser feito via Routing, mas eu não tenho muita experiência em Linux e eu não quero travar meus Vps, então eu estou pedindo sua ajuda.

    
por Daniel 08.11.2016 / 20:20

2 respostas

0

Adicione um comando de rota personalizado à sua configuração do cliente openvpn:

route add 84.X.x.X 255.255.255.255     <your real default gw>
    
por 08.11.2016 / 22:57
0

Você provavelmente encontrará sua resposta aqui: link

Seu cliente OpenVPN altera a rota padrão do seu servidor. Quando você tenta entrar em SSH, o handshake TCP não é concluído, pois o servidor tenta responder através do túnel OpenVPN. O pacote pode se perder em algum momento, ou na melhor das hipóteses chegaria de outro IP.

    
por 08.11.2016 / 23:03