Postfix + Dovecot + Squirrelmail și utilizatori locali - Rețele SMB

Indice general al seriei: Rețele de calculatoare pentru IMM-uri: Introducere

Acest articol este continuarea și ultima miniserie:

Bună ziua prieteni și prieteni!

L Entuziaști vor să aibă propriul server de mail. Nu vor să folosească servere în care „Confidențialitate” se află între semne de întrebare. Persoana care se ocupă de implementarea serviciului pe serverul dvs. mic nu este un specialist în acest subiect și va încerca inițial să instaleze nucleul unui server de e-mail viitor și complet. Este că „ecuațiile” pentru a crea un server de poștă electronică complet sunt puțin dificil de înțeles și de aplicat. 😉

Adnotări de marjă

  • Este necesar să fie clar ce funcții îndeplinește fiecare program implicat într-un Mailserver. Ca un ghid inițial oferim o serie întreagă de legături utile cu scopul declarat că acestea sunt vizitate.
  • Implementarea manuală și de la zero a unui serviciu complet de poștă este un proces obositor, cu excepția cazului în care sunteți unul dintre „aleși” care efectuează zilnic acest tip de sarcină. Un server de mail este format - într-un mod general - de diferite programe care se ocupă separat SMTP, POP / IMAP, Stocarea locală a mesajelor, sarcini legate de tratarea fișierului SPAM, Antivirus etc. TOATE aceste programe trebuie să comunice corect între ele.
  • Nu există o dimensiune potrivită tuturor sau „cele mai bune practici” cu privire la modul de gestionare a utilizatorilor; unde și cum se stochează mesaje sau cum se face ca toate componentele să funcționeze ca un singur întreg.
  • Asamblarea și reglarea unui Mailserver tinde să fie neplăcute în chestiuni precum permisiunile și proprietarii de fișiere, alegând ce utilizator va fi responsabil de un anumit proces și în mici erori făcute în unele fișiere de configurare ezoterice.
  • Dacă nu știți foarte bine ce faceți, rezultatul final va fi un server de mail nesigur sau ușor nefuncțional. Că la sfârșitul implementării nu funcționează, va fi probabil cel mai mic dintre rele.
  • Putem găsi pe Internet un număr mare de rețete despre cum să creați un server de mail. Una dintre cele mai complete -după părerea mea personală- este cel oferit de autor ivar abrahamsen în cea de-a treisprezecea ediție din ianuarie 2017 «Cum se configurează un server de e-mail pe un sistem GNU / Linux“.
  • De asemenea, vă recomandăm să citiți articolul «Un Mailserver pe Ubuntu 14.04: Postfix, Dovecot, MySQL«, sau «Un Mailserver pe Ubuntu 16.04: Postfix, Dovecot, MySQL“.
  • Adevărat. Cea mai bună documentație în acest sens poate fi găsită în limba engleză.
    • Deși nu facem niciodată un Mailserver fidel ghidat de Cum să ... menționat în paragraful anterior, simplul fapt de a-l urma pas cu pas ne va oferi o idee foarte bună despre ceea ce ne vom confrunta.
  • Dacă doriți să aveți un Mailserver complet în doar câțiva pași, puteți descărca imaginea iRedOS-0.6.0-CentOS-5.5-i386.iso, sau căutați unul mai modern, fie că este iRedOS sau iRedMail. Este modul pe care îl recomand personal.

Vom instala și configura:

Rămâne de făcut:

Cel puțin următoarele servicii ar rămâne de implementat:

  • Postgri: Politici de server Postfix pentru Listele gri și respingerea mesajelor nedorite.
  • Amavisd-nou: script care creează o interfață între MTA și scanere de viruși și filtre de conținut.
  • Antivirus Clamav: suită antivirus
  • SpamAssassin: extrage Junk Mail
  • aparat de ras (pyzor): Captare SPAM printr-o rețea distribuită și colaborativă. Rețeaua Vipul Razor menține un catalog actualizat de propagare a mesajelor spam sau a mesajelor nedorite.
  • Înregistrare DNS „MailKeys Identified Mail” sau extensia dkim.

pachete postgrey, amavisd-new, clamav, spamassassin, ras y pyzor Acestea se găsesc în depozitele de programe. Vom găsi și programul openkim.

  • Declarația corectă a înregistrărilor DNS „SPF” și „DKIM” este esențială dacă nu dorim ca serverul nostru de e-mail nou pornit să fie declarat nedorit sau să fie un producător de SPAM sau Junk Mail, de către alte servicii de poștă, cum ar fi Gmail, Yahoo, Hotmail, etc..

Verificări inițiale

Amintiți-vă că acest articol este o continuare a altora care încep în Autentificare Squid + PAM pe CentOS 7.

Interfață LAN Ens32 conectată la rețeaua internă

[root @ linuxbox ~] # nano / etc / sysconfig / network-scripts / ifcfg-ens32
DEVICE=ens32
ONBOOT=yes
BOOTPROTO=static
HWADDR=00:0c:29:da:a3:e7
NM_CONTROLLED=no
IPADDR=192.168.10.5
NETMASK=255.255.255.0
GATEWAY=192.168.10.1
DOMAIN=desdelinux.fan DNS1=127.0.0.1
ZONA = public

[root @ linuxbox ~] # ifdown ens32 && ifup ens32

Interfață WAN Ens34 conectată la Internet

[root @ linuxbox ~] # nano / etc / sysconfig / network-scripts / ifcfg-ens34
DEVICE=ens34 ONBOOT=da BOOTPROTO=static HWADDR=00:0c:29:da:a3:e7 NM_CONTROLLED=no IPADDR=172.16.10.10 NETMASK=255.255.255.0 # Routerul ADSL este conectat la # această interfață cu # următoarea adresă IP GATEWAY=172.16.10.1 DOMAIN=desdelinux.fan DNS1=127.0.0.1
ZONA = extern

Rezoluția DNS din LAN

[root@linuxbox ~]# cat /etc/resolv.conf căutare desdelinux.fan nameserver 127.0.0.1 nameserver 172.16.10.30 [root@linuxbox ~]# e-mail gazdă
e-mail.desdelinux.fan este un alias pentru linuxbox.desdelinux.ventilator. linuxbox.desdelinux.fan are adresa 192.168.10.5 linuxbox.desdelinux.mail-ul fanilor este tratat cu 1 mail.desdelinux.ventilator.

[root@linuxbox ~]# hostmail.desdelinux.ventilator
e-mail.desdelinux.fan este un alias pentru linuxbox.desdelinux.ventilator. linuxbox.desdelinux.fan are adresa 192.168.10.5 linuxbox.desdelinux.mail-ul fanilor este tratat cu 1 mail.desdelinux.ventilator.

Rezoluția DNS de pe Internet

buzz@sysadmin:~$hostmail.desdelinux.ventilator 172.16.10.30
Se utilizează serverul de domeniu: Nume: 172.16.10.30 Adresă: 172.16.10.30#53 Alias: e-mail.desdelinux.fan este un alias pentru desdelinux.ventilator.
desdelinux.fan are adresa 172.16.10.10
desdelinux.mail-ul fanilor este tratat cu 10 mail.desdelinux.ventilator.

