În acest tutorial, veți învăța cum să instalați un certificat SSL pe un server Courier IMAP. Combinați certificatul, cheia privată și lanțul CA într-un singur fișier PEM, indicați setarea TLS_CERTFILE a Courier către acesta și reporniți serviciul pentru ca IMAPS și POP3S să servească noul certificat.
Generați un cod CSR pe serverul Courier IMAP
Dacă ați generat deja CSR-ul și ați primit fișierele SSL, treceți peste partea 1 și mergeți direct la pașii de instalare.
CSR-ul (Certificate Signing Request) este un bloc de text codificat care conține datele dumneavoastră de contact. Îl creați și îl trimiteți autorității de certificare (CA) pentru a trece validarea SSL. Generarea CSR-ului creează, de asemenea, cheia privată corespunzătoare, care rămâne pe serverul dumneavoastră și este necesară pentru instalare. Aveți două opțiuni:
- Utilizați generatorul nostru CSR pentru a crea CSR-ul automat.
- Urmați tutorialul nostru pas cu pas despre cum să generați un CSR pe serverul Courier IMAP.
Pentru a deschide fișierul CSR, folosiți orice editor de text simplu. La comandă, copiați întregul bloc, inclusiv liniile BEGIN și END. Păstrați fișierul cheii private în siguranță: îl veți îmbina în fișierul PEM în timpul instalării.
Instalați un certificat SSL pe serverul Courier IMAP
După validare, CA-ul vă trimite prin e-mail o arhivă ZIP cu fișierele SSL: certificatul principal (de server) și unul sau mai multe certificate intermediare (CA). Extrageți arhiva pe server, apoi urmați pașii de mai jos.
Pasul 1: Combinați certificatul, lanțul și cheia într-un singur fișier PEM
Courier citește certificatul și cheia privată dintr-un singur fișier PEM setat în TLS_CERTFILE. Concatenați fișierele în această ordine: mai întâi certificatul de server, apoi lanțul intermediar CA, apoi cheia privată. Din directorul care conține fișierele extrase, rulați:
cat yourdomain.crt yourdomain.ca-bundle yourdomain.key > imapd.pem
sudo mv imapd.pem /etc/courier/imapd.pem
sudo chmod 600 /etc/courier/imapd.pem
Dacă CA-ul dumneavoastră a livrat certificatele intermediare ca fișiere separate în loc de un singur .ca-bundle, enumerați fiecare dintre ele între certificat și cheie. Fișierul PEM finalizat ar trebui să arate astfel:
-----BEGIN CERTIFICATE-----
(textul certificatului dumneavoastră SSL principal)
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
(textul certificatului lanțului intermediar / CA)
-----END CERTIFICATE-----
-----BEGIN PRIVATE KEY-----
(textul cheii dumneavoastră private)
-----END PRIVATE KEY-----
Cheile mai vechi pot fi etichetate BEGIN RSA PRIVATE KEY în loc de BEGIN PRIVATE KEY; oricare dintre variante este acceptabilă. Cheia nu trebuie să fie criptată cu o parolă, deoarece Courier o încarcă fără a solicita autentificare. Fișierul PEM trebuie să poată fi citit doar de root (comanda chmod 600 de mai sus), deoarece conține cheia privată.
Dacă preferați să păstrați cheia privată într-un fișier separat, excludeți cheia din fișierul PEM și setați TLS_PRIVATE_KEYFILE la calea cheii în configurație (Pasul 2). Când cheia este deja încorporată în TLS_CERTFILE, fișierul separat pentru cheie este opțional.
Pasul 2: Indicați Courier către fișierul dumneavoastră PEM
Deschideți fișierul de configurare pe care Courier îl folosește pentru IMAP prin SSL. Calea depinde de distribuția dumneavoastră: este de obicei /etc/courier/imapd-ssl, sau /usr/lib/courier-imap/etc/imapd-ssl pe unele sisteme. Editați-l cu un editor de text, de exemplu:
sudo nano /etc/courier/imapd-ssl
Localizați linia TLS_CERTFILE (sau adăugați-o dacă lipsește) și setați-o la fișierul dumneavoastră PEM:
TLS_CERTFILE=/etc/courier/imapd.pem
Dacă ați păstrat cheia privată separat la Pasul 1, setați și calea acesteia:
TLS_PRIVATE_KEYFILE=/etc/courier/imapd.key
Cât timp vă aflați în acest fișier, întăriți setările TLS. Eliminați sau comentați orice linie care forțează un protocol învechit, cum ar fi TLS_PROTOCOL=SSL3: SSLv3 și versiunile timpurii TLS 1.0 și 1.1 sunt nesigure și ar trebui dezactivate. Setați Courier să necesite TLS 1.2 sau superior. TLS_PROTOCOL se aplică portului SSL dedicat (IMAPS), iar TLS_STARTTLS_PROTOCOL se aplică STARTTLS pe portul standard:
TLS_PROTOCOL=TLSv1.2
TLS_STARTTLS_PROTOCOL=TLSv1.2
Valoarea TLSv1.2 înseamnă „TLS 1.2 sau superior”, astfel încât TLS 1.3 este totuși negociat atunci când build-ul dumneavoastră OpenSSL îl acceptă. Nu este necesar să setați TLS_TRUSTCERTS pentru a servi certificatul dumneavoastră clienților de e-mail; acea variabilă este doar pentru verificarea certificatelor de client.
Debian, Ubuntu și Devuan: pe aceste distribuții, Courier este compilat pe baza GnuTLS în loc de OpenSSL, iar TLS_PROTOCOL nu are niciun efect. Setați limita minimă a protocolului cu TLS_PRIORITY în schimb, de exemplu TLS_PRIORITY=NORMAL:-VERS-TLS1.0:-VERS-TLS1.1 (care lasă doar TLS 1.2 și 1.3). TLS_CERTFILE și fișierul PEM combinat de mai sus sunt identice pe ambele build-uri, astfel încât instalarea certificatului în sine rămâne neschimbată.
Notă despre parametrii Diffie-Hellman: pachetele Courier actuale generează automat un fișier de parametri DH (prin scriptul mkdhparams și o sarcină cron periodică) și îl citesc din TLS_DHPARAMS, astfel încât nu mai trebuie să creați unul manual pentru o instalare standard. Vechea directivă TLS_DHCERTFILE a fost eliminată în Courier 4.15. Dacă mkdhparams nu a rulat niciodată pe serverul dumneavoastră, rulați-l o dată pentru a crea fișierul.
Dacă serviți și POP3S (portul 995), deschideți fișierul de configurare POP3, /etc/courier/pop3d-ssl (sau /usr/lib/courier-imap/etc/pop3d-ssl), și aplicați aceleași setări. Puteți reutiliza același fișier PEM sau puteți crea un fișier dedicat /etc/courier/pop3d.pem cu același conținut:
TLS_CERTFILE=/etc/courier/pop3d.pem
TLS_PROTOCOL=TLSv1.2
TLS_STARTTLS_PROTOCOL=TLSv1.2
Pasul 3: Reporniți Courier
Reporniți Courier astfel încât să încarce noul certificat. Pe majoritatea distribuțiilor bazate pe systemd, reporniți serviciile SSL și daemonul de autentificare:
sudo systemctl restart courier-imap-ssl
sudo systemctl restart courier-pop3-ssl
sudo systemctl restart courier-authdaemon
Unele pachete expun o singură unitate combinată în schimb. Dacă serviciile de mai sus nu sunt găsite, încercați:
sudo systemctl restart courier
Pe un sistem care nu utilizează systemd, reporniți prin propriile scripturi ale Courier:
/usr/lib/courier-imap/libexec/imapd-ssl.rc restart
/usr/lib/courier-imap/libexec/pop3d-ssl.rc restart
Odată ce serviciul repornește fără erori, noul dumneavoastră certificat SSL este activ pentru IMAPS (portul 993) și POP3S (portul 995), precum și pentru STARTTLS pe porturile 143 și 110.
Testați instalarea SSL
După instalare, confirmați că certificatul este servit corect. Dintr-un terminal, deschideți o conexiune TLS către portul IMAPS și citiți certificatul prezentat de server:
openssl s_client -connect mail.yourdomain.com:993 -servername mail.yourdomain.com 2>/dev/null | openssl x509 -noout -issuer -subject -dates
Pentru POP3S, folosiți portul 995. Pentru a testa STARTTLS pe portul IMAP standard în schimb, rulați:
openssl s_client -connect mail.yourdomain.com:143 -starttls imap
Prima comandă transmite conexiunea prin openssl x509 și afișează emitentul, subiectul (numele comun) și datele de valabilitate, astfel încât să puteți confirma că este servit certificatul corect. Comanda STARTTLS arată handshake-ul complet: verificați dacă emitentul și lanțul sunt corecte și dacă apare Verify return code: 0 (ok) aproape de final. Pentru un raport complet despre certificatul dumneavoastră și configurația acestuia, utilizați SSL Checker.
Întrebări frecvente
Certificatul de server mai întâi, apoi lanțul intermediar (CA), apoi cheia privată, toate într-un singur fișier PEM. Courier citește acest fișier din TLS_CERTFILE și prezintă lanțul complet clienților. Cheia privată trebuie să fie necriptată (fără parolă).
IMAP prin SSL este configurat în /etc/courier/imapd-ssl, iar POP3 prin SSL în /etc/courier/pop3d-ssl. Pe unele distribuții, acestea se află în schimb sub /usr/lib/courier-imap/etc/. Setările STARTTLS pentru porturile în text simplu se află în fișierele corespunzătoare imapd și pop3d.
Nu manual, pentru o instalare normală. Pachetele Courier actuale generează automat un fișier de parametri DH cu scriptul mkdhparams și îl actualizează periodic, citindu-l din TLS_DHPARAMS. Vechea directivă TLS_DHCERTFILE a fost eliminată în Courier 4.15. Rulați mkdhparams o singură dată doar dacă nu există încă niciun fișier DH.
Eliminați orice linie TLS_PROTOCOL=SSL3 și setați TLS_PROTOCOL=TLSv1.2 în imapd-ssl și pop3d-ssl. Setați TLS_STARTTLS_PROTOCOL=TLSv1.2 pentru porturile STARTTLS. Valoarea TLSv1.2 înseamnă „1.2 sau superior”, astfel încât TLS 1.3 este utilizat automat atunci când OpenSSL-ul dumneavoastră îl acceptă.
Conectați-vă la portul de e-mail cu OpenSSL și citiți certificatul servit: openssl s_client -connect mail.yourdomain.com:993 pentru IMAPS, sau adăugați -starttls imap pe portul 143. Confirmați că emitentul și lanțul sunt corecte și că rezultatul afișează Verify return code: 0 (ok).
Economisește 10% la certificatele SSL în momentul plasării comenzii!
Eliberare rapidă, criptare puternică, încredere în browser de 99,99%, suport dedicat și garanție de returnare a banilor în 25 de zile. Codul cuponului: SAVE10


