Cum se instalează Postfix, Dovecot și Roundcube pe Ubuntu 20.04

Postfix este un Agent de transfer de e-mail (MTA) pentru rutarea și livrarea e-mailului (e-mailului). Dovecot este un IMAP și POP3 Mail Delivery Agent (MDA). Aceste două aplicații open-source funcționează bine cu Roundcube, un client de e-mail renumit în principal pentru utilizarea inteligentă a tehnologiei Ajax.

Înainte de a începe, asigurați-vă că aveți următoarele:

  • Un server Ubuntu 20.04 configurat cu un nume de domeniu complet (FQDN).
  • Un utilizator non-root cu privilegii sudo
  • O stivă LAMP cu un certificat SSL instalat. Acest ghid folosește un certificat gratuit Let’s Encrypt.
  • Verificați starea portului de ieșire al serverului
1. Instalați și configurați Postfix
  1. SSH pe serverul dvs. și instalați serverul Postfix rulând comanda de mai jos.
    $ sudo apt update -y
    $ sudo apt install -y postfix
    
  2. Veți primi ecranul de configurare Postfix, așa cum se arată mai jos. Apăsați TAB și ENTER pentru a continua.

3. Pe ecranul următor, selectați Site Internet, apoi TAB și ENTER.

4. Introduceți numele de e-mail al sistemului, care este numele domeniului dvs. De exemplu, numele serverului este mail.example.com, așa că veți introduce aici example.com.

5.  Faceți o copie de rezervă a fișierului /etc/postfix/main.cf și creați unul nou.

$ sudo mv /etc/postfix/main.cf /etc/postfix/main.cf.bk
$ sudo nano /etc/postfix/main.cf

6. Introduceți informațiile de mai jos în noul fișier. Înlocuiți example.com cu numele dvs. de domeniu în tot fișierul. Asigurați-vă că valoarea smtpd tls cert_file și smtpd tls key_file indică certificatul dvs. SSL.

smtpd_banner = $myhostname ESMTP $mail_name
biff = no
append_dot_mydomain = no
readme_directory = no

# TLS parameters

smtp_use_tls = yes
smtp_tls_security_level = may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_use_tls = yes
smtpd_tls_security_level = may
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_tls_cert_file = /etc/letsencrypt/live/example.com/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/example.com/privkey.pem
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated,  reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
virtual_transport = lmtp:unix:private/dovecot-lmtp
virtual_mailbox_domains = /etc/postfix/virtual_mailbox_domains
myhostname = mail.example.com
myorigin = /etc/mailname
mydestination =  localhost.$mydomain, localhost
relayhost = 
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases

7. Salvați și închideți fișierul.

2. Creați domenii de cutie poștală virtuală
  1. Fișierul de configurare main.cf indică postfix să caute domenii de e-mail în fișierul /etc/postfix/virtual_mailbox_domains . Creați fișierul:
    $ sudo nano /etc/postfix/virtual_mailbox_domains
    
  2. Adăugați informațiile de mai jos în fișier și înlocuiți example.com cu numele dvs. de domeniu.
    example.com #domain
    
  3. Utilizați comanda postmap pentru a schimba /etc/postfix/virtual_mailbox_domains într-un format recunoscut de Postfix. Rulați această comandă de fiecare dată când editați fișierul, de exemplu, după ce adăugați mai multe domenii la fișier.
    $ sudo postmap /etc/postfix/virtual_mailbox_domains
    
  4. Editați fișierul de configurare /etc/postfix/master.cf pentru a activa serviciul SMTP.
    $ sudo nano /etc/postfix/master.cf
    
  5. Găsiți intrarea de mai jos.
    ...
    
    #submission inet n       -       y       -       -       smtpd
    
    ...
    

    Eliminați simbolul lire sterline de la începutul liniei.

    ...
    
    submission inet n       -       y       -       -       smtpd
    
    ...
    
  6. Salvați și închideți fișierul.