Probleme la rezolvarea numelui de gazdă la nivel local «desdelinux.ventilator"

Dacă aveți probleme la rezolvarea numelui de gazdă «desdelinux.ventilator" de la LAN, încercați să comentați linia de fișier /etc/dnsmasq.conf unde este declarat local=/desdelinux.ventilator/. Apoi, reporniți Dnsmasq.

[root @ linuxbox ~] # nano /etc/dnsmasq.conf # Comentează rândul de mai jos:
# local=/desdelinux.ventilator/

[root @ linuxbox ~] # service dnsmasq restart
Redirecționarea către / bin / systemctl reporniți dnsmasq.service

[root @ linuxbox ~] # service dnsmasq status

[root@linuxbox ~]# gazdă desdelinux.ventilator
desdelinux.fan are adresa 172.16.10.10
desdelinux.mail-ul fanilor este tratat cu 10 mail.desdelinux.ventilator.

Postfix și Dovecot

Documentația foarte extinsă a Postfix și Dovecot poate fi găsită la:

[root @ linuxbox ~] # ls /usr/share/doc/postfix-2.10.1/
bounce.cf.default LICENȚĂ README-Postfix-SASL-RedHat.txt COMPATIBILITATE main.cf.default TLS_ACKNOWLEDGEMENTS exemple README_FILES TLS_LICENSE

[root @ linuxbox ~] # ls /usr/share/doc/dovecot-2.2.10/
AUTORI COPYING.MIT dovecot-openssl.cnf NEWS wiki COPYING ChangeLog example-config README COPYING.LGPL documentation.txt mkcert.sh solr-schema.xml

În CentOS 7, Postfix MTA este instalat în mod implicit atunci când alegem opțiunea Infrastructure Server. Trebuie să verificăm dacă contextul SELinux permite scrierea în Potfix în coada de mesaje locale:

[root @ linuxbox ~] # getsebool -a | grep postfix
postfix_local_write_mail_spool -> on

Modificări în FirewallD

Folosind interfața grafică pentru a configura FirewallD, trebuie să ne asigurăm că următoarele servicii și porturi sunt activate pentru fiecare zonă:

# ------------------------------------------------- -----
# Corecții în FirewallD
# ------------------------------------------------- -----
# Paravan de protecție
# Zona publică: servicii http, https, imap, pop3, smtp
# Zona publică: porturile 80, 443, 143, 110, 25

# Zona externă: http, https, imap, pop3s, servicii smtp
# Zona externă: porturile 80, 443, 143, 995, 25

Instalăm Dovecot și programele necesare

[root @ linuxbox ~] # yum instalează dovecot mod_ssl procmail telnet

Configurație minimă Dovecot

[root @ linuxbox ~] # nano /etc/dovecot/dovecot.conf
protocoale =imap pop3 lmtp
asculta =*, ::
salut_login = Dovecot este gata!

Dezactivăm în mod explicit autentificarea în text clar a lui Dovecot:

[root @ linuxbox ~] # nano /etc/dovecot/conf.d/10-auth.conf 
disable_plaintext_auth = da

Declarăm Grupul cu privilegiile necesare pentru a interacționa cu Dovecot și locația mesajelor:

[root @ linuxbox ~] # nano /etc/dovecot/conf.d/10-mail.conf
mail_location = mbox: ~ / mail: INBOX = / var / mail /% u
mail_privileged_group = mail
mail_access_groups = mail

Certificate pentru Dovecot

Dovecot generează automat certificatele de test pe baza datelor din fișier /etc/pki/dovecot/dovecot-openssl.cnf. Pentru a genera certificate noi în conformitate cu cerințele noastre, trebuie să parcurgem următorii pași:

[root @ linuxbox ~] # cd / etc / pki / dovecot /
[root @ linuxbox dovecot] # nano dovecot-openssl.cnf
[ req ] default_bits = 1024 encrypt_key = yes distinguished_name = req_dn x509_extensions = cert_type prompt = nu [ req_dn ] # țară (cod cu două litere) C=CU # Nume stat sau provincie (nume complet) ST=Cuba # Nume localitate (de ex. oraș ) L=Havana # Organizatie (ex. firma) O=DesdeLinux.Fan # Numele unității organizaționale (de ex. secțiune) OU=Entuziaști # Nume comun (*.example.com este de asemenea posibil) CN=*.desdelinux.fan # E-mail de contact e-mailAdresa=buzz@desdelinux.fan [ cert_type ] nsCertType = server

Eliminăm certificatele de testare

[root @ linuxbox dovecot] # rm certs / dovecot.pem 
rm: ștergeți fișierul obișnuit „certs / dovecot.pem”? (y / n) y
[root @ linuxbox dovecot] # rm private / dovecot.pem 
rm: ștergeți fișierul obișnuit „private / dovecot.pem”? (y / n) y

Copiem și executăm scriptul mkcert.sh din directorul de documentare

[root @ linuxbox dovecot] # cp /usr/share/doc/dovecot-2.2.10/mkcert.sh. [root @ linuxbox dovecot] # bash mkcert.sh 
Generarea unei chei private RSA de 1024 de biți ......++++++ ................++++++ scrierea unei noi chei private în „/etc/ pki/dovecot/private/dovecot.pem' ----- subiect= /C=CU/ST=Cuba/L=Havana/O=DesdeLinux.Fan/OU=Entuziaști/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan
SHA1 Fingerprint=5F:4A:0C:44:EC:EC:EF:95:73:3E:1E:37:D5:05:F8:23:7E:E1:A4:5A

[root @ linuxbox dovecot] # ls -l certs /
total 4 -rw -------. 1 rădăcină rădăcină 1029 22 mai 16:08 dovecot.pem
[root @ linuxbox dovecot] # ls -l private /
total 4 -rw -------. 1 rădăcină rădăcină 916 22 mai 16:08 dovecot.pem

[root @ linuxbox dovecot] # service dovecot restart
[root @ linuxbox dovecot] # service dovecot status

Certificate pentru Postfix

[root@linuxbox ~]# cd /etc/pki/tls/ [root@linuxbox tls]# openssl req -sha256 -x509 -nodes -newkey rsa:4096 -days 1825 \ -out certs/desdelinux.fan.crt -keyout privat/desdelinux.cheie.ventilator

Generarea unei chei private RSA de 4096 de biți .........++ ..++ scrierea unei noi chei private la „private/domain.tld.key” ----- Vi se va cere să introduceți informații care vor fi încorporate în cererea dumneavoastră de certificat. Ceea ce urmează să introduceți este ceea ce se numește un nume distinctiv sau un DN. Există destul de multe câmpuri, dar puteți lăsa unele necompletate. Pentru unele câmpuri va exista o valoare implicită. Dacă introduceți „.”, câmpul va rămâne necompletat. ----- Numele țării (cod cu două litere) [XX]:Numele statului sau provinciei CU (numele complet) []:Numele localității Cuba (de exemplu, orașul) [Orașul implicit]:Havana Numele organizației (de exemplu, compania) [ Compania implicită Ltd]:DesdeLinux.Numele unității organizaționale ale fanilor (de exemplu, secțiunea) []:Numele comun al entuziaștilor (de exemplu, numele dvs. sau numele de gazdă al serverului dvs.) []:desdelinux.fan Adresă de e-mail []:buzz@desdelinux.ventilator

