Tomcat + SSL: HOW-TO

Neste trabalho será apresentado o Secure Socket Layer (SSL), um protocolo que permite aos clientes (normalmente os navegadores Web) e servidores comunicarem-se sobre uma conexão segura. Posteriormente, será apresentada a instalação e configuração segura, por meio do uso de SSL, da ferramenta livre Tomcat, um servidor de aplicações desenvolvido pela Apache Foundation.

[ Hits: 57.156 ]

Por: Paulo Afonso Parreira Júnior em 23/05/2008


Introdução



O Tomcat é um servidor de aplicações desenvolvido completamente em Java, é distribuído como software livre e foi desenvolvido dentro do conceituado projeto Apache Jakarta. O Tomcat é oficialmente endossado pela Sun Microsystems como a Implementação de Referência para as tecnologias Java Servlet e JavaServer Pages.

Quaisquer informações transmitidas em redes de computadores locais, ou na Internet, estão suscetíveis à intercepção por usuários não autorizados. Algumas informações podem ser sensíveis, como número de cartão de crédito e outras informações pessoais. Para tornar a Internet mais útil para empresas e mais segura para o comércio eletrônico, aplicações devem proteger as informações de seus usuários, utilizando encriptação, autenticação e protocolos seguros de comunicação.

SSL, ou Secure Socket Layer, é uma tecnologia a qual permite que os navegadores web (browers) e os servidores web se comuniquem por meio de uma conexão segura. Isto significa que os dados enviados de um lado da conexão são criptografados, transmitidos e então descriptografados pelo outro lado da conexão. Este processo garante que ambos, tanto o servidor quanto o browser criptografem os dados antes de enviá-los através da conexão.

Outro aspecto importante do protocolo SSL é a Autenticação. Durante a primeira tentativa de se comunicar com um servidor web por uma conexão segura, o navegador receberá deste servidor uma credencial, sob a forma de um "certificado", provando que o serviço oferecido, ou seja, a página web requisitada é aquela que o browser realmente está esperando.

Neste trabalho, será discutida a configuração do servidor Tomcat para utilizar o protocolo SSL, garantindo uma comunicação segura entre cliente-servidor. O Capítulo 4 descreve, em linhas gerais, o protocolo SSL - Secure Socket Layer. O Capítulo 3 apresenta o JSSE - Java Secure Socket Extension, um framework para comunicação segura sobre a plataforma Java. O Capítulo 4 apresenta a instalação do servidor Tomcat no sistema operacional Linux (Ubuntu 7.04). O capítulo 5 descreve como configurar o Tomcat para utilizar o protocolo SSL. E, finalmente, no capítulo 6, são apresentadas algumas considerações finais.

Na Tabela 1-1, encontram-se relacionadas as ferramentas que serão utilizadas no decorrer deste texto e seus respectivos links para download.

Ferramenta Versão Link para download
Tomcat 6.0.13 http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.13/bin/
JSSE 1.0.2 http://java.sun.com/products/jsse/


Tabela 1-1 - Ferramentas utilizadas

    Próxima página

Páginas do artigo
   1. Introdução
   2. SSL - Secure Socket Layer
   3. JSSE - Java Secure Socket Extension
   4. Instalando o Servidor Tomcat
   5. Configuração Tomcat + SSL
   6. Considerações finais
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Firefox 2 e seu recurso de proteção contra Web Phishing

Security Hacks: Linux & BSD

Hardening em sistemas operacionais Linux (Completo)

O que é e como funciona um ataque de força bruta

Ajustes finos no Bind (servidor DNS)

  
Comentários
[1] Comentário enviado por foguinho.peruca em 24/05/2008 - 13:26h

Olá!

Excelente artigo, muito bem detalhado e explicado. vou usar ele de base para alguns projetos que eu estou executando.

[]s
Jeff

[2] Comentário enviado por marcosmiras em 26/05/2008 - 09:36h

Cara se não sabe o quanto eu pastei para fazer isso algum tempo atrás... Legal você ter postado esse artigo, pode ajudar muito nego aí... hehe
[]'s

[3] Comentário enviado por pauloafpjunior em 27/05/2008 - 18:04h

Olá pessoal.

Espero que o tutorial seja uma boa contribuição para a comunidade de SL. Agradeço pelos comentários.

Abraços,
Paulo Júnior.

[4] Comentário enviado por luizrobertofj em 11/08/2008 - 04:25h

Que bom seria se todo artigo seguisse seu padrão.
Parabéns!

[5] Comentário enviado por pauloafpjunior em 11/08/2008 - 07:34h

Olá Luiz.

Obrigado pelo comentário. Que bom que tu gostou do artigo.

Até mais,
Paulo Júnior.

[6] Comentário enviado por luizvieira em 12/03/2010 - 14:23h

Olá Paulo, algumas dúvidas se puder ajudar-me:
- tenho duas aplicações rodando num server, uma em java é o que valida o login e senha e gera um token, enviando a URL para a outra aplicação via navegador, mas comos dados do usuário e o token gerado visível. O que quero saber é se com o SSL esse URL seria criptofgeafada ao ser enviada pelo navegado.
- o tomcat faria a decodificação dessa URL criptografada de forma que seja acessível para minha segunda aplicação?

Estou com essas dúvdia prq um cliente não quer o método de token, então pensei na possibilidade de usar o token + SSL pelo tomcat.
Se puder ajudar, agradeço :-)

E parabéns pelo artigo, muito bem escrito!
[ ]'s
Luiz

[7] Comentário enviado por pauloafpjunior em 12/03/2010 - 14:38h

Olá Luiz.

Obrigado.

Utilizando SSL, todo o tráfego de dados entre cliente e servidor será criptografado. Você pode colocar esse token em uma estrutura de dados, serializá-la e depois enviar pela rede, pois a conexão estará segura. Na outra ponta você receberá a mesma estrutura de dados decriptografada e pronta para ser utilizada.

Att,
Paulo Junior





Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts