É necessário usar o servidor nginx para usar com o tomcat

3

É necessário instalar o servidor nginx antes de usar o apache tomcat. Podemos usar apenas o apache tomcat? Existe alguma vantagem em relação a qual escolha é melhor e por quê? Estou usando o fedora 22 para implantar meu aplicativo no tomcat 8 para o aplicativo java

    
por xrcwrn 29.08.2015 / 12:11

3 respostas

3

Você só pode usar o tomcat se quiser. No entanto, tenha cuidado!

O Tomcat é um contêiner de servlet. Ele usa o JSSE para implementar o TLS e, por padrão, expõe os serviços de gerenciamento na rede. Ele também teve um grande número de vulnerabilidades de segurança (veja link por exemplo). É um pouco lento e extremamente complexo.

A prática de segurança que recomendo aos meus clientes é executar algum outro servidor da Web na frente dele, a menos que eles estejam usando autenticação de certificado de cliente. O outro servidor da Web pode atuar como um proxy de armazenamento em cache e um proxy de validação (quase, mas não muito, um firewall de aplicativo da Web), pode descarregar o SSL, permite usar o openssl em vez do JSSE e, às vezes, pode até fazer balanceamento de carga. Estas são todas boas características.

A arquitetura do Tomcat também apresenta problemas. Por exemplo, ele só pode usar portas privilegiadas executando como root (muito ruim) ou usando o mecanismo authbind (que não suporta IPv6 antes do tomcat 8). Ele precisa de acesso contínuo às suas chaves TLS e ao arquivo de configuração que contém a senha usada para criptografá-las, o que é um pequeno risco de segurança que cada grande servidor da Web mitiga.

O que você usa como proxy não importa realmente; qualquer daemon HTTP capaz deve ser suficiente. Eu também recomendaria um firewall de aplicativo da Web para filtrar solicitações.

    
por 29.08.2015 / 12:57
2

É possível usar o Tomcat sozinho, mas é necessário evitar alguns erros óbvios. Mais importante

  • Execute seu Tomcat em uma conta de usuário separada com direitos mínimos.
  • Quando não está sendo executado como root, o Tomcat não poderá vincular a porta privilegiada que é um bom recurso de segurança, não é um problema. Existem muitas soluções para isso, consulte aqui instância.
  • Não se esqueça de atualizar o Tomcat e o Java periodicamente.
  • Bloqueie todas as portas possíveis com firewall, especialmente todos os tipos de "gerenciamento remoto". Só deixe que você realmente precise e use.
  • Pelo menos, tente obter a proteção do SELinux para o seu Tomcat. Pode levar algum trabalho para configurar, mas vale a pena.

Nem pense em

  • Executando o Tomcat como root.
  • Deixando qualquer uma das interfaces de gerenciamento da web do Tomcat. Desinstale imediatamente. Eles nunca ofereceram nada que não pudéssemos fazer na linha de comando ainda mais rápido.
  • Correndo sem firewall.

Eu não vejo o Tomcat como complexo para configurar e manter, mas isso é talvez porque eu estou usando por muitos anos. Falando sobre problemas de segurança, todos os servidores os têm periodicamente e os problemas descobertos são corrigidos periodicamente. Apenas google.

    
por 29.08.2015 / 15:48
-2

Não é necessário adicionar o nginx antes do Tomcat.

    
por 27.06.2018 / 15:31

Tags