Configurare minimă Postfix

Adăugăm la sfârșitul fișierului / etc / aliases urmatorul:

rădăcină: buzz

Pentru ca modificările să aibă efect, executăm următoarea comandă:

[root @ linuxbox ~] # newaliases

Configurarea Postifx se poate face prin editarea directă a fișierului /etc/postfix/main.cf sau prin comandă postconf -e având grijă ca toți parametrii pe care dorim să-i modificăm sau să îi adăugăm să se reflecte într-o singură linie a consolei:

  • Fiecare trebuie să declare opțiunile pe care le înțeleg și de care au nevoie!.
[root@linuxbox ~]# postconf -e 'myhostname = desdelinux.ventilator'
[root@linuxbox ~]# postconf -e 'domeniul meu = desdelinux.ventilator'
[root @ linuxbox ~] # postconf -e 'myorigin = $ mydomain'
[root @ linuxbox ~] # postconf -e 'inet_interfaces = all'
[root @ linuxbox ~] # postconf -e 'mydestination = $ myhostname, localhost. $ mydomain, localhost, $ mydomain, mail. $ mydomain, www. $ mydomain, ftp. $ mydomain'

[root @ linuxbox ~] # postconf -e 'mynetworks = 192.168.10.0/24, 172.16.10.0/24, 127.0.0.0/8'
[root @ linuxbox ~] # postconf -e 'mailbox_command = / usr / bin / procmail -a "$ EXTENSION"'
[root @ linuxbox ~] # postconf -e 'smtpd_banner = $ myhostname ESMTP $ mail_name ($ mail_version)'

Adăugăm la sfârșitul fișierului /etc/postfix/main.cf opțiunile date mai jos. Pentru a cunoaște semnificația fiecăruia dintre ele, vă recomandăm să citiți documentația însoțitoare.

biff = nu
append_dot_mydomain = nu
delay_warning_time = 4h
readme_directory = nu
smtpd_tls_cert_file=/etc/pki/certs/desdelinux.fan.crt
smtpd_tls_key_file=/etc/pki/private/desdelinux.cheie.ventilator
smtpd_use_tls = da
smtpd_tls_session_cache_database = btree: $ {data_directory} / smtpd_scache
smtp_tls_session_cache_database = btree: $ {data_directory} / smtp_scache
smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination

# Dimensiunea maximă a cutiei poștale 1024 megaocteți = 1 g și g
mailbox_size_limit = 1073741824

recipient_delimitator = +
maximal_queue_lifetime = 7d
header_checks = regexp: / etc / postfix / header_checks
body_checks = regexp: / etc / postfix / body_checks

# Conturi care trimit o copie a mesajelor primite către alt cont
recipient_bcc_maps = hash: / etc / postfix / accounts_ forwarding_copy

Următoarele linii sunt importante pentru a determina cine poate trimite e-mail și retransmite către alte servere, astfel încât să nu configurăm accidental un „releu deschis” care permite utilizatorilor neautentificați să trimită e-mailuri. Trebuie să consultăm paginile de ajutor Postfix pentru a înțelege ce înseamnă fiecare opțiune.

  • Fiecare trebuie să declare opțiunile pe care le înțeleg și de care au nevoie!.
smtpd_helo_restrictions = permit_mynetworks,
 warn_if_reject refuse_non_fqdn_hostname,
 refuse_invalid_hostname,
 permis

smtpd_sender_restrictions = permit_sasl_authenticated,
 permis_rețelele mele,
 warn_if_reject refuse_non_fqdn_sender,
 refuse_unknown_sender_domain,
 refuse_unauth_pipelining,
 permis

smtpd_client_restrictions = refuse_rbl_client sbl.spamhaus.org,
 refuse_rbl_client blackholes.easynet.nl

# NOTĂ: Opțiunea "check_policy_service inet: 127.0.0.1: 10023"
# activează programul Postgrey și nu ar trebui să îl includem
# altfel vom folosi Postgrey

smtpd_recipient_restrictions = refuse_unauth_pipelining,
 permis_rețelele mele,
 permis_sasl_authenticated,
 refuse_non_fqdn_recipient,
 refuse_unknown_recipient_domain,
 refuse_unauth_destination,
 check_policy_service inet: 127.0.0.1: 10023,
 permis

smtpd_data_restrictions = refuse_unauth_pipelining

smtpd_relay_restrictions = refuse_unauth_pipelining,
 permis_rețelele mele,
 permis_sasl_authenticated,
 refuse_non_fqdn_recipient,
 refuse_unknown_recipient_domain,
 refuse_unauth_destination,
 check_policy_service inet: 127.0.0.1: 10023,
 permis
 
smtpd_helo_required = da
smtpd_delay_reject = da
disable_vrfy_command = da

Creăm fișierele / etc / postfix / body_checks y / etc / postfix / accounts_forwarding_copyși modificăm fișierul / etc / postfix / header_checks.

  • Fiecare trebuie să declare opțiunile pe care le înțeleg și de care au nevoie!.
[root @ linuxbox ~] # nano / etc / postfix / body_checks
# Dacă acest fișier este modificat, nu este necesar # pentru a rula postmap # Pentru a testa regulile, rulați ca root: # postmap -q 'super new v1agra' regexp: / etc / postfix / body_checks
# Ar trebui să revină: # RESPINGE Regula nr. 2 Corpul mesajului anti-spam
/ viagra / REJECT Regula # 1 Anti Spam din corpul mesajului
/ super new v [i1] agra / REJECT Regula nr. 2 Corpul mesajului anti spam

[root @ linuxbox ~] # nano / etc / postfix / accounts_ forwarding_copy
# După modificare, trebuie să executați: # postmap / etc / postfix / accounts_ forwarding_copy
# și fișierul este creat sau măsurat: # /etc/postfix/accounts_forwarding_copy.db
# ----------------------------------------- # UN singur cont pentru a redirecționa un BCC copie # BCC = Black Carbon Copy # Exemplu: # webadmin@desdelinux.fan buzz@desdelinux.ventilator

[root @ linuxbox ~] # postmap / etc / postfix / accounts_ forwarding_copy

