Serverul de e-mail Mailcow - ghid de inițiere
Serverul vine cu Mailcow – o suită de server de e-mail complet dockerizată, cu trimitere și primire de e-mailuri, webmail (SOGo), antispam (Rspamd), antivirus (ClamAV) și panou de administrare. Domeniul de e-mail și parola de administrator sunt configurate automat din datele introduse la comandă.
Pasul 1 – Verificați funcționarea Mailcow
Adresa IP și parola root a serverului sunt afișate pe pagina Server Details din panoul clientului. Deschideți https://your.server.ip în browser. Browserul va afișa un avertisment de securitate despre certificatul autosemnat – este normal, continuați spre site.
Pe pagina de autentificare, faceți clic pe „Log in as administrator” în partea de jos. Introduceți datele de administrator:
- Nume de utilizator:
admin - Parolă: parola de administrator introdusă la comandă
Important: Pagina de autentificare implicită este pentru utilizatorii căsuțelor poștale (autentificare cu e-mail). Panoul de administrare are o autentificare separată – folosiți linkul din partea de jos a paginii.
Dacă vedeți dashboard-ul de administrare Mailcow, totul funcționează corect.
Dacă ați plasat serverul în spatele unui router VyOS într-o rețea privată, configurați redirecționarea porturilor 22 (SSH), 25 (SMTP), 80 (HTTP), 443 (HTTPS), 587 (Submission), 993 (IMAP) și 995 (POP3). Un server de e-mail trebuie să fie accesibil de pe internet pentru a trimite și primi e-mailuri.
Pasul 2 – Configurarea înregistrărilor DNS
Configurarea corectă a DNS este esențială pentru livrarea e-mailurilor. Fără înregistrări corecte, e-mailurile vor fi respinse sau marcate ca spam. Accesați setările DNS ale registratorului de domeniu și adăugați următoarele înregistrări (înlocuiți your.server.ip cu IP-ul real al serverului și example.com cu domeniul dumneavoastră):
| Tip | Nume | Valoare |
|---|---|---|
| A | your.server.ip | |
| MX | @ | mail.example.com (prioritate 10) |
| TXT | @ | v=spf1 mx a -all |
| TXT | _dmarc | v=DMARC1; p=quarantine; rua=mailto:postmaster@example.com |
| CNAME | autodiscover | mail.example.com |
| CNAME | autoconfig | mail.example.com |
Înregistrare DKIM: După autentificarea în panoul de administrare, accesați Configuration → ARC/DKIM keys pentru a obține cheia DKIM. Apoi adăugați:
| Tip | Nume | Valoare |
|---|---|---|
| TXT | dkim._domainkey | (copiați din panoul de administrare Mailcow) |
DNS invers (înregistrare PTR): Contactați suportul pentru a seta înregistrarea PTR a IP-ului serverului la mail.example.com. Este necesar pentru o livrare fiabilă a e-mailurilor.
Modificările DNS durează de obicei câteva minute, dar pot dura până la 24 de ore. Puteți verifica starea pe dnschecker.org.
Pasul 3 – Crearea căsuțelor poștale
În panoul de administrare:
- Accesați E-Mail → Mailboxes
- Faceți clic pe Add mailbox
- Introduceți numele de utilizator (de ex.
info), setați o parolă și faceți clic pe Adăugați - Noua căsuță poștală (de ex.
info@example.com) este gata de folosit
Utilizatorii pot accesa webmail-ul (SOGo) la https://your.server.ip/SOGo – autentificându-se cu adresa de e-mail completă și parola căsuței poștale.
După instalare
SSL cu Let’s Encrypt
Mailcow are suport Let’s Encrypt integrat. După ce înregistrarea A (mail.example.com) indică serverul și DNS-ul s-a propagat, asigurați-vă că SKIP_LETS_ENCRYPT=n în mailcow.conf și reporniți:
cd /opt/mailcow-dockerized
docker compose down && docker compose up -d
Mailcow va obține și va reînnoi automat certificatul.
Configurarea clientului de e-mail
Pentru a conecta un client de e-mail (Outlook, Thunderbird, mobil), folosiți aceste setări:
| Protocol | Server | Port | Securitate |
|---|---|---|---|
| IMAP | mail.example.com | 993 | SSL/TLS |
| SMTP | mail.example.com | 587 | STARTTLS |
| POP3 | mail.example.com | 995 | SSL/TLS |
Numele de utilizator este adresa de e-mail completă (de ex. info@example.com). Dacă ați configurat înregistrările DNS autodiscover și autoconfig , majoritatea clienților de e-mail vor detecta automat aceste setări.
Adăugarea domeniilor
Puteți găzdui mai multe domenii de e-mail pe un singur server Mailcow:
- Accesați Configuration → Mail Setup → Domains
- Faceți clic pe Add domain și introduceți numele noului domeniu
- Configurați înregistrările DNS pentru noul domeniu (MX, SPF, DKIM, DMARC) după același model ca la Pasul 2
- Creați căsuțe poștale pentru noul domeniu
Fail2Ban – protecție împotriva atacurilor brute-force
Serverul dumneavoastră include Fail2Ban preconfigurat pentru a proteja SSH împotriva atacurilor brute-force. Mailcow are și propria protecție brute-force internă pentru SMTP, IMAP, POP3 și panoul de administrare – o configurați în interfața de administrare la System → Configuration → Fail2ban parameters.
| Regulă | Încercări maxime | Durata blocării |
|---|---|---|
| SSH (host) | 5 autentificări eșuate | 10 minute |
Comenzi utile:
# Check banned IPs
fail2ban-client status sshd
# Unban an IP
fail2ban-client set sshd unbanip 1.2.3.4
Dacă vă blocați accidental, conectați-vă prin consola VNC din panoul clientului și deblocați-vă IP-ul.
Administrarea serviciilor
# Check status
cd /opt/mailcow-dockerized && docker compose ps
# Restart all services
docker compose down && docker compose up -d
# View logs
docker compose logs -f --tail=100
Backup-uri
Mailcow include un script de backup integrat:
# Create a backup
cd /opt/mailcow-dockerized
./helper-scripts/backup_and_restore.sh backup all --delete-days 7
# Automated daily backups (add to crontab -e)
0 3 * * * cd /opt/mailcow-dockerized && ./helper-scripts/backup_and_restore.sh backup all --delete-days 7
Implicit, backup-urile sunt stocate în /var/backups/mailcow .
Actualizări
Pentru a actualiza Mailcow și pachetele sistemului:
# Update Mailcow
cd /opt/mailcow-dockerized && sudo ./update.sh
# Update system packages
apt update && apt upgrade -y
Software inclus
| Componentă | Detalii |
|---|---|
| Ubuntu | 24.04 LTS |
| Docker CE | Cea mai recentă |
| Mailcow | Cea mai recentă (dockerizat) |
| Postfix | Server SMTP |
| Dovecot | Server IMAP / POP3 |
| SOGo | Client webmail |
| ClamAV | Antivirus |
| Rspamd | Antispam |
| Fail2Ban | Protecție brute-force |
Depanare
| Problemă | Soluție |
|---|---|
| Panoul web nu poate fi accesat | Verificați că containerele rulează: cd /opt/mailcow-dockerized && docker compose ps. Reporniți dacă este necesar: docker compose down && docker compose up -d |
| Pagina de autentificare cere e-mail | Pagina implicită este pentru utilizatorii căsuțelor poștale. Faceți clic pe „Log in as administrator” în partea de jos a paginii pentru a accesa autentificarea de administrator |
| E-mailurile ajung în spam | Verificați înregistrările DNS: SPF, DKIM și DMARC trebuie configurate corect. Verificați înregistrarea PTR cu dig -x your.server.ip. Testați pe mail-tester.com |
| Nu se pot trimite sau primi e-mailuri | Verificați înregistrarea MX: dig MX example.com. Verificați că portul 25 nu este blocat de furnizor. Verificați logurile: cd /opt/mailcow-dockerized && docker compose logs postfix-mailcow |
| Certificatul Let’s Encrypt nu a fost emis | Asigurați-vă că MAILCOW_HOSTNAME din mailcow.conf corespunde înregistrării DNS A și SKIP_LETS_ENCRYPT=n. Verificarea logurilor: docker compose logs acme-mailcow |
| ClamAV nu este gata / utilizare mare a memoriei | ClamAV descarcă bazele de date de viruși la prima pornire (~300 MB). Poate dura câteva minute. Verificați: docker compose logs clamd-mailcow |
| Ați uitat parola de administrator | Resetare prin SSH:cd /opt/mailcow-dockerized && docker compose exec -T mysql-mailcow mysql -umailcow -p$(grep DBPASS mailcow.conf | cut -d= -f2) mailcow -e "UPDATE admin SET password='{SSHA256}' WHERE username='admin';"Apoi autentificați-vă cu orice parolă și schimbați-o în panoul de administrare |
| Blocat de Fail2Ban | Deblocați-vă IP-ul prin consola VNC din panoul clientului |
| Ați uitat parola root | Resetați-o prin consola VNC din panoul clientului |