3. Instalați și configurați Dovecot
  1. Instalați pachetul Dovecot și toate pachetele de dependență necesare pentru a rula serviciul imap , pop3 și lmtp .
    $ sudo apt install -y dovecot-core dovecot-imapd dovecot-pop3d dovecot-lmtpd
    
  2. Editați fișierul /etc/dovecot/conf.d/10-mail.conf pentru a instrui Dovecot în director să caute e-mailuri.
    $ sudo nano /etc/dovecot/conf.d/10-mail.conf
    
  3. Găsiți intrarea de mai jos.
    mail_location = mbox:~/mail:INBOX=/var/mail/%u   
    

    Schimba in:

    mail_location = maildir:/var/mail/vhosts/%d/%n
    

    Salvați și închideți fișierul. % d reprezintă domeniul, iar %n reprezintă utilizatorii. Aceasta înseamnă că va trebui să creați un subdirector în /var/mail/vhosts pentru fiecare domeniu care primește e-mailuri pe serverul dvs.

  4. Creați primul subdirector și înlocuiți example.com cu numele dvs. de domeniu.
    $ sudo mkdir -p /var/mail/vhosts/example.com
    

    Repetați comanda de mai sus pentru fiecare alt domeniu pentru care doriți să primiți e-mailuri pe serverul dvs. în timp ce înlocuiți example.com cu numele domeniului. De exemplu, dacă intenționați să primiți și e-mailuri pentru domeniul example.net, executați comanda de mai jos.

    $ sudo mkdir -p /var/mail/vhosts/example.net
    
  5. Creați un utilizator și un grup Vmail pentru serviciul Dovecot.Creați grupul vmail .
    $ sudo groupadd -g 5000 vmail
    

    Creați un utilizator vmail și adăugați utilizatorul la grupul vmail .

    $ sudo useradd -r -g vmail -u 5000 vmail -d /var/mail/vhosts -c "virtual mail user"
    

    Atribuiți dreptul de proprietate asupra /var/mail/vhosts/ utilizatorului și grupului vmail .

    $ sudo chown -R vmail:vmail /var/mail/vhosts/
    
  6. Editați fișierul Dovecot 10-master.conf .
    $ sudo nano /etc/dovecot/conf.d/10-master.conf
    
  7. Găsiți intrările de mai jos.
    ...
    
    inet_listener imaps {
    
      #port = 993
      #ssl = yes
    
    }
    
    ...
    

    Eliminați simbolul lire sterline înainte de intrările port și ssl , așa cum se arată mai jos, pentru a permite Dovecot să folosească portul 993 și SSL pentru IMAP securizat.

    ...
    
    inet_listener imaps {
    
      port = 993
      ssl = yes
    
    }
    
    ...
    
  8. Găsiți intrările de mai jos.
    ...
    
    inet_listener pop3s {
    
      #port = 995
      #ssl = yes
    
    }
    
    ...
    

    Eliminați simbolul lire sterline înainte de portul = 995 și parametrii ssl = yes .

    ...
    
    inet_listener pop3s {
    
      port = 995
      ssl = yes
    
    }
    
    ...
    
  9. Activați serviciul lmtp . Găsiți intrările de mai jos.
    ...
    
    service lmtp {
    
      unix_listener lmtp {
    
        #mode = 0666
    
      }
    
    
    
      # Create inet listener only if you can't use the above UNIX socket
    
      #inet_listener lmtp {
    
        # Avoid making LMTP visible for the entire internet
    
        #address =
    
        #port =
    
      #}
    
    }
    
    ...
    

    Schimbați configurația la:

    ...
    
    service lmtp {
    
      unix_listener /var/spool/postfix/private/dovecot-lmtp {
    
        mode = 0600
        user = postfix
        group = postfix
    
      }
    
    }
    
    ...
    
  10. Găsiți mai jos configurațiile socketului de autentificare Dovecot.
    ...
    
    # Postfix smtp-auth
    
    #unix_listener /var/spool/postfix/private/auth {
    
    #  mode = 0666
    
    #}
    
    ...
    

    Schimbați configurația la:

    ...
    
    #Postfix smtp-auth
    
    unix_listener /var/spool/postfix/private/auth {
      mode = 0666
      user = postfix
      group = postfix
    
    }
    
    ...
    
  11. Salvați și închideți fișierul.
  12. Configurați Dovecot pentru a utiliza autentificarea securizată. Editați fișierul Dovecot 10-auth.conf .
    $ sudo nano /etc/dovecot/conf.d/10-auth.conf
    
  13. Găsiți intrarea de mai jos.
    # disable_plaintext_auth = yes
    

    Decomentați setarea de mai sus eliminând caracterul # pentru a dezactiva autorizarea textului simplu.

    disable_plaintext_auth = yes
    
  14. Găsiți intrarea de mai jos.
    auth_mechanisms = plain
    

    Schimbați mecanismele de autentificare de la autentificare simplă la autentificare simplă .

    auth_mechanisms = plain login
    
  15. Dezactivați comportamentul de autentificare implicit Dovecot, care necesită ca utilizatorii să aibă un cont de sistem pentru a utiliza serviciul de e-mail. Găsiți linia:
    !include auth-system.conf.ext
    

    Adăugați un simbol liră la începutul rândului pentru a-l comenta.

    #!include auth-system.conf.ext
    
  16. Găsiți linia:
    #!include auth-passwdfile.conf.ext
    

    Eliminați simbolul # de la început pentru a permite Dovecot să utilizeze un fișier cu parole.

    !include auth-passwdfile.conf.ext
    
  17. Salvați și închideți fișierul.
  18. Editați fișierul parolei Dovecot, auth-passwdfile.conf.ext .
    $ sudo nano /etc/dovecot/conf.d/auth-passwdfile.conf.ext
    

    Fișierul arată similar cu cel prezentat mai jos.

    passdb {
    
      driver = passwd-file
      args = scheme=CRYPT username_format=%u /etc/dovecot/users
    
    }
    
    
    
    userdb {
    
      driver = passwd-file
      args = username_format=%u /etc/dovecot/users
    
    ...
    
    }
    

    Efectuați modificările în fișier, așa cum se arată mai jos.

    passdb {
    
        driver = passwd-file
        args = scheme=PLAIN username_format=%u /etc/dovecot/dovecot-users
    
    }
    
    
    
    userdb {
    
        driver = static
        args = uid=vmail gid=vmail home=/var/mail/vhosts/%d/%n    
    
    }
    

    Salvați și închideți fișierul.

  19. Creați fișierul cu parole /etc/dovecot/dovecot-users . Acest fișier este o bază de date cu text simplu care deține utilizatorii de e-mail pe serverul dvs.
    $ sudo nano /etc/dovecot/dovecot-users
    

    Adăugați utilizatorii pe care doriți să utilizați serviciul de e-mail la fișier urmând formatul de mai jos. Înlocuiți EXAMPLE_PASSWORD cu o parolă puternică. De asemenea, înlocuiți example.com cu numele dvs. de domeniu.

    admin@example.com:{plain}EXAMPLE_PASSWORD
    info@example.com:{plain}EXAMPLE_PASSWORD
    billing@example.com:{plain}EXAMPLE_PASSWORD
    

    Salvați și închideți fișierul.

  20. Configurați Dovecot pentru a utiliza certificatul SSL. Deschideți fișierul /etc/dovecot/conf.d/10-ssl.conf .
    $ sudo nano /etc/dovecot/conf.d/10-ssl.conf
    

    Găsiți linia:

    ssl = yes
    

    Schimbați valoarea ssl de la yes la obligatoriu .

    ssl = required
    

    Găsiți cele două intrări de mai jos.

    #ssl_cert = </etc/dovecot/dovecot.pem
    #ssl_key = </etc/dovecot/private/dovecot.pem
    

    Schimbați cele două intrări de mai sus și asigurați-vă că acestea indică certificatul SSL pentru domeniul dvs. De exemplu, dacă utilizați certificatul Let’s Encrypt, intrările dvs. vor fi similare cu cele afișate mai jos. Înlocuiți example.com cu numele dvs. de domeniu.

    ssl_cert = </etc/letsencrypt/live/example.com/fullchain.pem
    ssl_key = </etc/letsencrypt/live/example.com/privkey.pem
    

    Salvați și închideți fișierul.

    Reporniți serviciile postfix și dovecot pentru a utiliza noile setări.

    $ sudo service postfix restart 
    $ sudo service dovecot restart