[root @ linuxbox ~] # nano / etc / postfix / header_checks
# Adăugați la sfârșitul fișierului # NU CERERE Postmap deoarece sunt expresii regulate
/ ^ Subiect: =? Big5? / REJECT Codificarea chineză neacceptată de acest server
/ ^ Subiect: =? EUC-KR? / REJECT Codarea coreeană nu este permisă de acest server
/ ^ Subiect: ADV: / REJECT Reclame neacceptate de acest server
/^From:.*\@.*\.cn/ REJECT Ne pare rău, e-mailul chinezesc nu este permis aici
/^ De la:.*\@.*\.kr/ REJECT Ne pare rău, e-mailul coreean nu este permis aici
/^From:.*\@.*\.tr/ REJECT Ne pare rău, mailul turcesc nu este permis aici
/^From:.*\@.*\.ro/ REJECT Ne pare rău, poșta română nu este permisă aici
/^(Received|Message-Id|X-(Mailer|Sender)):.*\b(AutoMail|E-Broadcaster|Emailer Platinum | Thunder Server | eMarksman | Extractor | e-Merge | din stealth [^.] | Global Messenger | GroupMaster | Mailcast | MailKing | Match10 | MassE-Mail | massmail \ .pl | News Breaker | Powermailer | Quick Shot | Ready Aim Fire | WindoZ | WorldMerge | Yourdora | Lite) \ b / REJECT Nu sunt permise mesaje de masă
/ ^ De la: "spammer / REJECT
/ ^ De la: „spam / REJECT
/^Subiect:.*viagra/ DISCARD
# Extensii periculoase
/ name = [^> Iluminación * \. (bat | cmd | exe | com | pif | reg | scr | vb | vbe | vbs) / REJECT REJECT Nu acceptăm atașamente cu aceste extensii

Verificăm sintaxa, repornim Apache și Postifx și activăm și pornim Dovecot

[root @ linuxbox ~] # verificare postfix
[root @ linuxbox ~] #

[root @ linuxbox ~] # systemctl reporniți httpd
[root @ linuxbox ~] # systemctl status httpd

[root @ linuxbox ~] # systemctl reporniți postfix
[root @ linuxbox ~] # systemctl status postfix

[root @ linuxbox ~] # systemctl status dovecot
● dovecot.service - Server de e-mail Dovecot IMAP / POP3 Încărcat: încărcat (/usr/lib/systemd/system/dovecot.service; dezactivat; presetare furnizor: dezactivat) Activ: inactiv (mort)

[root @ linuxbox ~] # systemctl activate dovecot
[root @ linuxbox ~] # systemctl start dovecot
[root @ linuxbox ~] # systemctl reporniți dovecot
[root @ linuxbox ~] # systemctl status dovecot

Verificări la nivel de consolă

  • Este foarte important, înainte de a continua cu instalarea și configurarea altor programe, să efectuați verificările minime necesare ale serviciilor SMTP și POP.

Local de pe server în sine

Trimitem un e-mail utilizatorului local Legolas.

[root @ linuxbox ~] # echo "Bună ziua. Acesta este un mesaj de test" | mail -s "Test" legolas

Verificăm căsuța poștală a Legolas.

[root @ linuxbox ~] # openssl s_client -crlf -connect 127.0.0.1:110 -starttls pop3

După mesaj Dovecot este gata! continuăm:

---
+ OK Dovecot este gata!
UTILIZATOR legolas +OK PASS legolas +OK Conectat. STAT +OK 1 559 LIST +OK 1 mesaje: 1 559 . RETR 1 +OK 559 octeți Retur-Cale:desdelinux.fan> X-Original-To: legolas Livrat-To: legolas@desdelinux.fan Primit: de desdelinux.fan (Postfix, de la userid 0) id 7EA22C11FC57; Luni, 22 mai 2017 10:47:10 -0400 (EDT) Data: Luni, 22 mai 2017 10:47:10 -0400 Către: legolas@desdelinux.fan Subiect: Test utilizator-Agent: Heirloom mailx 12.5 7/5/10 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Codare de transfer de conținut: 7 biți ID mesaj: <20170522144710.7EA22C11FC57@desdelinux.fan> De la: root@desdelinux.fan (rădăcină) Bună. Acesta este un mesaj de testare. RENUNSA TERMINAT
[root @ linuxbox ~] #

Telecomandele de pe un computer pe LAN

Să trimitem un alt mesaj către Legolas de pe alt computer de pe LAN. Rețineți că securitatea TLS NU este strict necesară în cadrul rețelei IMM-urilor.

buzz @ sysadmin: ~ $ sendemail -f buzz@deslinux.fan \
-t legolas@desdelinux.ventilator\
-u "Bună ziua" \
-m "Salutări Legolas de la prietenul tău Buzz" \
- e-mailul.desdelinux.fan -o tls=nu
22 mai 10:53:08 sysadmin sendemail [5866]: E-mailul a fost trimis cu succes!

Dacă încercăm să ne conectăm Telnet De la o gazdă de pe LAN - sau de pe Internet, desigur - la Dovecot, se vor întâmpla următoarele pentru că dezactivăm autentificarea în text clar:

buzz@sysadmin:~$ mail telnet.desdelinux.fan 110Încercare 192.168.10.5...
Conectat la linuxbox.desdelinux.ventilator. Caracterul de evacuare este „^]”. +OK Dovecot este gata! utilizator legolas
-ERR [AUTH] Autentificare completă a textului este interzisă pe conexiunile nesecurizate (SSL / TLS).
quit + OK Deconectare Conexiune închisă de gazdă străină.
buzz @ sysadmin: ~ $

Trebuie să o facem OpenSSL. Ieșirea completă a comenzii ar fi:

