SSH via IP secundário

SSH via IP secundário

ssh

ssh

Olá pessoal,

Meu servidor dedicado possui alguns endereços IP atribuídos a contas específicas. E posso fazer SSH para a conta via IP secundário. Mas uma vez dentro, o IP é sempre o IP primário (tentei com o comando "curl wtfismyip.com/text")

Eu tenho alguns scripts de shell que precisam ser executados em diferentes instâncias de ssh e eles devem usar endereços IP diferentes (contas diferentes) para saída.

Alguém tem alguma sugestão, solução para este assunto? Gostaria muito de receber sua ajuda.

Obrigado

Responder1

O IP do seu servidor que sites externos (por exemplo, whatismyip, ...) veem é o IP que o seu servidor obtém da sua tabela de roteamento.

$ ip route
default via x.x.x.x dev ethX ...
10.0.0.0/16 dev ethY ...
....

Se o site que você está tentando conectar tiver seu IP em uma sub-rede especificada na tabela de roteamento, tanto o IP de origem (seu) quanto a interface de saída serão retirados desta rota específica. Por exemplo: o IP de whatismyip.net é 10.0.0.1, quando você envia tráfego para ele, seu servidor usará a interface ethY e o IP ethY.

Caso contrário, se o site não corresponder a nenhuma sub-rede, a rota padrão será usada. No exemplo, o servidor enviará tráfego através da interface ethX com o IP ethX como origem.

No seu contexto, parece que sua rota padrão é via eth0.

Para usar outra interface/IP:

  1. você pode especificar para algum comando, a interface de saída e então seu IP de origem, por exemplo.

    ping -I ethY whatever.net
    ping -I eth0.Y whatever.net
    curl --interface eth0.Y wtfismyip.com/text
    
  2. ou você pode adicionar uma nova rota para MY_REMOTE_IP, que imporá o uso de uma determinada interface ou IP de origem ao se comunicar com ele. No exemplo acima, MY_SECOND_IP é o IP da interface ethY

    $ ip route add MY_REMOTE_IP dev ethY src MY_SECOND_IP
    $ ip route add MY_REMOTE_IP dev eth0.Y src MY_SECOND_IP
    
  3. Caso contrário, em alguns comandos, você pode impor o IP de origem, por exemplo.

    ssh -b MY_SECOND_IP user@MY_REMOTE_IP
    

informação relacionada