4. Instalați și configurați Roundcube
  • Pentru a accesa serverele Postfix și Dovecot, instalați clientul de e-mail Roundcube.
    $ sudo apt install -y roundcube
    
  • Apăsați ENTERpentru a configura baza de date pentru utilizare cu Roundcube.Configurați baza de date pentru Roundcube

Pe ecranul următor, introduceți o parolă MySQL pe care să o utilizați cu Roundcube.

Parola bazei de date pentru Roudcube

  • Apăsați TAB și ENTER.
  • Repetați aceeași parolă, apoi apăsați TAB și ENTER pentru a continua.
  • Deschideți fișierul de configurare SSL al site-ului dvs. din directorul /etc/apache2/sites-enabled . Rulați comanda de mai jos și înlocuiți example.com cu numele dvs. de domeniu.
    $ sudo nano /etc/apache2/sites-enabled/example.com-le-ssl.conf
    

    Fișierul dvs. de configurare a site-ului dvs. web va fi similar cu cel prezentat mai jos.

    ...
    
    <VirtualHost *:443>
    
        ServerAdmin admin@franktek.space
        ServerName franktek.space  
    
    ...    
    
    </VirtualHost>
    
    ...
    

    Adăugați intrarea Alias ​​/mail /usr/share/roundcube după intrarea ServerName example.com, așa cum se arată mai jos.

    ...
    
    <VirtualHost *:443>
    
        ServerAdmin admin@example.com
    
        ServerName example.com
    
       Alias /mail /usr/share/roundcube  
    
    ...    
    
    </VirtualHost>
    
    ...
    

    Salvați și închideți fișierul. Reporniți Apache.

