Questo tutorial descrive come impostare siti Web SSL Secure sul Webserver Apache.
Nota: questo tutorial è scritto e testato per Debian 9, 10 e 11 e Ubuntu 20.04.
Requisiti.
Per seguire questa guida, dovrai avere quanto segue:
Installazione di Apache
Se non hai Apache installato, dobbiamo installarlo. Immettere i comandi:
Sudo Apt Aggiornamento
SUDO APT Installa Apache2 OpenSSL
Una volta installato il server Apache, avviare il servizio e assicurarsi che tutto funzioni correttamente.
Abilitazione MOD_SSL e MOD_REWRITE MODULES.
Il prossimo passo è abilitare i moduli MOD_SSL e MOD_REWRITE. Per fare ciò, utilizziamo lo script A2enmod, che ci consente di abilitare e disabilitare i moduli nella configurazione Apache.
Usa i comandi come mostrato di seguito:
sudo a2enmod ssl
sudo a2enmod riscrive
Abilitare .Htaccess Override
Il passaggio successivo è modificare la configurazione Apache e aggiungere una voce per consentire alle impostazioni predefinite di Apache di sovrascrivere. Le impostazioni prevalenti sono eseguite in .file htaccess situato nella directory di root apache.
sudo vim/etc/apache2/apache2.conf
Passare alla fine del file e aggiungere la seguente voce:
Consentire tutto
Salva e chiudi il file.
Generazione del certificato SSL
Esistono vari modi per ottenere un certificato SSL gratuito. Strumenti come i generatori di certbot e SSL sono ottime opzioni.
Tuttavia, in questa guida, creeremo un certificato autofirmato utilizzando l'utilità OpenSSL.
Crea una directory nella directory di configurazione Apache come:
sudo mkdir/etc/apache2/certs
Navigare nella directory creata sopra.
CD/ETC/APACHE2/CERTS
Esegui l'utilità OpenSSL per generare il tuo certificato autofirmato come previsto nel comando seguente:
Nota: è possibile fornire qualsiasi informazione in questo processo tranne il nome comune. Assicurarsi di fornire un indirizzo IP o un nome host.
Una volta che il processo è stato completato correttamente, dovresti avere l'Apache.CRT e Apache.Chiave nella directory di certi.
Aggiunta di CERT alla configurazione Apache
Aggiungi il certificato modificando il file di configurazione del sito Web predefinito Apache.
sudo vim/etc/apache2/siti abilitati/000-default.conf
Aggiungi un blocco host virtuale sulla porta 443 come mostrato:
ServerAdmin Webmaster@localhost
DocumentRoot/var/www/html
Errorlog $ apache_log_dir/errore.tronco d'albero
CustomLog $ apache_log_dir/access.Registro combinato
Sslengine on
Sslcertificatefile/etc/apache2/cert/apache.Crt
SSLCERTIFATEKEKEFILE/ETC/APACHE2/CERTS/APACHE.chiave
Reindirizzamento a HTTPS.
Nella maggior parte dei casi, ti consigliamo di reindirizzare gli utenti da nessun endpoint SSL a SSL. Lo fai aggiungendo una regola di riscrittura sugli host virtuali della porta 80.
Aggiungi la voce come:
Riscrivere ingegnere
Riswitarecond %https != on
Riswriterule ^/?(.*) https: //%server_name/$ 1 [r = 301, l]
Nota: assicurarsi che i blocchi sopra siano sotto l'host virtuale della porta 80.
Riavvia e accedi ad Apache
Una volta configurato tutto sopra, riavvia il servizio Apache e accedi al tuo sito Web tramite LocalHost.
https: // 127.0.0.1
È possibile visualizzare le informazioni sul certificato facendo clic sull'icona di blocco nel browser.
Conclusione
In questa guida, abbiamo trattato come abilitare e configurare SSL sul server Web Apache.