Come installare un certificato SSL su un VPS

Vedi come Markdown

Questa guida ti mostra come installare un certificato SSL su un VPS di OVHcloud

Obiettivo

La sicurezza del sito Web è fondamentale per proteggere i dati sensibili degli utenti e migliorare la loro fiducia. Grazie a un certificato SSL (Secure Socket Layer), puoi cifrare gli scambi tra i tuoi utenti e il tuo sito Web, rafforzandone la credibilità. Questa guida ti mostra come utilizzare Let's Encrypt, un servizio automatizzato gratuito.

Questa guida ti mostra come installare un certificato SSL su un VPS OVHcloud.

Informazioni sull’amministrazione dei servizi OVHcloud e su come trovare l’assistenza appropriata

Durante l’utilizzo delle guide OVHcloud, tieni presente le seguenti condizioni:

  • Le istruzioni mirano a fornire il maggior numero possibile di dettagli, ma non possono coprire tutti i casi d’uso individuali. Potrebbe essere necessario adattare le azioni descritte alle tue esigenze.
  • L’ecosistema OVHcloud è progettato per garantire flessibilità e libertà di scelta. I clienti sono quindi responsabili della configurazione corretta e sicura dei propri servizi. Per evitare la perdita di dati, ti consigliamo vivamente di applicare strategie di backup a tutti i tuoi dati importanti.
  • Le nostre guide e i nostri tutorial possono fare riferimento a software o servizi di terze parti in combinazione con le soluzioni OVHcloud. Il supporto tecnico fornito da OVHcloud non include la configurazione di sistemi o prodotti al di fuori della nostra responsabilità. Questo include, a titolo esemplificativo:
    • Sistemi operativi e interfacce utente (Windows, Debian, Plesk, ecc.).
    • Qualsiasi altro software di terze parti (client FTP, software di posta elettronica, ecc.).
    • Servizi offerti da altri provider (DNS, API, interfacce utente, ecc.).

Per ricevere l’assistenza appropriata in caso di problemi, segui queste indicazioni:

  • Cerchi una consulenza personalizzata o vuoi discutere di un argomento non trattato in dettaglio nella nostra documentazione?
    Unisciti alla Community OVHcloud per cercare il tuo argomento e confrontarti con altri utenti.
  • Devi segnalare un incidente relativo al tuo servizio OVHcloud o riscontri difficoltà nello Spazio Cliente OVHcloud?
    Crea una richiesta di supporto nel nostro centro assistenza.
  • Hai bisogno di assistenza professionale per il tuo progetto o di aiuto per attività al di fuori del nostro perimetro di supporto?
    Visita il nostro portale dei partner per trovare esperti che conoscono le soluzioni OVHcloud.
  • Cerchi informazioni più dettagliate sui nostri livelli di supporto e sui Professional Services?
    Visita le nostre pagine web sui livelli di supporto OVHcloud e sugli OVHcloud Professional Services.

Puoi partecipare al miglioramento della nostra documentazione:

  • Vuoi condividere un feedback per migliorare una guida o segnalare informazioni insufficienti su una pagina specifica?
    Utilizza i pulsanti "Questa pagina ti è stata utile?" in fondo alla pagina per farcelo sapere.
  • Vuoi proporre un aggiornamento concreto della documentazione?
    Utilizza la funzione "Modifica questa pagina", disponibile in fondo alla pagina e nella barra laterale.

Prerequisiti

  • Disporre di una soluzione VPS
  • Avere accesso in SSH al VPS tramite amministratore (sudo)
  • Disporre di un sito Web funzionante, accessibile in HTTP

Procedura

Sommario

Step 1 - Accedi al tuo VPS OVHcloud

  1. Scarica un client SSH come PuTTY o utilizza il terminale integrato del sistema operativo.
  2. Accedi al tuo VPS OVHcloud con le informazioni di connessione fornite:
ssh root@<vps_ip>

Sostituisci <vps_ip> con l'indirizzo IP del tuo VPS OVHcloud.

Step 2 - Installa Certbot

Certbot è uno strumento che consente di gestire automaticamente i certificati Let's Encrypt. Per installare Certbot in base alla distribuzione Linux scelta, segui gli step riportati qui sotto.

Ubuntu/Debian
CentOS
Fedora
sudo apt update
sudo apt install certbot

Assicurati che Certbot sia installato correttamente eseguendo il comando seguente:

certbot --version

In questo modo verrà visualizzata la versione di Certbot installata.

Step 3 - Ottieni un certificato SSL con Let's Encrypt

Info

