Secure Socket Layer(SSL) é um protocolo muito utilizado pela internet para trafegar dados importantes como senhas e números de cartões de crédito etc… Os dados trafegados pelo protocolo SSL são criptografados e teoricamente impossibilitando o acesso aos dados.
O SSL é identificado pelo: https://site.com.br
Além do protocolo SSL habilitado o ideal é ter configurado no servidor um certificado SSL tem a função de certificar que o site que você está acessando é realmente ele mesmo. Este processo é realizado por empresas que emitem certificados SSL. Elas fazem a validação do domínio e, dependendo do tipo de certificado, também da entidade detentora do domínio.
Para configurar o SSL em um servidor Linux utilizando a distribuição Ubuntu siga os passos:
Instalando pacotes necessários:
sudo apt-get install openssl ssl-cert
Habilitando módulo SSL
sudo a2enmod ssl
Crie o certificado:
sudo openssl req $@ -new -x509 -days 365 -nodes -out /etc/apache2/apache.pem -keyout /etc/apache2/apache.pem
sudo chmod 600 /etc/apache2/apache.pem
Modifique o vhost
ServerAdmin webmaster@localhost
CustomLog /var/log/apache2/access.log combined
SSLEngine on
ServerSignature On
SSLCertificateFile /etc/apache2/apache.pem
Reinicie o Apache
sudo service apache2 restart
Seu protocolo já está funcionando, porém seu servidor ainda não possui um certificado.
Para configurar o certificado você precisará gerar uma chave:
openssl genrsa -des3 -out dominio.key 2048
Gerando arquivo CRT do seu servidor:
openssl req -new -key dominio.key -out dominio.crt
Preencha os itens que serão pedidos sendo que o item: Nome comum (eg, YOUR name) corresponde ao seu dominio exemplo: dicastech.net.
Depois de geradado você precisará comprar um SSL que eu recomendo pela qualidade e valor a empresa Godaddy:
Depois de assinado você precisará enviar sua chave(CRT) para o Godaddy que após algumas horas enviará de volta um outra chave que você terá que baixar e configurar no seu servidor.
ServerName dominio.com
DocumentRoot /var/www/dominio
LimitRequestLine 81900
SSLEngine on
SSLCertificateFile /etc/apache2/certificado_do_goddady.crt
SSLCertificateKeyFile /etc/apache2/su_akey_gerada_no_primeiro_passo.key
SSLCertificateChainFile /etc/apache2/bundle_gerada_pelo_godaddy.crt
SSLCACertificateFile /etc/apache2/certificado_do_goddady.crt
Utilizando um certiticado não será necessário utilizar a linha:
/etc/apache2/apache.pem
Não pedir senha da key:
openssl rsa -in re.key -out re.key.novo