Páginas

quarta-feira, 21 de março de 2012

Criptografia SSL/TSL no Apache2


Introdução
 A criptografia elimina algumas falhas de segurança como MITM (Man In The Middle) e problemas na integridade.

Configurando o Apache2
 Após a instalação do servidor Apache2, execute o comando:

 sudo a2enmod ssl 

 É necessário um certificado para a criptografica do canal. Se necessário, pode-se utilizar do OpenSSL para gerar um certificado uma KeyStore como segue:

 openssl req -new -x509 -nodes -out server.crt -keyout server.key 

 O ideal é utilizar-se de um certificado provido por uma autoridade certificadora, eliminando assim o risco de Phishing para as entidades utilizadoras do serviço provido via SSL/TLS.

 Após adquirido o certificado, é necessário configura uma nova instância do Apache2. Para fins de organização, as configurações ficam dentro da pasta sites-available, dentro da pasta onde o apache está instalado. A instalação já fornece uma configuração padrão chamada default-ssl. Efetue uma cópia desse arquivo para um novo arquivo que será a nova instância, no nosso caso sample-ssl:

 sudo cp default-ssl sample-ssl 


 Após copiada a configuração do servidor para instância que será utilizada, é necessário configurar com os certificados gerados anteriormente. Para tanto, abra em modo edição o arquivo sample-ssl encontre as linhas a serguir e defina com o endereço dos certificados:
 SSLCertificateFile /etc/apache2/ssl/server.crt 
 SSLCertificateKeyFile /etc/apache2/ssl/server.key 

 Agora basta incluir sample-ssl como um site selecionado e recarregar o Apache. Para tanto efetue os seguintes comandos:

 sudo a2ensite sample-ssl 
 sudo /etc/init.d/apache2 reload 


 Agora se efetuar uma chamada para https://localhost aparecerá a página default do Apache (Its Works). 

 Se o certificado não for autenticado por uma autoridade verificadora, então vai aparecer uma mensagem perguntado se você deseja continuar. Selecione a opção para prosseguir.
 Então o acesso será feito, mas ainda pode manter um ícone mencionando que o certificado não é válido.

 Para que esta mensagem não seja mais exibida, adquira um certificado autenticado por uma autoridade verificadora. Se for uma comunicação entre serviços, é interessante criar um mecanismo para autenticação mútua, assim as  interação entre as aplicações irá acontecer de forma segura.

Nenhum comentário:

Postar um comentário