User Tools

Site Tools


doc:appunti:linux:sa:ssl_cert

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
doc:appunti:linux:sa:ssl_cert [2010/08/16 18:22] niccolodoc:appunti:linux:sa:ssl_cert [2020/10/07 10:02] – [ejabber] niccolo
Line 2: Line 2:
  
 Come generare i certificati SSL autofirmati in un sistema **Debian GNU/Linux** per i vari programmi: apache2, courier-pop, courier-imap, postfix, exim. Come generare i certificati SSL autofirmati in un sistema **Debian GNU/Linux** per i vari programmi: apache2, courier-pop, courier-imap, postfix, exim.
 +
 +===== Ispezionare un certificato in formato PEM =====
 +
 +Per vedere il contenuto di un file .pem (date di validità, ecc.):
 +
 +<code>
 +openssl x509 -text -noout -in pop3d.pem
 +</code>
 +
 +===== Ispezionare una CRL in formato PEM =====
 +
 +Anche una Certificate Revocation List ha la sue date di validità, ecc. Per ispezionarla:
 +
 +<code>
 +openssl crl -text -noout -in openvpn_crl.pem
 +</code>
  
 ===== Courier POP3 e IMAP ===== ===== Courier POP3 e IMAP =====
Line 15: Line 31:
   * Eliminare i vecchi ''.pem'' ed eseguire nuovamente gli script.   * Eliminare i vecchi ''.pem'' ed eseguire nuovamente gli script.
  
-Per vedere il contenuto di un file .pem:+===== Postfix =====
  
-<code> +L'installazione predefinita di Postfix usa il certificato **''/etc/ssl/certs/ssl-cert-snakeoil.pem''** e la corrispondente chiave **''/etc/ssl/private/ssl-cert-snakeoil.key''**. 
-openssl x509 -text -noout -in pop3d.pem+ 
 +Noi preferiamo due file nella directory **''/etc/postfix/ssl/''**, uno con il certificato (**''postfix.crt''**) ed uno con la chiave (**''postfix.key''**). In questa **[[postfix#crittografia_tls|pagina]]** uno script in grado di generare i due file. 
 + 
 +Editare **''/etc/postfix/main.cf''** e impostare: 
 + 
 +<file> 
 +# TLS parameters 
 +smtpd_tls_cert_file=/etc/postfix/ssl/postfix.crt 
 +smtpd_tls_key_file=/etc/postfix/ssl/postfix.key 
 +smtpd_use_tls=yes 
 +</file> 
 + 
 +===== ejabber ===== 
 + 
 +La generazione del certificato è inclusa nello script di **''postinst''**, eccola con l'unica variazione sulla durata: tre anni invece di uno: 
 + 
 +<code bash> 
 +#!/bin/bash 
 +EHOSTNAME=$(hostname -s 2>/dev/null || echo localhost) 
 +EDOMAINNAME=$(hostname -d 2>/dev/null || echo localdomain) 
 +openssl req -new -x509 -days 1096 -nodes -out ejabberd.pem 
 +    -keyout ejabberd.pem > /dev/null 2>&1 <<+++ 
 +
 +
 +
 +$EDOMAINNAME 
 +$EHOSTNAME 
 +ejabberd 
 +root@$EHOSTNAME.$EDOMAINNAME 
 ++++
 </code> </code>
  
-===== Postfix =====+===== Verificare un certificato SSL su HTTPS ===== 
 + 
 +Con il tool **openssl** è possibile verificare la possibilità di stabilire una connessione SSL con un server via HTTPS: 
 + 
 +<code> 
 +openssl s_client -connect www.domain.tld:443 -CAfile /usr/lib/ssl/certs/DigiCert_Global_Root_CA.pem 
 +</code>
  
-Vengono salvati due file nella directory **''/etc/postfix/ssl/''**, uno con il certificato **''postfix.crt''** ed uno con la chiave **''postfix.key''**.+L'opzione **%%-CAfile%%** e il relativo parametro non dovrebbe essere necessaria se i certificati delle CA sono installati nelle opportune directorydove la libreria **libssl** le trova automaticamente.
doc/appunti/linux/sa/ssl_cert.txt · Last modified: 2020/10/07 10:21 by niccolo