Vamos configurar um servidor Apache para servir conteúdo do diretório /var/www/testing.fuzzalab.pt no domínio testing.fuzzalab.pt, com suporte a ligações seguras (SSL). O Apache será configurado para redirecionar automaticamente todas as ligações HTTP para HTTPS.
Cria ou edita o ficheiro de configuração no diretório /etc/apache2/sites-available/. Por exemplo:
sudo nano /etc/apache2/sites-available/testing.fuzzalab.pt.conf
Adiciona o seguinte conteúdo ao ficheiro:
# Configuração do VirtualHost para testing.fuzzalab.pt
<VirtualHost *:80>
# Domínio principal
ServerName testing.fuzzalab.pt
# Redirecionar todas as ligações HTTP para HTTPS
Redirect permanent / https://testing.fuzzalab.pt/
</VirtualHost>
<VirtualHost *:443>
# Domínio principal
ServerName testing.fuzzalab.pt
# Localização dos ficheiros do site
DocumentRoot /var/www/testing.fuzzalab.pt
# Permissões para o diretório
<Directory /var/www/testing.fuzzalab.pt>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# Configuração de SSL
SSLEngine on
SSLCertificateFile /etc/ssl/certs/testing.fuzzalab.pt.crt
SSLCertificateKeyFile /etc/ssl/private/testing.fuzzalab.pt.key
SSLCertificateChainFile /etc/ssl/certs/testing.fuzzalab.pt.chain.pem
# Protocolos e cifras seguras
SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
SSLHonorCipherOrder on
SSLCompression off
# Logs de acesso e erro
ErrorLog ${APACHE_LOG_DIR}/testing.fuzzalab.pt_error.log
CustomLog ${APACHE_LOG_DIR}/testing.fuzzalab.pt_access.log combined
</VirtualHost>
Redirecionamento HTTP para HTTPS :
DocumentRoot :
Permissões do Diretório :
Configuração SSL :
Logs :
Certifica-te de que o diretório /var/www/testing.fuzzalab.pt existe e tem as permissões corretas:
sudo mkdir -p /var/www/testing.fuzzalab.pt
sudo chown -R www-data:www-data /var/www/testing.fuzzalab.pt
sudo chmod -R 755 /var/www/testing.fuzzalab.pt
Para ativar o SSL, precisas de um certificado válido. Podes usar o Let's Encrypt para obter um certificado gratuito:
sudo apt install certbot python3-certbot-apache
sudo certbot --apache -d testing.fuzzalab.pt
O Certbot irá gerar automaticamente os certificados e atualizar a configuração do Apache.
Se preferires configurar manualmente, coloca os ficheiros do certificado nos caminhos especificados na configuração (/etc/ssl/certs/ e /etc/ssl/private/).
Ativa o site no Apache:
sudo a2ensite testing.fuzzalab.pt.conf
Reinicia o Apache para aplicar as alterações:
sudo systemctl restart apache2
Verifica se a configuração está correta:
sudo apachectl configtest
Com esta configuração, o teu servidor estará pronto para servir conteúdo de forma segura no domínio testing.fuzzalab.pt.
Add a comment