Atualmente, tenho uma caixa NAS em execução na porta 80. Para acessar o NAS de fora, mapeei a porta 8080 para a porta 80 no NAS da seguinte maneira:
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j DNAT --to-destination 10.32.25.2:80
Isso está funcionando como um encanto. No entanto, isso só funcionará se eu estiver acessando o site de fora da rede (no trabalho, em uma casa diferente, etc.). Então, quando digito mywebsite.com:8080
, o IPTables faz o trabalho corretamente e tudo está funcionando bem.
Agora, o problema que tenho é: como redirecionar essa porta de dentro da rede? Meu nome de domínio mywebsite.com
aponta para o meu roteador (meu servidor linux) por dentro (10.32.25.1), mas quero redirecionar a porta 8080 para a porta 80 em 10.32.25.2 por dentro.
Qualquer pista?
Editar # 1
Tentando ajudar a facilitar essa pergunta, montei este diagrama. Atualize se estiver incorreto ou deturpar o que você está procurando.
iptables
| .---------------.
.-,( ),-. v port 80 |
.-( )-. port 8080________ | |
( internet )------------>[_...__...°]------------->| NAS |
'-( ).-' 10.32.25.2 ^ 10.32.25.1 | |
'-.( ).-' | | |
| '---------------'
|
|
__ _
[__]|=|
/::/|_|
10.32.25.1:8080
redirecionar para 10.32.25.2:80
. Minha regra acima está funcionando de fora, mas não de dentro da minha rede. Portanto, se estou no escritório, posso acessar meu NAS em website.com:8080 e é totalmente transparente. Na minha casa, website.com:8080 aponta para 10.32.25.1 porque é meu roteador, também conhecido como servidor Linux. Quero redirecionar a porta 8080 para o NAS também na porta 80, mas novamente, de forma transparente.
eth0 10.32.25.2
, para que possamos capaz de iptables escrita usar com base na interface de entrada