Como meu servidor doméstico pode aceitar e responder a conexões da Internet quando o cliente OpenVPN está sendo executado?

2

Eu tenho um servidor doméstico sem cabeçalho rodando o Ubuntu Server 12.04. Um site de terceiros (para o qual estou inscrito) envia periodicamente comandos para um daemon no meu servidor doméstico que, por sua vez, responde ao site de terceiros. Com endereçamento IP estático, cliente DNS dinâmico e encaminhamento de porta no modem, isso está funcionando como esperado; Tudo está bem!

No entanto, agora quero usar o cliente OpenVPN no meu servidor para encapsular / rotear o tráfego do servidor por meio de um servidor VPN de terceiros. Instalei e configurei com sucesso o cliente OpenVPN no meu servidor, mas descobri que enquanto o OpenVPN está sendo executado, os comandos do site de terceiros não estão sendo recebidos pelo meu servidor e / ou meu servidor não está reconhecendo o comando de volta para o terceiro local na rede Internet. Se eu parar o OpenVPN no meu servidor, ele funcionará novamente.

Eu suspeito que o problema é que o site de terceiros envia os comandos para o meu servidor (via modem e encaminhamento de porta), mas a resposta está sendo roteada pela VPN, em vez de voltar pela eth0, de onde veio.

O diagrama a seguir fornece uma visão geral básica da minha rede doméstica.

Nãotenhocertezadequaisinformaçõesadicionaissãonecessárias,masesperoqueoseguintesejasuficientepararesolveroproblema.

SaídadoifconfigcomVPNativa

$ifconfigeth0Linkencap:EthernetHWaddr00:07:e9:08:02:17inetaddr:192.168.1.1Bcast:192.168.1.255Mask:255.255.255.0inet6addr:fe80::207:e9ff:fe08:217/64Scope:LinkUPBROADCASTRUNNINGMULTICASTMTU:1500Metric:1RXpackets:155309errors:0dropped:0overruns:0frame:0TXpackets:141790errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:1000RXbytes:211724221(211.7MB)TXbytes:20656517(20.6MB)loLinkencap:LocalLoopbackinetaddr:127.0.0.1Mask:255.0.0.0inet6addr:::1/128Scope:HostUPLOOPBACKRUNNINGMTU:16436Metric:1RXpackets:43errors:0dropped:0overruns:0frame:0TXpackets:43errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:0RXbytes:2368(2.3KB)TXbytes:2368(2.3KB)tun0Linkencap:UNSPECHWaddr00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00inetaddr:10.167.1.6P-t-P:10.167.1.5Mask:255.255.255.255UPPOINTOPOINTRUNNINGNOARPMULTICASTMTU:1500Metric:1RXpackets:0errors:0dropped:0overruns:0frame:0TXpackets:2errors:0dropped:0overruns:0carrier:0collisions:0txqueuelen:100RXbytes:0(0.0B)TXbytes:264(264.0B)

SaídaderoutesemoOpenVPNemexecução

$routeKernelIProutingtableDestinationGatewayGenmaskFlagsMetricRefUseIfacedefaultmodem0.0.0.0UG10000eth0192.168.1.0*255.255.255.0U000eth0

SaídaderoutecomoOpenVPNemexecução

$routeKernelIProutingtableDestinationGatewayGenmaskFlagsMetricRefUseIfacedefault10.111.1.5128.0.0.0UG000tun0defaultmodem0.0.0.0UG10000eth010.111.1.110.111.1.5255.255.255.255UGH000tun010.111.1.5*255.255.255.255UH000tun0us-west.privatemodem255.255.255.255UGH000eth0128.0.0.010.111.1.5128.0.0.0UG000tun0192.168.1.0*255.255.255.0U000eth0

Encontreioutrosfórunscomproblemasdesomsemelhantes,masnãoconseguiaplicarasinformaçõespararesolvermeuproblemaespecífico.

link
link

Update: Fui informado para investigar o roteamento baseado em política que me levou a uma pergunta semelhante ( O acesso SSH remoto não funciona quando o cliente OpenVPN está habilitado no DD-WRT ), mas até agora não há resposta.

    
por x-x 11.04.2015 / 08:58

1 resposta

0

Depois que a VPN se conectar, execute o seguinte

ip rule add from 192.168.1.1 table 10
ip route add default via 192.168.1.254 table 10
    
por 12.04.2015 / 05:58