doc:appunti:linux:sa:letsencrypt
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
doc:appunti:linux:sa:letsencrypt [2019/02/27 15:29] – [Rinnovo dei certificati] niccolo | doc:appunti:linux:sa:letsencrypt [2024/11/26 09:23] (current) – [Utilizzo dei certificati ProFTPD] niccolo | ||
---|---|---|---|
Line 76: | Line 76: | ||
===== Rimozione di un nome di dominio dai Subject Alternative Names ===== | ===== Rimozione di un nome di dominio dai Subject Alternative Names ===== | ||
- | Pare che vi sia un bug al momento in cui si cerca di **togliere un nome di dominio** dall' | + | Se si desidera |
+ | |||
+ | C'è tuttavia un inconveniente (ancora con certbot v.0.31): | ||
Vedere in proposito questo **[[https:// | Vedere in proposito questo **[[https:// | ||
Line 184: | Line 186: | ||
===== Utilizzo dei certificati con Postfix ===== | ===== Utilizzo dei certificati con Postfix ===== | ||
- | Sembra che con i permessi predefiniti Postfix | + | Con i permessi predefiniti Postfix |
+ | |||
+ | ==== Certificati TLS come server ==== | ||
+ | |||
+ | Per offrire TLS ai clienti che si connettono | ||
< | < | ||
Line 191: | Line 197: | ||
</ | </ | ||
- | Se il file certificato viene aggiornato è necessario fare un **reload** del demone. | ||
Conviene verificare il **livello di crittografia** offerto dal server e **disabilitare tutti i sistemi deboli o difettosi**. Esistono diversi servizi on-line che consentono di fare il check, ad esempio [[https:// | Conviene verificare il **livello di crittografia** offerto dal server e **disabilitare tutti i sistemi deboli o difettosi**. Esistono diversi servizi on-line che consentono di fare il check, ad esempio [[https:// | ||
Line 209: | Line 214: | ||
smtpd_tls_exclude_ciphers = aNULL, RC4 | smtpd_tls_exclude_ciphers = aNULL, RC4 | ||
</ | </ | ||
+ | |||
+ | ==== Certificati TLS come client ==== | ||
+ | |||
+ | Per utilizzare TLS quando si effettua il relay ad altri server è necessario mettere quanto segue in **''/ | ||
+ | |||
+ | < | ||
+ | # Use TLS as a client, when the relaying server supports it. | ||
+ | smtp_tls_security_level = may | ||
+ | smtp_tls_cert_file = / | ||
+ | smtp_tls_key_file = / | ||
+ | </ | ||
+ | |||
+ | Se si preferisce attivare TLS **solo verso alcuni host** è possibile usare la direttiva **smtp_tls_policy_maps** in questo modo: | ||
+ | |||
+ | < | ||
+ | # Use TLS as a client, only for some relay hosts. | ||
+ | smtp_tls_security_level = none | ||
+ | smtp_tls_cert_file = / | ||
+ | smtp_tls_key_file = / | ||
+ | smtp_tls_policy_maps = hash:/ | ||
+ | </ | ||
+ | |||
+ | Il file **/ | ||
+ | |||
+ | < | ||
+ | gmail.com | ||
+ | rigacci.org | ||
+ | </ | ||
+ | |||
+ | Lato ricevente si può verificare che il trasporto sia avvenuto utilizzando crittografia TLS; negli header del messaggio deve risultare **ESMTPS** invece di **ESMTP**: | ||
+ | |||
+ | < | ||
+ | Received: from mail.mydomain.org (mail.mydomain.org [68.129.233.182]) | ||
+ | by mail.rigacci.org (Postfix) with ESMTPS id 875378008E | ||
+ | for < | ||
+ | </ | ||
+ | |||
+ | Queste sono acluni degli acronimi per i vari protocolli di trasporto email: | ||
+ | |||
+ | ^ ESMTP | Extended Simple Mail Transfer Protocol (aggiunge security, authentication, | ||
+ | ^ ESMTPS | ||
+ | ^ ESMTPSA | ||
+ | |||
===== Verifica del certificato SMTP con STARTTLS ===== | ===== Verifica del certificato SMTP con STARTTLS ===== | ||
Line 244: | Line 292: | ||
Il file .pem viene indicato con la direttiva **TLS_CERTFILE** nei file **/ | Il file .pem viene indicato con la direttiva **TLS_CERTFILE** nei file **/ | ||
+ | |||
+ | Attenzione ai permessi: il certificato non deve essere leggibile al mondo e con **Debian 10** bisogna che il file sia **leggibile all' | ||
+ | |||
+ | ===== Utilizzo dei certificati con ProFTPD ===== | ||
+ | |||
+ | Vedere **[[proftpd# | ||
+ | |||
===== Verifica dei certificati POP/IMAP ===== | ===== Verifica dei certificati POP/IMAP ===== | ||
Line 267: | Line 322: | ||
/ | / | ||
</ | </ | ||
+ | |||
+ | ===== Certificato DST Root CA X3 scaduto ===== | ||
+ | |||
+ | Il **30 settembre 2021** è scaduto il certificato **ST Root CA X3**, si tratta di un certificato root utilizzato per cross-firmare molti certificati SSL rilasciati in passato da Let's Encrypt. I nuovi certificati sono invece firmati con il nuovo certitificato **ISRG Root X1**, che però potrebbe non essere riconosciuto dai client un po' datati. | ||
+ | |||
+ | Anzitutto conviene confermare che il certificato in uso al **server** non sia scaduto e che sia firmato con il nuovo ISRG Root X1: | ||
+ | |||
+ | < | ||
+ | openssl x509 -text -noout -in / | ||
+ | </ | ||
+ | |||
+ | Dovrebbe risultare quanto segue: | ||
+ | |||
+ | < | ||
+ | ... | ||
+ | Signature Algorithm: sha256WithRSAEncryption | ||
+ | Issuer: C = US, O = Internet Security Research Group, CN = ISRG Root X1 | ||
+ | Validity | ||
+ | Not Before: Sep 4 00:00:00 2020 GMT | ||
+ | Not After : Sep 15 16:00:00 2025 GMT | ||
+ | ... | ||
+ | </ | ||
+ | |||
+ | Sul **client** invece si verifica l' | ||
+ | |||
+ | < | ||
+ | ERRORE: il certificato di " | ||
+ | ERRORE: Il certificato di " | ||
+ | </ | ||
+ | |||
+ | Quindi su una **Debian 10** è stato necessario aggiornare il seguente pacchetto: | ||
+ | |||
+ | < | ||
+ | libgnutls30 | ||
+ | </ | ||
+ | |||
+ | Su una **Debian 9** invece occorre il pacchetto che si trova attualmente in **stretch/ | ||
+ | |||
+ | < | ||
+ | libgnutls30 | ||
+ | </ | ||
+ | |||
+ | Con una **CentOS 7** invece è stato necessario aggiornare il pacchetto **ca-certificates**. | ||
+ | |||
+ | Vedere **[[https:// | ||
doc/appunti/linux/sa/letsencrypt.1551277795.txt.gz · Last modified: 2019/02/27 15:29 by niccolo