$ sudo service apache2 restart

5. Testați serviciul de e-mail

Pentru a vă conecta la serverul de e-mail folosind Roundcube, introduceți adresa URL afișată mai jos și înlocuiți example.com cu numele domeniului dvs.

https://mail.example.com/mail

Ar trebui să vedeți un ecran similar cu cel de mai jos. Introduceți numele de utilizator și parola pe care le-ați definit în fișierul cu parole Dovecot și conectați-vă.

Pagina de conectare Roundcube

Odată autentificat, puteți trimite și primi e-mailuri din tabloul de bord Roundcube.

[mai mult...]

Cum instalezi iRedMail pe Debian sau Ubuntu Linux

Pentru a instala iRedMail pe Debian sau Ubuntu Linux, aveți nevoie de:

  • Un Debian/Ubuntu Linux proaspăt, funcțional Versiunile acceptate sunt listate pe pagina Descărcare .
  • Este necesară cel puțin 4 GBmemorie pentru un server de e-mail de producție cu trafic redus, cu scanarea spam/virus activată.
  • Asigurați-vă că 3 UID/GID nu sunt folosite de alt utilizator/grup: 2000, 2001, 2002.

Note:

  • Toate pachetele binare vor fi instalate din depozitele oficiale de apt Debian/Ubuntu.
  • Dacă alegeți Ubuntu Linux, este recomandat să utilizați cea mai recentă versiune Ubuntu LTS (Long Term Support) pentru utilizare în producție.
Pregătiri
Setați un nume de gazdă complet calificat (FQDN) pe serverul dvs

Indiferent că serverul dvs. este o mașină de testare sau un server de producție, este recomandat să setați un nume de gazdă complet calificat (FQDN).

Introdu comanda hostname -fpentru a vedea numele de gazdă curent:

$ hostname -f
mx.example.com

Pe Debian/Ubuntu Linux, numele de gazdă este setat în două fișiere: /etc/hostnameși /etc/hosts.

  • /etc/hostname: nume de gazdă scurt, nu FQDN.
