tomcat (tcServer) na porta 80 no linux… boa ideia?

2

É uma boa idéia rodar o tomcat (tcServer da fonte Spring) diretamente na porta 80 (ou 443) como root

Pode-se usar mod_proxy ou mod_jk do apache2 para contornar o problema. Eu também vi solução baseada em iptables (isto é, iptables -t nat -A PREROUTING -p tcp --dportar 80 -j REDIRECT - para portas 8080)

Há algum prós / contras que se deve saber quando se trata de uso de produção?

    
por geoaxis 05.02.2010 / 08:17

2 respostas

3

você definitivamente não quer rodar seu aplicativo da web como root! nunca, nunca!

torná-lo o mais seguro possível, - será hackeado, é apenas uma questão de tempo (e popularidade :))

execute o tomcat como outro usuário ('tomcat' ou algo semelhante) que só pode ler / gravar (se necessário) em seu próprio diretório.

quanto ao redirecionamento de porta, eu recomendo usar o iptables, assim como você mostrou.

alternativamente, você pode fazer o redirecionamento do apache conforme descrito aqui .

se você tem um site maior e usa loadbalancers de hardware, você pode mapear a porta 80 no VIP para a porta 8080 em seus servidores da web, caso em que você não precisa fazer nada no lado do servidor, e tbh, é a melhor abordagem.

    
por 05.02.2010 / 08:35
1

Como a pulegium afirmou, nunca execute o seu servidor web (o que o Tomcat fará se você usar o conector HTTP como root! Em vez disso, desative HTTp para o Tomcat (consulte server.xml) e use o conector AJP / 1.3 com o apache2 mod_proxy_ajp (ou lighttpd que também oferece um proxy AJP). Essa seria a configuração pré-definida para um ambiente de produção. Além disso, oferece-lhe os benefícios do mod_proxy_balancer e de todas as outras coisas do apache (ou lighttpd).

    
por 05.02.2010 / 11:50