buzz@sysadmin:~$ openssl s_client -crlf -connect mail.desdelinux.fan:110 -starttls pop3
CONECTAT (00000003)
adâncime=0 C = CU, ST = Cuba, L = Havana, O = DesdeLinux.Fan, OU = Entuziaști, CN = *.desdelinux.fan, emailAddress = buzz@desdelinux.ventilator
verificare eroare: num = 18: certificat auto semnat verifica returnare: 1
adâncime=0 C = CU, ST = Cuba, L = Havana, O = DesdeLinux.Fan, OU = Entuziaști, CN = *.desdelinux.fan, emailAddress = buzz@desdelinux.ventilator verifica returnarea:1
--- Lanț de certificate 0 s:/C=CU/ST=Cuba/L=Havana/O=DesdeLinux.Fan/OU=Entuziaști/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan i:/C=CU/ST=Cuba/L=Havana/O=DesdeLinux.Fan/OU=Entuziaști/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan
---
Server certificate
-----BEGIN CERTIFICATE-----
MIICyzCCAjSgAwIBAgIJAKUHI/2ZD+MeMA0GCSqGSIb3DQEBBQUAMIGbMQswCQYD
VQQGEwJDVTENMAsGA1UECBMEQ3ViYTEPMA0GA1UEBxMGSGFiYW5hMRcwFQYDVQQK
Ew5EZXNkZUxpbnV4LkZhbjEUMBIGA1UECxMLRW50dXNpYXN0YXMxGTAXBgNVBAMU
ECouZGVzZGVsaW51eC5mYW4xIjAgBgkqhkiG9w0BCQEWE2J1enpAZGVzZGVsaW51
eC5mYW4wHhcNMTcwNTIyMjAwODEwWhcNMTgwNTIyMjAwODEwWjCBmzELMAkGA1UE
BhMCQ1UxDTALBgNVBAgTBEN1YmExDzANBgNVBAcTBkhhYmFuYTEXMBUGA1UEChMO
RGVzZGVMaW51eC5GYW4xFDASBgNVBAsTC0VudHVzaWFzdGFzMRkwFwYDVQQDFBAq
LmRlc2RlbGludXguZmFuMSIwIAYJKoZIhvcNAQkBFhNidXp6QGRlc2RlbGludXgu
ZmFuMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC7wckAiNNfYSz5hdePzKuZ
m2MMuhGDvwrDSPDEcVutznbZSgJ9bvTo445TR+Bnk+OZ80lujS2hP+nBmqxzJbpc
XR7E9eWIXxr4fP4HpRrCA8NxlthEsapVMSHW+lnPBqF2b/Bt2eYyR7gJhtlP6gRG
V57MmgL8BdYAJLvxqxDIxQIDAQABoxUwEzARBglghkgBhvhCAQEEBAMCBkAwDQYJ
KoZIhvcNAQEFBQADgYEAAuYU1nIXTbXtddW+QkLskum7ESryHZonKOCelfn2vnRl
8oAgHg7Hbtg/e6sR/W9m3DObP5DEp3lolKKIKor7ugxtfA4PBtmgizddfDKKMDql
LT+MV5/DP1pjQbxTsaLlZfveNxfLRHkQY13asePy4fYJFOIZ4OojDEGQ6/VQBI8=
-----END CERTIFICATE-----
subject=/C=CU/ST=Cuba/L=Habana/O=DesdeLinux.Fan/OU=Entuziaști/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan emiter=/C=CU/ST=Cuba/L=Havana/O=DesdeLinux.Fan/OU=Entuziaști/CN=*.desdelinux.fan/emailAddress=buzz@desdelinux.fan --- Niciun certificat de client Nume CA trimise Cheie Temp Server: ECDH, secp384r1, 384 de biți --- SSL handshake a citit 1342 de octeți și a scris 411 de octeți --- Nou, TLSv1/SSLv3, Cipher este ECDHE-RSA-AES256 -GCM-SHA384 Cheia publică a serverului este de 1024 de biți Renegociere securizată este acceptată Compresie: NIMIC Expansiune: NIMIC Sesiune SSL: Protocol: TLSv1.2 Cifrare: ECDHE-RSA-AES256-GCM-SHA384 ID-sesiune: C745B4A0236204 F16234DB 15C9BF3E084125D5989A ID-sesiune- ctx : Master-Key: 5D6C5295B4CEA2F73AF1904AF204D564C76361F50373F8879A793FD7CD7506F04473777BC6BFF3503E9F919: Non-Key Principale1SK837F67: Non-Key29SK309F352526: None P-Arr5SK5F300 Sugestie de identitate: Niciuna Sugestie pentru durata de viață a biletului de sesiune TLS: 0000 (secunde) Tichet de sesiune TLS: 4 - 3e 8a f29 7 4a 63f 72 7- ee f6 a4 7f fc ec 1e 0010c N:.)zOcr...O...~. 2 - 4c d8 be a92 be 2 98e ae-7 87e 6 45d 5 c17 8 a0020 ,.....~.mE... 3 - db 86a 80 8 df 8b dc 8d-f1 68f 6 7e db 3 a86 e0030 .:.......hn.... 08 - 35 5 e98 eb 8 b4 a98 68-1 b7 ea f72 7 f1 c79 5 .0040......h...r ..y 89 - 4 28a 3 e85 4 a8 9b da-e7 29a 7 c77 22 bf 0 0050d .J(......z).w.". 5 - bd 6c f61 8 1c a14 31 bd-cb 27 66 7 51a dc 28 1 .\.a.....0060'fz.Q( 7 - b35 din 2 bd 0b 4f d3 ec-d0 e14 8 c65 03 1 b35 5 ..5.+.... ...e ..0070 38 - 34 8 f48 de 31 da ae 90-6 bd f0 b6 e9 19c cf 84 1..H..0080........ 5 - f42 56 13 88 0 b8 5c db-aa ee 7a d1 2b 71c dd 0090 .BV.......Z..,.q 7 - 1a f03 70 90 94 9 c0 62a-5 e0 9f 3c bf dc 0c a1495484262 z..p.. ..b. ....<. Ora de pornire: 300 Timeout: 18 (sec) Verificați codul de returnare: XNUMX (certificat autosemnat) ---
+ OK Dovecot este gata!
UTILIZATOR legolas
+ OK
PASS legolas
+ OK Conectat.
LISTA
+ OK 1 mesaje: 1 1021.
ÎNAPOI 1
+OK 1021 octeți Return-Cale: X-Original-Către: legolas@desdelinux.fan Livrat la: legolas@desdelinux.fan Primit: de la sysadmin.desdelinux.fan (gateway [172.16.10.1]) de către desdelinux.fan (Postfix) cu ID ESMTP 51886C11E8C0 ptdesdelinux.fan>; Luni, 22 mai 2017 15:09:11 -0400 (EDT) ID-ul mesajului: <919362.931369932-sendEmail@sysadmin> De la: „buzz@deslinux.fan” Către: „legolas@desdelinux.ventilator"desdelinux.fan> Subiect: Salut Data: Luni, 22 mai 2017 19:09:11 +0000 X-Mailer: sendEmail-1.56 MIME-Version: 1.0 Content-Type: multipart/related; boundary="----Delimitator MIME pentru sendEmail-365707.724894495" Acesta este un mesaj format din mai multe părți în format MIME. Pentru a afișa corect acest mesaj aveți nevoie de un program de e-mail compatibil cu MIME-Versiunea 1.0. ------Delimitator MIME pentru sendEmail-365707.724894495 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Salutări Legolas de la prietenul tău Buzz ------Delimitator MIME pentru sendEmail-365707.724894495-- .
PĂRĂSI
+ OK Deconectare. închis
buzz @ sysadmin: ~ $

Veveriță

Veveriță este un client web scris integral în PHP. Acesta include suport PHP nativ pentru protocoalele IMAP și SMTP și oferă compatibilitate maximă cu diferitele browsere utilizate. Funcționează corect pe orice server IMAP. Are toate funcționalitățile de care aveți nevoie de la un client de e-mail, inclusiv asistență MIME, agendă și gestionarea folderelor.

[root @ linuxbox ~] # yum instalează squirrelmail
[root @ linuxbox ~] # service httpd restart

[root @ linuxbox ~] # nano /etc/squirrelmail/config.php
$domain = 'desdelinux.ventilator';
$imapServerAddress = 'mail.desdelinux.ventilator';
$ imapPort = 143;
$smtpServerAddress = 'desdelinux.ventilator';

[root @ linuxbox ~] # service httpd reload

Politică de trimitere DNS Framenwork sau înregistrare SPF

În articol Server DNS autorizat NSD + Shorewall Am văzut că Zona «desdelinux.fan» a fost configurat după cum urmează:

root@ns:~# nano /etc/nsd/desdelinux.zona.fan
$ORIGINĂ desdelinux.ventilator. $TTL 3H @ IN SOA nr.desdelinux.ventilator. rădăcină.desdelinux.ventilator. ( 1 ; serial 1D ; reîmprospătare 1H ; reîncercați 1W ; expirare 3H ) ; minim sau ; Timp negativ de stocare în cache; @ IN NS ns.desdelinux.ventilator. @ IN MX 10 e-mail.desdelinux.ventilator.
@ IN TXT "v=spf1 a:mail.desdelinux.fan -toate"
; ; Înregistrare pentru a rezolva interogările de săpătură desdelinux.fan @ IN A 172.16.10.10 ; ns ÎN A 172.16.10.30 mail ÎN CNAME   desdelinux.ventilator. chat ÎN CNAME   desdelinux.ventilator. www ÎN CNAME   desdelinux.ventilator. ; ; Înregistrările SRV legate de XMPP
_xmpp-server._tcp ÎN SRV 0 0 5269 desdelinux.ventilator. _xmpp-client._tcp ÎN SRV 0 0 5222 desdelinux.ventilator. _jabber._tcp ÎN SRV 0 0 5269 desdelinux.ventilator.

