Eu estou nos sistemas Debian e Ubuntu, e gosto da mentalidade de "configuração separada disponível para sites vs. sites ativados para cada site".
Então ...
Eu tenho um arquivo conf httpd para cada vhost.
<VirtualHost *:80>
ServerName example.com
ServerAlias www.example.com
RewriteEngine on
RewriteRule ^/(.*)$ https://www.example.com/$1 [R,L]
</VirtualHost>
<VirtualHost 10.0.2.15:443>
ServerName example.com
ServerAlias www.example.com
ServerAdmin [email protected]
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown
CustomLog ${APACHE_LOG_DIR}/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
DocumentRoot /var/www-example.com
<directory /var/www-example.com>
Options All
AllowOverride All
Require all granted
</directory>
ErrorLog ${APACHE_LOG_DIR}/ssl-example.com-error.log
CustomLog ${APACHE_LOG_DIR}/ssl-example.com-access.log combined
</VirtualHost>
Não se esqueça de criar seus diretórios para o DocumentRoot
.
Em seguida, pare o servidor web apache, verifique se o firewall está aceitando conexões com a porta 443 e invoque o certbot
ou letsencrypt
. Eu não confio nele para modificar minha configuração do apache, então eu uso a opção certonly
. Percorrer um para cada domínio -
letsencrypt certonly -d example.com -d www.example.com
Em seguida, vincule as configurações do apache a sites-enabled
ou use a2ensite
ou, no entanto, você está gerenciando configurações ativas, teste a configuração do apache com apache2ctl -t
e, se todos os relatórios estiverem bem, reinicie o apache.