Utilizzo di certificati SSL Startcom in Debian

From RVM Wiki
Jump to navigation Jump to search

Iscrizione

  • Iscriversi nell'Express Lane con il proprio indirizzo email
  • Si riceverà un codice di attivazione con cui completare l'iscrizione
  • Installare il certificato client per l'autenticazione ai servizi. Farne una copia di backup esportandolo da Firefox. Senza questo certificato NON sarà possibile accedere ai servizi StartSSL.

Creazione certificato

  • Loggarsi, e creare il primo dominio che sarà di secondo livello
  • L'email con il codice di autorizzazione verrà inviata a postmaster@example.com: assicurarsi che questo indirizzo riceva email
  • Loggarsi e inserire il codice
  • Creare ora il primo certificato: creare la private key con una password: memorizzare la password r copiare la private key in locale nel file www.example.com-crypt.key.
  • SENZA PASSWORD O PRIVATE KEY, IL CERTIFICATO NON SARÀ UTILIZZABILE, E QUESTI DATI NONS ONO SALVATI DA NESSUNA PARTE NEL SITO STARTCOM. VANNOC ONSERVATI PRIVATAMENTE.
  • Copiare il certificato generato nel file www.example.com.crt e la private key www.example.com.key
  • Scaricare il certificati di CA intermedia Startcom:
wget https://www.startssl.com/certs/sub.class1.server.ca.pem -O startcom-sub.class1.server.ca.pem

  • Si avranno quindi questi files:
www.example.com-crypted.key       : contiene la private key con password
www.example.com.crt               : contiene il certificato generato
startcom-sub.class1.server.ca.pem : contiene la sub ca intermedia

Sblocco private key

  • La private key per essere utilizzata con un server web o smtp o imap deve essere salvata senza password
  • Scegliere "Decrypt private key" dal Toolbox sul sito Startcom
  • Incollare il contenuto di www.example.com-crypted.key ed inserire la password
  • Copiare la private key decifrata nel file
www.example.com.key
  • Conservare gelosamente il file, perchè non è protetto da password

Installazione CA intermedia in Debian

  • Copiare sulla propria macchina il file
sudo cp startcom-sub.class1.server.ca.pem /usr/local/share/ca-certificates/startcom-sub.class1.server.ca.crt
  • Inserirlo nella catena CA
sudo update-ca-certificates
  • Controllare che sia al posto giusto:
ls /etc/ssl/certs/startcom-sub.class1.server.ca.pem
lrwxrwxrwx 1 root root 70 Nov 27 14:06 /etc/ssl/certs/startcom-sub.class1.server.ca.pem -> /usr/local/share/ca-certificates/startcom-sub.class1.server.ca.crt

Installazione certificati server

  • Copiare il certificato:
sudo cp www.example.com.crt /etc/ssl/certs/

Installazione private key

  • Copiare la private key:
sudo cp www.example.com.key /etc/ssl/private
  • Cambiare owner:
sudo chown root:ssl-cert /etc/ssl/private/www.example.com.key
  • Cambiare permission:
sudo chmod 640 /etc/ssl/private/www.example.com.key
  • Controllare:
sudo ls -al /etc/ssl/private/www.example.com.key
-rw-r----- 1 root ssl-cert 1675 Nov 27 13:33 /etc/ssl/private/www.example.com.key
  • Rimuovere i files copiati
rm -f www.example.com.key www.example.com.crt

Utilizzo con Apache2

  • Bastano la private key e il certificato
  • Dichiararli nel virtual host:
sudoedit /etc/apache2/sites-available/default-ssl
	ServerName www.example.com
    ...
    SSLCertificateFile      /etc/ssl/certs/www.example.com.crt
    SSLCertificateKeyFile   /etc/ssl/private/www.example.com.key
    SSLCertificateChainFile /etc/ssl/certs/startcom-sub.class1.server.ca.pem
    # FACOLTATIVO 
    #SSLCACertificateFile    /etc/ssl/certs/StartCom_Certification_Authority.pem
    ...
  • Riavviare Apache e controllare i log access.log e errors.log con un accesso ssl
sudo invoke-rc.d apache2 restart

Utilizzo con Dovecot

  • Generare un certificato con il nome corretto ed installarli come per i precedenti
mail.example.com.key
mail.example.com.crt 

Dovecot 0.x

  • Il certificato va concatenato con quello della sub-CA di startcom, altrimenti non sarà ritenuto valido da Thunderbirdird:
cat /etc/ssl/certs/mail.example.com.crt /etc/ssl/certs/startcom-sub.class1.server.ca.pem | sudo tee /etc/dovecot/dovecot.pem
  • Dichiararlo:
sudoedit /etc/dovecot/dovecot.conf
ssl_cert_file = /etc/dovecot/dovecot.pem
ssl_key_file = /etc/ssl/private/mail.example.com.key
  • Riavviare dovecot e provare a connettersi con un client imaps: non dovrebbero esserci warning
sudo invoke-rc.d dovecot restart

Dovecot 1.x

  • Dichiarare i certificati:
sudoedit /etc/dovecot/conf.d/10-ssl.conf
ssl_cert = </etc/dovecot/dovecot.pem
ssl_key = </etc/ssl/private/mail.examle.com.key
  • Creare il certificato con la ca intermedia:
cat /etc/ssl/certs/assistenza.rvmgroup.it.crt /etc/ssl/certs/startcom-sub.class1.server.ca.pem | sudo tee /etc/dovecot/dovecot.pem
  • Riavviare dovecot e testare
sudo invoke-rc.d dovecot restart
telnet -z ssl 127.0.0.1 993

Riferimenti

Utilizzo con Postfix

  • Con postfix occorre dichiarare anche la CA intermedia, altrimenti il client SMTP riceve un errore di CA sconosciuta, rilevabile anche dia log di Postfix, che sconentteròà il client.
  • Dichiararli:
sudoedit /etc/postfix/main.cf
smtpd_tls_cert_file=/etc/ssl/certs/mail.example.com.crt
smtpd_tls_key_file=/etc/ssl/private/mail.example.com.key
smtpd_tls_CAfile = /etc/ssl/certs/startcom-sub.class1.server.ca.pem
  • Riavviare e testare:
sudo invoke-rc.d postfix restart

Riferimenti