Ubuntu no vagrant e iptables

0

Eu tenho uma área de trabalho ubuntu 14.04 em execução em uma VM vagrant (virtualbox).

Estou tentando encaminhar a porta 25 para a porta 2525 e executei os seguintes comandos:

sudo sysctl net.ipv4.ip_forward=1
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 25 -j REDIRECT --to-port 2525
sudo iptables -t nat -A POSTROUTING -j MASQUERADE

O comando:

cat /proc/sys/net/ipv4/ip_forward

retorna 1.

Eu posso abrir uma conexão na porta 2525:

vagrant@vagrant:~$ telnet localhost 2525
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 alfresco.com ESMTP SubEthaSMTP 3.1.6

mas o telnet na porta 25 não funciona:

vagrant@vagrant:~$ telnet localhost 25
Trying ::1...
Trying 127.0.0.1...
telnet: Unable to connect to remote host: Connection refused

Eu também tentei conectar ao ip local da máquina com os mesmos resultados.

telnet 10.0.2.15 2525

está ok, mas

telnet 10.0.2.15 25

retorna o mesmo (conexão recusada).

O comando:

iptables -t nat -L

retorna:

Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         
REDIRECT   tcp  --  anywhere             anywhere             tcp dpt:smtp redir ports 2525
REDIRECT   tcp  --  anywhere             anywhere             tcp dpt:2526 redir ports 2525

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination         
MASQUERADE  all  --  anywhere             anywhere            

Atualizar

Seria o suficiente para mim se alguém pudesse sugerir pelo menos como solucionar esse tipo de problema.

    
por Marco Altieri 26.05.2016 / 13:59

1 resposta

0

Você pode usar socat:

socat TCP-LISTEN:25,su=nobody,fork,reuseaddr TCP-CONNECT:127.0.0.1:2525

Isto diz ao socat para escutar na porta TCP 25 e conectá-lo ao local 2525. Ele é executado como o usuário nobody, para melhor segurança. A opção fork significa que ela renegociará a porta de entrada, para que ela não seja bloqueada.

Isso é baseado no seguinte post: link

    
por DoRe 27.07.2016 / 17:51