Rotear ssh para gateway específico

Rotear ssh para gateway específico

Gostaria de saber como posso forçar o uso da porta 22 para a interface que desejo, qualquer interface, Wi-Fi ou Ethernet.
Por exemplo, rota *:22 para Wi-Fi.
Verifiquei routeo comando, mas parece que não é possível.
Qualquer ideia?
Comandos BSD ou Linux são bem-vindos.

Responder1

O roteamento regular funciona apenas em termos de endereços IP e não se preocupa com quais dados (incluindo TCP ou UDP) são transferidos.


Pelo menos no Linux, você poderia usarroteamento de políticapor esta:

  1. Adicione uma regra de firewall para marcar determinados pacotes:

    iptables -t mangle -A PREROUTING -p tcp --dport 22 -j MARK --set-mark 1
    
  2. Crie uma nova tabela de roteamento com o gateway desejado:

    ip route add default via 192.168.0.1 dev wlan0 table 42
    
  3. Adicione uma regra de política para usar a nova tabela de roteamento para pacotes marcados:

    ip rule add fwmark 1 table 42
    

No Windows, você precisará de uma abordagem diferente, por exemplo, informar aoprogramapara usar uma interface específica. Alguns programas possuem uma opção de "endereço de ligação", como o ssh -b:

ssh -b 192.168.0.42 root@myserver

(Não sei se funciona bem com váriosinterfaces, no entanto. Tenho a sensação de que talvez não.)


Finalmente, você pode adicionar uma rota de host (via Wi-Fi) para um servidor específico.

Isso poderia ser estendido para permitir o tunelamento SSH através desse servidor para todas as suas outras conexões.

informação relacionada