O servidor SSH não pode ser conectado quando a VPN está ativada

9

Recentemente, descobri que quando minha estação de trabalho se conecta por meio de uma conexão VPN, seu servidor SSH não pode ser conectado a partir de um site remoto. Tenho certeza de que é um problema de roteamento porque o cliente VPN altera o gateway padrão para seu ponto (servidor VPN) da conexão ppp.

Existe uma solução para fazer o servidor SSH e o cliente VPN felizes?

btw0
fonte

Respostas:

2

Quando você usa um VPN geralmente, a rede VPN assume toda a interface, de modo que você só pode ser roteado de algum lugar da rede VPN, e não da Internet em geral. A maioria das pessoas resolve esse problema executando uma vm (caixa virtual etc) e conectando-se à vpn nessa máquina virtual para que ela não atinja completamente a conexão principal na máquina real.

Stu
fonte
Você pode fazer alguns truques de roteamento para rotear dados da VPN de uma maneira e outros dados da outra maneira (gateways diferentes, etc.), mas é realmente muito mais fácil usar o VirtualBox. :-)
Stu
Obrigado pela sugestão! Gostaria de saber qual truque de roteamento pode conseguir isso.
btw0
Estou usando o VM stu, mas o que não consigo fazer é avaliar a VPN no host, pois preciso fazer o trabalho de desenvolvimento.
Jamie Hutber
ah, eu estava sugerindo o contrário. Use o vpn exclusivamente no vm e isso deixa a máquina da reak para acessar a Internet aberta e gratuita.
Stu
2

Antes de se aventurar nas configurações de rede, verifique se o servidor ssh em questão escuta na interface vpn. Talvez esteja vinculado a uma interface específica no seu servidor.

Exemplo de netstat -asaída:

 Proto Recv-Q Send-Q Local Address    Foreign Address   State      
 tcp        0      0 *:ssh            *:*               LISTEN      

O servidor ssh neste exemplo escuta em todas as interfaces (indicado pelo asterisco *:ssh. Se em seu sistema houver um endereço de host, o servidor ssh estará vinculado a interfaces específicas.

Edite /etc/ssh/sshd_confige defina ListenAddress 0.0.0.0para ajustar isso, se necessário.

Se o sshd já ouvir as interfaces corretas, sinta-se à vontade para entrar na masmorra de roteamento :-)

ktf
fonte
1
Para que endereço deve ListenAddressser definido? O IP do servidor na interface local? O IP do roteador? Algo mais?
Psychonaut
0

Você está falando de tunelamento dividido. Se você estiver familiarizado o suficiente com a ferramenta ROUTE.EXE da linha de comando , poderá examinar as rotas colocadas pelo cliente VPN e removê-las. Em seguida, você adicionaria novamente um para permitir que apenas o tráfego da LAN corporativa flua através do gateway VPN.

Especificamente, você usaria

route print

... para obter uma lista das entradas de roteamento. Sem ver a saída, parece que seu cliente VPN teria colocado uma entrada padrão (0.0.0.0) com o gateway sendo o gateway de ponto a ponto da VPN. Você pode usar

route delete 10.*

... por exemplo, para excluir todas as entradas que apontam para uma rede 10.xxx.

Você pode então usar

route add 10.0.0.0 mask 255.0.0.0 10.0.99.99

... onde o primeiro endereço (10.0.0.0 255.0.0.0) é sua rede corporativa e máscara, e o segundo endereço é o gateway remoto.

Você precisaria executá-lo toda vez que se conectar, portanto, você pode criá-lo.

Nota lateral: uma alternativa seria convencer sua empresa a configurar sua VPN para usar o tunelamento dividido; um argumento para isso é a largura de banda reduzida e (IANAL) a responsabilidade reduzida pelo tráfego da Web não corporativo que flui através de sua rede.

Geoff
fonte