În acesta, registrul este declarat:

@ IN TXT "v=spf1 a:mail.desdelinux.fan -toate"

Pentru a avea același parametru configurat pentru rețeaua IMM sau LAN, trebuie să modificăm fișierul de configurare Dnsmasq după cum urmează:

# înregistrări TXT. De asemenea, putem declara o înregistrare SPF txt-record=desdelinux.fan,"v=spf1 a:mail.desdelinux.fan -toate"

Apoi, repornim serviciul:

[root @ linuxbox ~] # service dnsmasq restart
[root@linuxbox ~]# stare serviciu dnsmasq [root@linuxbox ~]# gazdă -t e-mail TXT.desdelinux.corespondență de la fani.desdelinux.fan este un alias pentru desdelinux.ventilator.
desdelinux.fan text descriptiv „v=spf1 a:mail.desdelinux.fan -toate"

Certificate Autosemnate și Apache sau httpd

Chiar dacă browserul dvs. vă spune că «Proprietarul e-mail.desdelinux.ventilator Ați configurat site-ul dvs. incorect. Pentru a împiedica furarea informațiilor dvs., Firefox nu s-a conectat la acest site web ”, certificatul generat anterior ESTE VALABIL, și va permite acreditările dintre client și server să călătorească criptate, după ce vom accepta certificatul.

Dacă doriți și ca modalitate de unificare a certificatelor, puteți declara pentru Apache aceleași certificate pe care le-ați declarat pentru Postfix, ceea ce este corect.

[root @ linuxbox ~] # nano /etc/httpd/conf.d/ssl.conf
SSLCertificateFile /etc/pki/tls/certs/desdelinux.fan.crt
SSLCertificateKeyFile /etc/pki/tls/private/desdelinux.cheie.ventilator

[root @ linuxbox ~] # repornirea serviciului httpd
[root @ linuxbox ~] # starea httpd a serviciului

Grupul Diffie-Hellman

Problema securității devine mai dificilă în fiecare zi pe internet. Unul dintre cele mai frecvente atacuri asupra conexiunilor SSL, Este logjam și pentru a vă apăra împotriva acestuia este necesar să adăugați parametri non-standard la configurația SSL. Pentru aceasta există RFC-3526 «Mai mult modular exponențial (MODP) Diffie-Hellman Grupuri pentru schimb de chei Internet (IKE)“.

[root @ linuxbox ~] # cd / etc / pki / tls /
[root @ linuxbox tls] # openssl dhparam -out private / dhparams.pem 2048
[root @ linuxbox tls] # chmod 600 private / dhparams.pem

Conform versiunii de Apache pe care am instalat-o, vom folosi grupul Diffie-Helman din fișier /etc/pki/tls/dhparams.pem. Dacă este o versiune 2.4.8 sau mai recentă, va trebui să adăugăm la fișier /etc/httpd/conf.d/ssl.conf următoarea linie:

SSLOpenSSLConfCmd DHParameters "/etc/pki/tls/private/dhparams.pem"

Versiunea Apache pe care o folosim este:

[root @ linuxbox tls] # yum info httpd
Plugin-uri încărcate: fastestmirror, langpacks Încărcare viteze oglindă din fișierul gazdă în cache Pachete instalate Nume: httpd Arhitectură: x86_64
Versiune: 2.4.6
Lansare: 45.el7.centos Dimensiune: 9.4 M Depozit: instalat Din depozit: Rezumat bază-repo: URL server Apache HTTP: http://httpd.apache.org/ Licență: ASL 2.0 Descriere: Serverul Apache HTTP este un puternic, eficient și extensibil: server web.

Deoarece avem o versiune anterioară versiunii 2.4.8, adăugăm la sfârșitul certificatului CRT generat anterior, conținutul grupului Diffie-Helman:

[root @ linuxbox tls] # cat private / dhparams.pem >> certificate/desdelinux.fan.crt

Dacă doriți să verificați dacă parametrii DH au fost corect adăugați la certificatul CRT, executați următoarele comenzi:

[root @ linuxbox tls] # cat private / dhparams.pem 
----- ÎNCEPE PARAMETRI DH -----
MIIBCAKCAQEAnwfWSlirEuMwJft0hgAdB0km9d3qGGiErRXPfeZU+Tqp/ZFOCdzP
/O6NeXuHI4vnsTDWEAjXmpRzq/z1ZEWQa6j+l1PgTgk2XqaMViD/gN+sFPnx2EmV
keVcMDqG03gnmCgO9R4aLYT8uts5T6kBRhvxUcrk9Q7hIpGCzGtdgwaVf1cbvgOe
8kfpc5COh9IxAYahmNt+5pBta0SDlmoDz4Rk/4AFXk2mjpDYoizaYMPeIInGUzOv
/LE6Y7VVRY/BJG9EZ5pVYJPCruPCUHkhvm+r9Tt56slk+HE2d52uFRSDd2FxK3n3
cN1vJ5ogsvmHayWUjVUA18LLfGSxEFsc4wIBAg==
----- FINALIZARE PARAMETRI DH -----

