Installare un certificato SSL

criptoQuesta mini-guida, ti aiuta ad installare un certificato SSL rilasciato da Godaddy per i server Apache, Dovecot e Postfix.

Apache 2.2
Scaricare i file dal generatore di certificati di Godaddy
Decomprimere l’archivio zip che dovrebbe contenere due file:
Il primo ha l’hash della chiave 7cd7e8b895a80 e estensione .crt: rinominarlo in default.crt
Il secondo si chiama gd_bundle.crt (rinominarlo in authority.crt)
Copiare i file nella posizione desiderata (p.e. /etc/certificates)
Copiare anche il file .key generato insieme alla richiesta del certificato (rinominarlo in default.key)
Configurare le tre voci della configurazione virtualhost di Apache2, come segue:

SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile      /etc/certificates/default.crt
SSLCertificateKeyFile   /etc/certificates/default.key
SSLCertificateChainFile /etc/certificates/authority.crt

 

Dovecot 2.0

(si considerano già scaricati e rinominati i file, secondo quanto detto per Apache)

Editare il file di configurazione di dovecot (o il file di configurazione dell’ssl, in caso si utilizzi una distro che divide il file di configurazione in vari file, p.e. 10-ssl.conf) e riportare le seguenti righe:

ssl = yes
ssl_cert = </etc/certificates/default.crt
ssl_key = </etc/certificates/default.key
ssl_ca = </etc/certificates/authority.crt

 

Postfix 2.9

(si considerano già scaricati e rinominati i file, secondo quanto detto per Apache)

Creare il file default.bundle.crt, con il seguente comando:

cat default.crt authority.crt > default.bundle.crt

Editare il file di configurazione main.cf ed aggiungere/modificare le seguenti righe:

smtpd_use_tls=yes
smtpd_tls_key_file = /etc/certificates/default.key
smtpd_tls_cert_file = /etc/certificates/bundle.crt

 

Verificare il certificato con openssl
Creare un file /usr/local/bin/testcert con il seguente contenuto

#/bin/sh
echo -n "SERVICE IP: "
read SERVICE_IP
echo -n "SERVICE PORT: "
read SERVICE_PORT
echo "------------------------------------------------------------------------"
echo | openssl s_client -connect $SERVICE_IP:$SERVICE_PORT 2>/dev/null | openssl x509 -noout -subject -issuer -dates
echo -e "------------------------------------------------------------------------\n"

Rendere eseguibile il file

chmod +x /usr/local/bin/testcert

Lanciare il comando:

$ testcert

SERVICE IP: xxx.xxxxxxxx.tld
SERVICE PORT: 443
---------------------------------------------------------------------------------
subject= /OU=Domain Control Validated/CN=www.xxxxxxx.xxx
issuer= /C=US/ST=Arizona/L=Scottsdale/O=GoDaddy.com, Inc./OU=http://certificates.godaddy.com/repository/CN=Go Daddy Secure Certification Authority/serialNumber=07969287
notBefore=Feb  4 18:35:28 2014 GMT
notAfter=Feb 20 20:55:59 2015 GMT
---------------------------------------------------------------------------------