mx
  • /etc/hosts: căutare în tabel static pentru nume de gazdă. Avertisment : Vă rugăm să enumerați numele de gazdă FQDN ca prim element.
# Part of file: /etc/hosts
127.0.0.1   mx.example.com mx localhost localhost.localdomain

Verificați numele de gazdă FQDN. Dacă nu a fost schimbat după actualizarea mai sus a două fișiere, vă rugăm să reporniți serverul pentru ca acesta să funcționeze.

$ hostname -f
mx.example.com
Activați depozitele oficiale implicite Debian/Ubuntu apt
  • iRedMail are nevoie de depozite oficiale Debian/Ubuntu apt, vă rugăm să le activați în /etc/apt/sources.list.
  • Instalați pachetele cerute de programul de instalare iRedMail:
sudo apt-get install gzip dialog
Descărcați cea mai recentă versiune a iRedMail
  • Vizitați pagina de descărcare pentru a obține cea mai recentă versiune stabilă a iRedMail.
  • Încărcați iRedMail pe serverul dvs. de e-mail prin ftp sau scp sau orice metodă pe care o puteți utiliza, conectați-vă la server pentru a instala iRedMail. Presupunem că l-ați încărcat în /root/iRedMail-x.y.z.tar.gz(înlocuiți xyz cu numărul real al versiunii).
  • Decomprimați tarball iRedMail:
cd /root/
tar zxf iRedMail-x.y.z.tar.gz
Porniți programul de instalare iRedMail

Acum este gata să pornească programul de instalare iRedMail, vă va pune câteva întrebări simple, toate acestea sunt necesare pentru a configura un server de e-mail cu funcții complete.

cd /root/iRedMail-x.y.z/
bash iRedMail.sh
Capturi de ecran de instalare:
  • Bine ați venit și vă mulțumesc pentru utilizare

  • Specificați locația pentru a stoca toate cutiile poștale. Implicit este /var/vmail/.

  • Alegeți backend folosit pentru a stoca conturile de e-mail. Puteți gestiona conturile de e-mail cu iRedAdmin, panoul nostru de administrare iRedMail bazat pe web.

Notă: Nu există nicio diferență mare între backend-urile disponibile, așa că este recomandat să-l alegeți pe cel cu care sunteți familiarizat pentru o gestionare și întreținere mai ușoară după instalare.

  • Dacă alegeți să stocați conturi de e-mail în OpenLDAP, programul de instalare iRedMail vă va cere să setați sufixul LDAP.

Pentru utilizatorii MySQL/MariaDB/PostgreSQL

Dacă alegeți să stocați conturi de e-mail în MySQL/MariaDB/PostgreSQL, programul de instalare iRedMail va genera o parolă aleatorie și puternică pentru dvs. Îl puteți găsi în fișier iRedMail.tips.

  • Adăugați primul nume de domeniu de e-mail

  • Setați parola contului de administrator al primului domeniu de e-mail.

Notă : Acest cont este un cont de administrator și un utilizator de e-mail. Aceasta înseamnă că vă puteți autentifica la webmail și la panoul de administrare (iRedAdmin) cu acest cont, numele de utilizator de conectare este adresa de e-mail completă.

Alegeți componente opționale

Ce webmail ar trebui să alegi? Roundcube sau SOGo?

  • Roundcube este un webmail rapid și ușor și numai webmail. Dacă tot ce aveți nevoie este un webmail pentru a accesa căsuța poștală și a gestiona filtrele de e-mail, atunci Roundcube este cea mai bună opțiune.
  • SOGo oferă webmail, calendar (CalDAV), contacte (CardDAV) și ActiveSync. Dacă aveți nevoie de asistență pentru calendar și contacte, de asemenea pentru sincronizarea acestora cu aplicațiile client de e-mail pentru mobil sau PC, atunci SOGo este cel mai potrivit. Notă: Dacă aveți mulți clienți ActiveSync, necesită multă memorie RAM.
  • Este ok să le instalați pe amândouă, dar puteți gestiona numai filtre de e-mail cu Roundcube în acest caz, deoarece regulile de filtrare generate de Roundcube și SOGo nu sunt compatibile. Puteți forța să îl activați în SOGo , dar vă rugăm să informați utilizatorii finali și să le cereți să respecte unul dintre ei pentru gestionarea filtrelor de e-mail.