[root@linuxbox tls]# certificate de pisică/desdelinux.fan.crt 
-----BEGIN CERTIFICATE-----
MIIGBzCCA++gAwIBAgIJANd9FLCkDBfzMA0GCSqGSIb3DQEBCwUAMIGZMQswCQYD
VQQGEwJDVTENMAsGA1UECAwEQ3ViYTEPMA0GA1UEBwwGSGFiYW5hMRcwFQYDVQQK
DA5EZXNkZUxpbnV4LkZhbjEUMBIGA1UECwwLRW50dXNpYXN0YXMxFzAVBgNVBAMM
DmRlc2RlbGludXguZmFuMSIwIAYJKoZIhvcNAQkBFhNidXp6QGRlc2RlbGludXgu
ZmFuMB4XDTE3MDUyMjE0MDQ1MloXDTIyMDUyMTE0MDQ1MlowgZkxCzAJBgNVBAYT
AkNVMQ0wCwYDVQQIDARDdWJhMQ8wDQYDVQQHDAZIYWJhbmExFzAVBgNVBAoMDkRl
c2RlTGludXguRmFuMRQwEgYDVQQLDAtFbnR1c2lhc3RhczEXMBUGA1UEAwwOZGVz
ZGVsaW51eC5mYW4xIjAgBgkqhkiG9w0BCQEWE2J1enpAZGVzZGVsaW51eC5mYW4w
ggIiMA0GCSqGSIb3DQEBAQUAA4ICDwAwggIKAoICAQCn5MkKRdeFYiN+xgGdsRn8
sYik9X75YnJcbeZrD90igfPadZ75ehtfYIxxOS+2U+omnFgr/tCKYUVJ50seq/lB
idcLP4mt7wMrMZUDpy1rlWPOZGKkG8AdStCYI8iolvJ4rQtLcsU6jhRzEXsZxfOb
O3sqc71yMIj5qko55mlsEVB3lJq3FTDQAY2PhXopJ8BThW1T9iyl1HlYpxj7OItr
/BqiFhxbP17Fpd3QLyNiEl+exVJURYZkvuZQqVPkFAlyNDh5I2fYfrI9yBVPBrZF
uOdRmT6jv6jFxsBy9gggcy+/u1nhlKssLBEhyaKfaQoItFGCAmevkyzdl1LTYDPY
ULi79NljQ1dSwWgraZ3i3ACZIVO/kHcOPljsNxE8omI6qNFWqFd1qdPH5S4c4IR1
5URRuwyVNffEHKaCJi9vF9Wn8LVKnN/+5zZGRJA8hI18HH9kF0A1sCNj1KKiB/xe
/02wTzR/Gbj8pkyO8fjVBvd/XWI8EMQyMc1gvtIAvZ00SAB8c1NEOCs5pt0Us6pm
1lOkgD6nl90Dx9p805mTKD+ZcvRaShOvTyO3HcrxCxOodFfZQCuHYuQb0dcwoK2B
yOwL77NmxNH1QVJL832lRARn8gpKoRAUrzdTSTRKmkVrOGcfvrCKhEBsJ67Gq1+T
YDLhUiGVbPXXR9rhAyyX2QIDAQABo1AwTjAdBgNVHQ4EFgQURGCMiLVLPkjIyGZK
UrZgMkO0X8QwHwYDVR0jBBgwFoAURGCMiLVLPkjIyGZKUrZgMkO0X8QwDAYDVR0T
BAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAgEAdy1tH1DwfCW47BNJE1DW8Xlyp+sZ
uYTMOKfNdnAdeSag1WshR6US6aCtU6FkzU/rtV/cXDKetAUIzR50aCYGTlfMCnDf
KKMZEPjIlX/arRwBkvIiRTU1o3HTniGp9d3jsRWD/AvB3rSus4wfuXeCoy7Tqc9U
FaXqnvxhF8/ptFeeCeZgWu16zyiGBqMj4ZaQ7RxEwcoHSd+OByg8E9IE2cYrWP2V
6P7hdCXmw8voMxCtS2s++VRd1fGqgGxXjXT8psxmY2MrseuTM2GyWzs+18A3VVFz
UXLD2lzeYs638DCMXj5/BMZtVL2a4OhMSYY4frEbggB3ZgXhDDktUb7YhnBTViM3
2sgJJOSTltOgAnyOPE0CDcyktXVCtu3PNUc+/AB3UemI9XCw4ypmTOMaIZ2Gl6Uo
pmTk41fpFuf8pqW3ntyu43lC5pKRBqhit6MoFGNOCvFYFBWcltpqnjsWfY2gG/b5
8D5HsedueqkAsVblKPBFpv1BB9X0HhBUYsrz8jNGZGbkgR4XQoIoLbQZHEB35APU
4yT1Lzc3jk34yZF5ntmFt3wETSWwJZ+0cYPw7n4E6vbs1C7iKAMQRVy+lI5f8XYS
YKfrieiPPdmQ22Zm2Tbkqi4zjJBWmstrw6ezzAQNaaAkiOiJIwvXU81KYsN37THh
Nf0/JsEjPklCugE=
-----END CERTIFICATE-----
-----BEGIN DH PARAMETERS-----
MIIBCAKCAQEAnwfWSlirEuMwJft0hgAdB0km9d3qGGiErRXPfeZU+Tqp/ZFOCdzP
/O6NeXuHI4vnsTDWEAjXmpRzq/z1ZEWQa6j+l1PgTgk2XqaMViD/gN+sFPnx2EmV
keVcMDqG03gnmCgO9R4aLYT8uts5T6kBRhvxUcrk9Q7hIpGCzGtdgwaVf1cbvgOe
8kfpc5COh9IxAYahmNt+5pBta0SDlmoDz4Rk/4AFXk2mjpDYoizaYMPeIInGUzOv
/LE6Y7VVRY/BJG9EZ5pVYJPCruPCUHkhvm+r9Tt56slk+HE2d52uFRSDd2FxK3n3
cN1vJ5ogsvmHayWUjVUA18LLfGSxEFsc4wIBAg==
----- FINALIZARE PARAMETRI DH -----

După aceste modificări, trebuie să repornim serviciile Postfix și httpd:

[root @ linuxbox tls] # service postfix restart
[root @ linuxbox tls] # service postfix status
[root @ linuxbox tls] # service httpd restart
[root @ linuxbox tls] # service httpd status

Includerea grupului Diffie-Helman în certificatele noastre TLS poate face conectarea prin HTTPS un pic mai lentă, dar adăugarea de securitate merită.

Verificând Squirrelmail

ATUNCI că certificatele sunt generate corect și că le verificăm funcționarea corectă așa cum am făcut prin comenzile consolei, îndreptați browserul preferat către adresa URL http://mail.desdelinux.fan/webmail și se va conecta la clientul web după acceptarea certificatului corespunzător. Rețineți că, chiar dacă specificați protocolul HTTP, acesta va fi redirecționat către HTTPS și acest lucru se datorează setărilor implicite oferite de CentOS pentru Squirrelmail. Vedeți fișierul /etc/httpd/conf.d/squirrelmail.conf.

Despre cutiile poștale ale utilizatorilor

Dovecot creează cutiile poștale IMAP în dosar Acasă din fiecare utilizator:

[root @ linuxbox ~] # ls -la /home/legolas/mail/.imap/
total 12 drwxrwx ---. 5 legolas mail 4096 22 mai 12:39. drwx ------. 3 legolas legolas 75 22 mai 11:34 .. -rw -------. 1 legolas legolas 72 22 mai 11:34 dovecot.mailbox.log -rw -------. 1 legolas legolas 8 mai 22 12:39 dovecot-uidvalidity -r - r - r--. 1 legolas legolas 0 22 mai 10:12 dovecot-uidvalidity.5922f1d1 drwxrwx ---. 2 legolas mail 56 mai 22 10:23 INBOX drwx ------. 2 legolas legolas 56 22 mai 12:39 Sent drwx ------. 2 legolas legolas 30 mai 22 11:34 Coș de gunoi

De asemenea, sunt stocate în / var / mail /

