Tomcat atendendo requisições na porta 80

O Tomcat atende requisições na porta TCP/8080 mas sem precisar alterar uma linha de configuração sequer desta aplicação é possível fazê-lo atender as mesmas requisições na porta 80. Eu me deparei com esta necessidade alguns dias atrás ao implementar um servidor DNS interno na rede de um cliente e para solucionar – embora houvesse várias alternativas eu optei pela mais simples. Uma pequena linha com o iptables desviando as requisições da porta TCP/80 para TCP/8080.
Na ocasião eu descobri que ao acessar um determinado servidor Tomcat pela rede externa ele levava diretamente a página esperada, entretanto, ao tentar acessar o mesmo servidor pela rede interna eu era direcionado a página de teste de configuração do Apache.

Depois de perder algum tempo tentando entender o motivo eu descobri que havia uma regra no firewall da empresa que fazia este redirecionamento. Como a solução de firewall era fechada e não tinha acesso, a solução foi implementar diretamente no servidor Tomcat, uma regra similar àquela, que ficou assim:
iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 8080

Antes de usar esta regra ao acessar pelo browser o endereço http://meuservidortomcat eu via a página de teste do Apache, que atende na porta TCP/80 que é a padrão quando não especificada na URL. E para acessar a página fornecida pelo Tomcat eu tinha que especificar a porta do Tomcat na URL: http://meuservidortomcat:8080

Após esta regra sempre que chega uma requisição na porta 80 do servidor ele automaticamente redireciona para a porta 8080 e que vai diretamente para o Tomcat sem precisar mexer em mais nada.

Lembrando que se este comando for digitado em um terminal de comandos, ele só terá efeito até o próximo reboot/shutdown do servidor. Para que ele tenha efeito permanente você deve certificar-se de que ele será executado durante o boot, o que pode ser feito incluindo esta linha no final do arquivo /etc/rc.local de seu servidor Tomcat.

2 ideias sobre “Tomcat atendendo requisições na porta 80”

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *