Attivazione HTTPS su Debian

Oggi mi è stato chiesto di cambiare in https l’accesso ad un portale aziendale, ospitato su un server Debian (Sarge) con Apache 2. Riporto brevemente i passaggi che ho seguito.

Generazione del certificato

Non disponendo di un certificato rilasciato da un rivenditore ufficiale ho dovuto generarne uno personale; la cosa si tradurrà in un messaggio di warning che apparirà ad ogni accesso al portale (basterà accettare il mio certificato, considerato inaffidabile :-) ). Il comando di generazione è il seguente

#apache2-ssl-certificate -days xyz (xyz indica il numero di giorni di validità del certificato)

Il sistema farà alcune semplici domande per la generazione (es. nazione, nome dell’azienda, ecc.), quindi genererà il file apache.pem in /etc/apache2/

Abilitazione di SSL

Generato il certificato, dovremo dire al server apache di ascoltare anche sulla porta https, la 443. Basterà aggiungere al file /etc/apache2/ports.conf la linea

Listen 443

Invece, per caricare il modulo ssl in apache occorre digitare

#a2enmod ssl

e quindi riavviare il servizio.

/etc/init.d/apache2 restart

Configurazione SSL

Il nostro portale avrà un file di configurazione nella cartella /etc/apache2/sites-available/; il nome di default è, manco a dirlo, default. Digitando questi comandi ne creeremo una copia esatta di nome ssl e la attiveremo:

cp /etc/apache2/sites-available/default /etc/apache2/sites-available/ssl
ln -s /etc/apache2/sites-available/ssl /etc/apache2/sites-enabled/ssl

A questo punto bisognerà modificare il file /etc/apache2/sites-available/ssl indicando la porta 443 come porta di ascolto. Le voci modificate saranno così fatte:

NameVirtualHost *:443
<VirtualHost *:443>

Rimane da indicare ad ogni VirtualHost interessato la posizione del certificato e l’attivazione dell’engine ssl; è sufficiente inserire nella sezione interessata (del VirtualHost, ad es. sotto il ServerName) queste righe:

SSLEngine On
SSLCertificateFile /etc/apache2/ssl/apache.pem

Riavviato Apache sarà possibile accedere anche in https.

In rete si trovano altre guide , anche più esaustive e complete, (ad es. qui) per cui se è necessario approfondire l’argomento conviene guardarsi intorno (senza dimenticare il comando man).
Questi sono i passaggi con cui ho ottenuto quanto chiesto nel minor tempo possibile.

Questa voce è stata pubblicata in linux, tutorial. Contrassegna il permalink.

3 risposte a Attivazione HTTPS su Debian

  1. Sedan scrive:

    Minchia, tutto sto casino?????

  2. Francesco Beccari scrive:

    Anche se il post è vecchio, rimane sempre utile e scritto chiaramente.

    apache2-ssl-certificate nel frattempo è deceduto.

    openssl req $@ -new -x509 -days numerodigiorni -nodes -out /etc/apache2/apache.pem -keyout /etc/apache2/apache.pem

    ne fa le veci.

  3. marcello scrive:

    Grazie Francesco, sia per il complimento che (soprattutto) per il contributo.

Lascia un Commento

Indirizzo eail che non verrà pubblicatao. I campi obbligatori sono contrassegnati *

*

È possibile utilizzare questi tag ed attributi XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>