O Apache2 torna isso muito fácil com as ferramentas adicionais fornecidas com ele. Se você tiver o pacote apache2-common instalado, poderá ativar o módulo mod_ssl
(necessário para HTTPS) em um comando fácil:
sudo a2enmod ssl
O Apache2 também inclui um comando para ajudá-lo a gerar facilmente certificados auto-assinados chamados apache2-ssl-certificate
. Gere seu certificado para o servidor como mostrado abaixo ou use certificados comprados por uma CA raiz confiável (Verisign, Entrust, Thawte, etc).
sudo apache2-ssl-certificate -days 365
Lembre-se de que os usuários receberão este aviso infame ao visualizar seu site se você usar um certificado autoassinado:
Useas4instruçõesaseguirnaconfiguraçãodoApache(/etc/apache2/sites-available/default
)ounadiretivaVirtualHost(abaixodeDocumentRoot
)paraativaromecanismoSSLparaessesiteespecífico:
SSLEngineonSSLOptions+StrictRequireSSLCertificateFile/etc/apache2/ssl/certs/apache.crtSSLCertificateKeyFile/etc/apache2/apache-ssl/apache.pem
OSSLOptions+StrictRequire
forçaacomunicaçãoSSLapenasparaessesiteespecífico.OSSLCertificateFile
eSSLCertificateKeyFile
especificamoslocaisparaseucertificadoSSLesuachavecorrespondente.
Verifiqueseestamosouvindonaporta443modificando/etc/apache2/ports.conf
paraincluiradiretivaListen
:
echo"Listen 443" >> /etc/apache2/ports.conf
Finalmente, você deve reiniciar o Apache2 para iniciar as alterações:
sudo /etc/init.d/apache2 restart
Diversão adicional :
Configure solicitações HTTP na porta 80 para redirecionar para a porta 443 com mod_rewrite
.
Nota :
Alguns destes dados são de experiências passadas com sistemas Debian / Ubuntu, para as instruções mais precisas existe um guia para o 10.04 em o site do Ubuntu .