Se hai installato il tuo server Web (Nginx o Apache), ti consigliamo di utilizzare i plugin Certbot per automatizzare la configurazione SSL e attivare i reindirizzamenti HTTPS. Questi plugin semplificano l'installazione gestendo direttamente i file di configurazione del server Web.

Utilizzo automatico con i plugin Certbot Nginx o Apache (consigliato)

In base al server Web utilizzato, utilizza la riga di comando corrispondente:

Nginx
Apache

Installate il plugin Certbot Nginx:

sudo apt install python3-certbot-nginx -y

Genera il certificato SSL:

sudo certbot --nginx -d your_domain

Questo bot configurerà automaticamente il certificato SSL e il reindirizzamento HTTPS. Verifica che il tuo sito Web sia accessibile in HTTPS.

Utilizzo in modalità autonoma

Se si preferisce configurare manualmente il server, utilizzare Certbot in modalità autonoma. Questa modalità utilizza un server temporaneo integrato a Certbot per convalidare il tuo dominio e generare un certificato SSL.

Per richiedere un certificato, esegui questo comando:

sudo certbot certonly --standalone -d your_domain

Sostituisci your_domain con il tuo dominio.

Warning

Questo metodo arresta temporaneamente tutti i servizi che utilizzano la porta 80 (ad esempio un altro server Web).

Una volta generato il certificato, i file sono disponibili in /etc/letsencrypt/live/your_domain/:

  • fullchain.pem: il certificato completo.
  • privkey.pem: la chiave privata.

Step 4 - Configura il tuo server Web

Info

Se in precedenza hai utilizzato la soluzione automatica (con i plugin Certbot) (Step 3) e il tuo sito Web è accessibile in HTTPS, passa direttamente allo Step 5.

Esempio per Nginx

1. Aprire il file di configurazione del sito Web (ad esempio /etc/nginx/sites-available/your_domain.conf).

2. Per attivare l’SSL, aggiungi queste righe:

server {
    listen 443 ssl;
    server_name your_domain;

    ssl_certificate /etc/letsencrypt/live/your_domain/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/your_domain/privkey.pem;

    # Impostazioni di sicurezza aggiuntive
    ssl_protocols TLSv1.2 TLSv1.3;
    ssl_ciphers HIGH:!aNULL:!MD5;

    # Reindirizzamento HTTP verso HTTPS
    location / {
        try_files $uri $uri/ =404;
    }
}

3. Aggiungi un reindirizzamento automatico HTTP verso HTTPS:

server {
    listen 80;
    server_name your_domain;
    return 301 https://$host$request_uri;
}

4. Provate e riavviate Nginx:

sudo nginx -t
sudo systemctl reload nginx

Verifica che il tuo sito Web sia accessibile in HTTPS.

Esempio per Apache

1. Attiva i moduli SSL e gli header:

sudo a2enmod ssl
sudo a2enmod headers

2. Modificare la configurazione del sito Web (ad esempio /etc/apache2/sites-available/your_domain.conf) per includere:

<VirtualHost *:80>
    ServerName your_domain
    DocumentRoot /var/www/your_domain

    Redirect permanent / https://your_domain/

    <Directory /var/www/your_domain>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/ssltest_error.log
    CustomLog ${APACHE_LOG_DIR}/ssltest_access.log combined
</VirtualHost>

<VirtualHost *:443>
    ServerName your_domain
    DocumentRoot /var/www/your_domain

    # Attivare SSL
    SSLEngine on
    SSLCertificateFile /etc/letsencrypt/live/your_domain/fullchain.pem
    SSLCertificateKeyFile /etc/letsencrypt/live/your_domain/privkey.pem

    # Impostazioni di sicurezza aggiuntive
    SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
    SSLCipherSuite HIGH:!aNULL:!MD5
    SSLHonorCipherOrder on

    <Directory /var/www/your_domain>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/ssltest_error.log
    CustomLog ${APACHE_LOG_DIR}/ssltest_access.log combined
</VirtualHost>

3. Testa e riavvia Apache:

sudo apachectl configtest
sudo systemctl restart apache2

Verifica che il tuo sito Web sia accessibile in HTTPS.

Step 5 - Attiva il rinnovo automatico

I certificati Let's Encrypt sono validi per 90 giorni. Configura il rinnovo automatico con Certbot:

Prova il rinnovo automatico:

sudo certbot renew --dry-run

Certbot configura automaticamente un’operazione cron o un timer systemd per gestire il rinnovo. Controlla lo stato con:

sudo systemctl list-timers | grep certbot

Per saperne di più

Per prestazioni specializzate (referenziamento, sviluppo, ecc...), contatta i partner OVHcloud.

Contatta la nostra Community di utenti.

Questa pagina ti è stata utile?