După răspunsul la întrebările de mai sus, programul de instalare iRedMail vă va cere să revizuiți și să confirmați pentru a începe instalarea. Acesta va instala și configura automat pachetele necesare. Tastați ysau Yși apăsați Enterpentru a începe.

Lucruri importante pe care TREBUIE să le știți după instalare

Cea mai slabă parte a unui server de e-mail este parola slabă a utilizatorului. Spammerii nu vor să-ți pirateze serverul, vor doar să trimită spam de pe serverul tău. Vă rugăm să forțați ÎNTOTDEAUNA ÎNTOTDEAUNA pe utilizatori să folosească o parolă puternică.

După finalizarea cu succes a instalării, puteți accesa programe bazate pe web dacă alegeți să le instalați. Înlocuiți your_servermai jos cu numele dvs. de gazdă sau adresa IP reală a serverului.

[mai mult...]

Cum se instalează ownCloud pe Ubuntu 22.04

ownCloud este un software potrivit pentru crearea de servicii de găzduire de fișiere precum Google Drive și DropBox. Este un software de găzduire de fișiere gratuit și open-source care vă permite să configurați o găzduire de fișiere auto-găzduită pe propriul dvs. server. ownCloud oferă aplicația server și aplicații client care pot fi instalate pe mai multe sisteme de operare, cum ar fi Linux, Windows, macOS, Android și iOS.

ownCloud este scris în principal în PHP, JavaScript și Go. Și vă permite să sincronizați cu ușurință evenimentele din calendar, stocând arhive, imagini și orice formate de fișiere. Și, de asemenea, vă permite să organizați, cum ar fi sarcini, agende și multe altele. ownCloud este o aplicație extensibilă care vă permite să instalați aplicația suplimentară deasupra acesteia.

[mai mult...]

Cum se instalează ionCube Loader pe Debian 11

IonCube este o extensie PHP care poate decoda fișiere PHP criptate securizate în timpul execuției.
Furnizorii comerciali de programe PHP folosesc codificatorul IonCube pentru a proteja aplicațiile, iar încărcătorul pe care îl instalăm în acest tutorial este necesar pentru a rula fișierele codificate IonCube pe serverul dvs.
IoncubeLoader mărește viteza de încărcare a site-ului dvs. și împiedică alte persoane să fure codul sursă prin conversia PHP în cod octet.

[mai mult...]

Cum se instaleaza si se utilizează Varnish Cache pe Debian 11

Cache-ul este adesea cea mai critică piesă de software pentru o afacere bazată pe web. Varnish Cache este un motor HTTP puternic, open source/proxy HTTP invers, care poate accelera un site web cu până la 200%, făcând exact ceea ce înseamnă numele său: memorarea în cache (sau stocarea) a unei copii a unei pagini web prima dată când un utilizator o vizitează. Varnish vă vizitează serverul o dată pentru a stoca pagina în cache, apoi toate solicitările viitoare pentru aceeași pagină vor fi servite de Varnish. Aceasta înseamnă livrarea de conținut extrem de rapidă și mai puține cerințe de resurse pentru serverul backend.

[mai mult...]

Cum instalam LAMP Stack pe CentOS 8

LAMP este un acronim pentru Linux, Apache, MySQL și PHP. Este o stivă gratuită și open source utilizată de dezvoltatori și administratorii de site-uri web pentru a testa și găzdui aplicațiile lor web.

Vine cu 4 componente care sunt Apache (folosit pentru găzduirea unui site web), MySQL sau MariaDB și PHP – un limbaj de scripting popular folosit pentru a crea pagini web dinamice. MariaDB sau MYSQL sunt folosite pentru a stoca și gestiona datele.

[mai mult...]