In questo tutorial, ti mostreremo come installare Apache con Let's Encrypt SSL su Ubuntu 20.04 LTS. Per chi non lo sapesse, Let's Encrypt è un'autorità di certificazione che fornisce gratuitamente Certificati SSL per siti Web. Tutti i certificati SSL forniti da Let's Encrypt possono essere utilizzati per scopi produttivi/commerciali senza alcun costo o commissione Questa guida ti spiegherà come installare il server web Apache, installare Certbot, generare un certificato SSL con Certbot e creazione di una configurazione SSL aggiuntiva per ottenere l'A+ dai laboratori SSL di test SSL.
Questo articolo presuppone che tu abbia almeno una conoscenza di base di Linux, sappia come usare la shell e, soprattutto, che ospiti il tuo sito sul tuo VPS. L'installazione è abbastanza semplice e presuppone che tu sono in esecuzione nell'account root, in caso contrario potrebbe essere necessario aggiungere 'sudo
' ai comandi per ottenere i privilegi di root. Ti mostrerò passo passo l'installazione di Apache con SSL gratuito su Ubuntu 20.04 (Focal Fossa). Puoi seguire le stesse istruzioni per Ubuntu 18.04, 16.04 e qualsiasi altra distribuzione basata su Debian come Linux Mint.
Prerequisiti
- Un server che esegue uno dei seguenti sistemi operativi:Ubuntu 20.04, 18.04, 16.04 e qualsiasi altra distribuzione basata su Debian come Linux Mint.
- Si consiglia di utilizzare una nuova installazione del sistema operativo per prevenire potenziali problemi.
- Accesso SSH al server (o semplicemente apri Terminal se sei su un desktop).
- Un
non-root sudo user
o accedere all'root user
. Ti consigliamo di agire comenon-root sudo user
, tuttavia, poiché puoi danneggiare il tuo sistema se non stai attento quando agisci come root.
Installa Apache con Let's Encrypt SSL su Ubuntu 20.04 LTS Focal Fossa
Passaggio 1. Innanzitutto, assicurati che tutti i pacchetti di sistema siano aggiornati eseguendo il seguente apt
comandi nel terminale.
sudo apt update sudo apt upgrade
Passaggio 2. Installazione di Apache su Ubuntu 20.04.
Per impostazione predefinita, Apache è disponibile sul repository di base di Ubuntu 20.04. Ora installiamo il server web Apache sul sistema Ubuntu eseguendo il comando seguente:
sudo apt install apache2 apache2-utils
Prima di avviare le configurazioni, assicurati che i servizi Apache siano in esecuzione sul tuo sistema. Esegui il comando seguente per verificare lo stato dei servizi Apache:
sudo systemctl status apache2 sudo systemctl start apache2 sudo systemctl enable apache2
Passaggio 3. Configura Firewall.
Consenti l'accesso alla porta 80 sul firewall eseguendo il comando indicato di seguito:
sudo ufw allow 80 sudo ufw allow 443 sudo ufw enable
Passaggio 4. Configura l'host virtuale Apache.
In primo luogo, crea una directory principale per contenere i file del tuo sito web:
sudo mkdir -p /var/www/html/your-domain.com/
Quindi, cambia la proprietà e il gruppo della directory:
sudo chown -R www-data:www-data /var/www/html/your-domain.com/
Creiamo un host virtuale Apache per servire la versione HTTP del tuo sito web:
sudo nano /etc/apache2/sites-available/your-domain.com.conf
Aggiungi la seguente riga:
<VirtualHost *:80> ServerName your-domain.com ServerAlias www.your-domain.com ServerAdmin [email protected] DocumentRoot /var/www/html/your-domain.com ErrorLog ${APACHE_LOG_DIR}/your-domain.com_error.log CustomLog ${APACHE_LOG_DIR}/your-domain.com_access.log combined <Directory /var/www/html/your-domain.com> Options FollowSymlinks AllowOverride All Require all granted </Directory> </VirtualHost>
Salva e chiudi, quindi riavvia il server web Apache in modo che avvengano le modifiche:
sudo a2ensite your-domain.com.conf sudo a2enmod ssl rewrite sudo systemctl restart apache2
Passaggio 5. Proteggi Apache con Let's Encrypt SSL Free Certificate.
Prima di installare Certbot, abilitiamo il repository dell'universo sul tuo sistema:
sudo apt install software-properties-common sudo add-apt-repository universe sudo apt update
Successivamente, installa Certbot per Apache sul tuo sistema Ubuntu:
sudo apt install certbot python3-certbot-apache
Infine, usa il comando Certbot per creare un certificato Let's Encrypt e configura Apache per utilizzare il certificato:
sudo certbot --apache
Risultato:
------------------------------------------------------------------------------- Congratulations! You have successfully enabled https://your-domain.com and https://www.your-domain.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=your-domain.com https://www.ssllabs.com/ssltest/analyze.html?d=www.your-domain.com ------------------------------------------------------------------------------- IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/idroot.us/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/your-domain.com/privkey.pem Your cert will expire on 2021-10-05. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Passaggio 5. Rinnovo automatico Certbot SSL.
I certificati Let's Encrypt hanno una validità di 90 giorni e devi assicurarti che vengano rinnovati in tempo. Il processo di rinnovo è ora automatizzato e grazie al systemd
servizio fornito dal cliente Certbot. Per verificare che questo processo di rinnovo funzioni correttamente, puoi eseguire:
sudo certbot renew --dry-run
Risultato:
Saving debug log to /var/log/letsencrypt/letsencrypt.log - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Processing /etc/letsencrypt/renewal/your-domain.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Account registered. Simulating renewal of an existing certificate for your-domain.com and www.your-domain.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations, all simulated renewals succeeded: /etc/letsencrypt/live/your-domain.com/fullchain.pem (success) - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Passaggio 7. Verifica SSL.
Ora puoi andare su ssllabs.com/ssltest/ ed eseguire un test SSL sul tuo dominio:
Congratulazioni! Hai installato con successo Apache con un certificato SSL gratuito. Grazie per aver utilizzato questo tutorial per l'installazione del server web Apache Let's Encrypt SSL su Ubuntu 20.04 LTS Focal Fossa system. Per ulteriore aiuto o informazioni utili , ti consigliamo di controllare il sito Web ufficiale di Apache.