[root @ linuxbox ~] # less / var / mail / legolas
De la MAILER_DAEMON Luni, 22 mai 10:28:00 2017 Data: Luni, 22 mai 2017 10:28:00 -0400 De la: Date interne ale sistemului de e-mail Subiect: NU ȘTERGE ACEST MESAJ -- FOLDER INTERNAL DATE ID mesaj: <1495463280@linuxbox> . Este creat automat de software-ul sistemului de e-mail. Dacă sunt șterse, datele importante ale folderului se vor pierde și vor fi re-create cu datele resetate la valorile inițiale. De la root@desdelinux.fan Luni 22 mai 10:47:10 2017 Cale de întoarcere:desdelinux.fan> X-Original-To: legolas Livrat-To: legolas@desdelinux.fan Primit: de desdelinux.fan (Postfix, de la userid 0) id 7EA22C11FC57; Luni, 22 mai 2017 10:47:10 -0400 (EDT) Data: Luni, 22 mai 2017 10:47:10 -0400 Către: legolas@desdelinux.fan Subiect: Test utilizator-Agent: Heirloom mailx 12.5 7/5/10 MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Codare de transfer de conținut: 7 biți ID mesaj: <20170522144710.7EA22C11FC57@desdelinux.fan> De la: root@desdelinux.fan (rădăcină) X-UID: 7 Stare: RO Bună ziua. Acesta este un mesaj de testare de la buzz@deslinux.fan Luni 22 mai 10:53:08 2017 Return-Path: X-Original-Către: legolas@desdelinux.fan Livrat la: legolas@desdelinux.fan Primit: de la sysadmin.desdelinux.fan (gateway [172.16.10.1]) de către desdelinux.fan (Postfix) cu ID ESMTP C184DC11FC57 ptdesdelinux.fan>; Luni, 22 mai 2017 10:53:08 -0400 (EDT) ID-ul mesajului: <739874.219379516-sendEmail@sysadmin> De la: „buzz@deslinux.fan” Către: „legolas@desdelinux.ventilator"desdelinux.fan> Subiect: Salut Data: Luni, 22 mai 2017 14:53:08 +0000 X-Mailer: sendEmail-1.56 MIME-Version: 1.0 Content-Type: multipart/related; boundary="----Delimitator MIME pentru sendEmail-794889.899510057
/ var / mail / legolas

Rezumatul miniseriei PAM

Ne-am uitat la nucleul unui Mailserver și am pus un pic accent pe securitate. Sperăm că articolul va servi ca punct de intrare într-un subiect la fel de complicat și susceptibil de a face greșeli precum implementarea manuală a unui server de poștă electronică.

Folosim autentificarea utilizatorului local, deoarece dacă citim corect fișierul /etc/dovecot/conf.d/10-auth.conf, vom vedea că în final este inclus -în mod implicit- fișierul de autentificare al utilizatorilor sistemului ! include auth-system.conf.ext. Tocmai acest fișier ne spune în antetul său că:

[root @ linuxbox ~] # less /etc/dovecot/conf.d/auth-system.conf.ext
# Autentificare pentru utilizatorii de sistem. Inclus de la 10-auth.conf. # # # # Autentificare PAM. Preferat în zilele noastre de majoritatea sistemelor.
# PAM este de obicei utilizat fie cu userdb passwd, fie cu userdb static. # REȚINEȚI: Veți avea nevoie de fișierul /etc/pam.d/dovecot creat pentru autentificarea PAM # pentru a funcționa efectiv. passdb {driver = pam # [session = yes] [setcred = yes] [failure_show_msg = yes] [max_requests = ] # [cache_key = ] [ ] #args = dovecot}

Iar celălalt fișier există /etc/pam.d/dovecot:

[root @ linuxbox ~] # cat /etc/pam.d/dovecot 
#% PAM-1.0 auth obligatoriu pam_nologin.so auth include password-auth account include password-session session include password-auth

Ce încercăm să transmitem despre autentificarea PAM?

  • CentOS, Debian, Ubuntu și multe alte distribuții Linux instalează Postifx și Dovecot cu autentificare locală activată implicit.
  • Multe articole de pe Internet folosesc MySQL - și mai recent MariaDB - pentru a stoca utilizatori și alte date referitoare la un Mailserver. DAR acestea sunt servere pentru MII DE UTILIZATORI și nu pentru o rețea clasică de IMM-uri cu - poate - sute de utilizatori.
  • Autentificarea prin PAM este necesară și suficientă pentru a furniza servicii de rețea atâta timp cât acestea rulează pe un singur server așa cum am văzut în această miniserie.
  • Utilizatorii stocați într-o bază de date LDAP pot fi mapate ca și cum ar fi utilizatori locali, iar autentificarea PAM poate fi utilizată pentru a furniza servicii de rețea de la diferite servere Linux care acționează ca clienți LDAP către serverul central de autentificare. În acest fel, am lucra cu acreditările utilizatorilor stocate în baza de date centrală a serverului LDAP și NU ar fi esențial să menținem o bază de date cu utilizatorii locali.

Până la următoarea aventură!


Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   şopârlă el a spus

    Crede-mă că, în practică, acesta este un proces care dă mai mult de un sysadmin dureri de cap severe, sunt convins că în viitor va fi un ghid de referință pentru oricine dorește să își gestioneze propriile e-mailuri, un caz practic într-un abc atunci când se integrează postfix, dovecot, squirrelmail ..

    Vă mulțumesc mult pentru contribuția laudabilă,

  2.   Darko el a spus

    De ce să nu folosiți Mailpile, când vine vorba de securitate, cu PGP? De asemenea, Roundcube are o interfață mult mai intuitivă și poate integra și PGP.

  3.   Martin el a spus

    Acum 3 zile am citit postarea, știu să vă mulțumesc. Nu intenționez să instalez un server de e-mail, dar este întotdeauna util să vezi crearea de certificate, utile pentru alte aplicații și aceste tutoriale expiră cu greu (mai ales atunci când folosești centOS).

  4.   Federico el a spus

    Manuel Cillero: Vă mulțumim că ați conectat la și de la blogul dvs. acest articol, care este nucleul minim al unui server de e-mail bazat pe Postfix și Dovecot.

    Șopârlă: Ca întotdeauna, evaluarea dvs. este foarte bine primită. Mulțumesc.

    Darko: În aproape toate articolele mele exprim mai mult sau mai puțin că „Toată lumea implementează serviciile cu programele care le plac cel mai mult”. Mulțumesc pentru comentariu.

    Martin: Vă mulțumesc și pentru că ați citit articolul și sper că vă va ajuta în munca voastră.

  5.   Carburus zodiacal el a spus

    Amicul articol prieten Federico. Vă mulțumesc foarte mult pentru un tuto atât de bun.

  6.   arhie el a spus

    excelent, deși aș folosi „utilizatori virtuali” pentru a evita crearea unui utilizator de sistem de fiecare dată când adaug un e-mail, mulțumesc că am învățat o mulțime de lucruri noi și acesta este tipul de postare pe care o așteptam

  7.   Willinton Acevedo Rueda el a spus

    Bună ziua,

    Aceștia ar fi încurajați să facă același lucru cu serverul director fedora + postifx + dovecot + thunderbird sau Outlook.

    Am o parte, dar sunt blocat, aș împărtăși cu plăcere documentul comunității @desdelinux

  8.   Fico el a spus

    Nu mi-am imaginat că va ajunge la mai mult de 3000 de vizite !!!

    Salutări Șopârlă!

  9.   capăt întunecat el a spus

    Excelent coleg tutorial.
    Ați putea să o faceți pentru Debian 10 cu utilizatorii Active Directory montați pe Samba4 ???
    Îmi imaginez că ar fi aproape la fel, dar schimbând tipul de autentificare.
    Secțiunea pe care o dedicați creării de certificate auto-semnate este foarte interesantă.