iptables port foward para inverter o proxy

1

Estou em um vserver do ubuntu e quero encaminhar clientes para um host que esteja conectado via ssh, e tenha configurado o putty para encaminhar remotamente a porta 1802 para a porta.

O que eu quero realizar: Eu quero que meu vserver atue como um proxy para uma determinada porta para um aplicativo. Eu quero ser capaz de se conectar ao meu vserver usando essa porta, mas ser redirecionado para o proxy reverso (host):

Cliente A < == x.x.x.x: 1802 == > vserver (encaminhamento de porta) < == proxy reverso / conexão ssh == > Host

O que eu já tenho: O host já tem um encaminhamento de porta remoto usando putty e uma conexão ssh com o meu vserver. Tudo o que estou perdendo é o encaminhamento de porta, para que o cliente que se conecta ao vserver usando as portas especificadas seja DNAT'ed para o host.

Isso é o que eu tentei até agora: tentei adicionar listen 1802; na configuração do meu servidor nginx, mas isso não funcionou (acho que faltava a proxy_pass config) . Então eu tentei usar o iptables:

iptables -t nat -A PREROUTING -i -p udp --dport 1802 -j DNAT --to-destination 127.0.0.1:1802
iptables -t nat -A PREROUTING -i -p tcp --dport 1802 -j DNAT --to-destination 127.0.0.1:1802
iptables-save

Mas não tenho certeza sobre o parâmetro --to-destination . Além disso, omiti o valor -i , para que todas as interfaces sejam usadas para a entrada do iptables.

    
por Johannes 27.02.2018 / 15:47

1 resposta

0

No meu caso, foi necessário adicionar GatewayPorts yes a /etc/ssh/sshd_config . Reiniciar o ssh não foi suficiente, tive que reiniciar o vserver - então funcionou. Eu nem precisei de nenhuma entrada especial do iptables, porque todas as portas já estavam no ACCEPT.

    
por 02.03.2018 / 15:40