A resposta curta é NÃO, você não.
A resposta mais longa é que / etc / hosts está lá para ajudar o resolvedor de pilha de rede. O resolvedor é a parte da pilha IP (TCP / IP v4 e v6) que é responsável por converter nomes amigáveis, como mybigserver, em um endereço IP, como 172.16.0.1.
Em sua postagem, você está nos mostrando um script e o script está executando comandos IPTable.
O script está usando a cadeia PREROUTING para fazer o NAT, mas você afirma na sua pergunta que não consegue acessar o servidor "GlassFish" através do navegador .....
- Qual navegador? Navegador no mesmo host Linux ou em outro computador conectado ao mesmo switch que o ETH0?
Se a resposta para # 1 for outro host conectado ao mesmo switch que o seu Linux ETH0, então o problema é que você precisa mudar suas regras NAT para usar a cadeia POSTROUTING. A razão é que você quer NAT a conexão de saída. O que você tem configuração é PAT (Port Address Translation).
Se esta é sua configuração [Seu navegador] ------ [switch de rede] ----- [ETH0 Linux ETH1] ----- {Internet pública]
Em seguida, substitua essas linhas
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080
iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 8181
com:
iptables -A POSTROUTING -t nat -o eth1
Se isso resolver seu problema, você poderá ajustar essa regra de POSTROUTING para usar um intervalo de portas e / ou um IP ETH1 específico se for multihomed.