Namestite iRedMail (popolnoma predstavljen poštni strežnik) z navideznimi domenami, spletno pošto, SpamAssassin in ClamAV v Linux


Po storitvah HTTP in DNS v senci je pošta (SMTP, POP, IMAP in vsi povezani protokoli šifrirane pošte) ena najpogosteje uporabljenih storitev v internetu in tudi ena najbolj smiselnih zaradi poštnih strežnikov z neželeno pošto in odprtim relejem.

Ta vadnica vas bo vodila skozi namestitev celotnega poštnega strežnika s programsko opremo MTA, MDA in MUA v nekaj minutah na RHEL, CentOS, Scientific Linux in Debian, Ubuntu, Linux Mint s Postfix, navidezne domene in uporabnike z MySQL, Dovecot - podpora za POP3/POP3S, IMAP/IMAPS, Roundcube - spletna pošta in tudi pošiljanje neželene pošte in virusov s programoma SpamAssassin in ClamAV, vsi nameščeni z enim programskim paketom, imenovanim „iRedMail“.

iRedMail je odprtokodna celovita rešitev poštnega strežnika, ki lahko prihrani veliko časa za sistemske skrbnike za zapletene konfiguracije, ima podporo za vse večje distribucije Linuxa in je dobavljena z naslednjimi paketi Linuxa.

  1. Postfix: storitev SMTP - privzeti MTA.
  2. Dovecot: POP3/POP3S, IMAP/IMAPS, storitev Managesieve - privzeti MDA.
  3. Apache: spletni strežnik.
  4. MySQL/PostgreSQL: Shranjevanje podatkov aplikacij in/ali poštnih računov.
  5. OpenLDAP: Shranjevanje poštnih računov.
  6. Policyd: strežnik pravilnikov Postfix.
  7. Amavisd: vmesnik med Postfixom in SpamAssassin, ClamAV. Uporablja se za iskanje neželene pošte in virusov.
  8. Roundcube: Spletna pošta - privzeti MUA.
  9. Napake: Analizator dnevnikov Apache in Postfix.
  10. Fail2ban: skenira dnevniške datoteke (npr./var/log/maillog) in prepove IP-je, ki prikazujejo zlonamerne sistemske poskuse.

  1. Minimalna namestitev CentOS 6.5 - Vodič za namestitev CentOS 6.5
  2. Veljaven zapis DNS MX, ki kaže na vaš poštni strežnik, odgovoren za vaše ime domene.

Ta vadnica je namenjena samo testiranju in učenju in ne uporablja veljavnih zapisov MX niti veljavne grive domene DNS, vse konfiguracije so narejene lokalno z uporabo virtualnih prejemnikov z MySQL (lahko prejemajo ali pošiljajo pošto samo med uporabniki lokalne domene - lokalno ime domene iz datoteke gostitelja), vendar se zavedajte, da čeprav naš sistem ne more sprejemati pošte z internetnih domen, lahko dejansko posreduje pošto na te poštne strežnike domene prek Postfix MTA, tudi če prebivate v zasebnem naslovu IP , brez veljavnega zapisa MX in z uporabo izmišljene domene, zato bodite veliko pozorni na to, kaj počnete.

1. korak: Začetne konfiguracije in statični naslov IP

1. Po prvem ponovnem zagonu prijave s svojim korenskim računom preverite, ali je sistem posodobljen, in namestite nekaj uporabnih paketov, potrebnih za kasnejšo uporabo.

# yum update && yum upgrade
# yum install nano wget bzip2
# apt-get update && apt-get upgrade
# apt-get install nano wget bzip2

2. Ker to polje deluje kot poštni strežnik , je treba v omrežnem vmesniku konfigurirati statični IP. Če želite dodati statični IP, odprite in uredite svojo konfiguracijsko datoteko NIC, ki se nahaja na poti /etc/sysconfig/network-scripts/, in dodajte naslednje vrednosti.

# nano /etc/sysconfig/network-scripts/ifcfg-eth0

Uporabite to datoteko kot predlogo in jo nadomestite s svojimi vrednostmi po meri.

DEVICE="eth0"
BOOTPROTO="static"
HWADDR="00:0C:29:01:99:E8"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="7345dd1d-f280-4b9b-a760-50208c3ef558"
NAME="eth0"
IPADDR=192.168.1.40
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
DNS2=8.8.8.8

Ko končate z urejanjem datoteke NIC, odprite omrežno datoteko z istega mesta kot zgoraj in dodajte nekvalificirano ime gostitelja strežnika v direktivo HOSTNAME .

# nano /etc/sysconfig/network-scripts/network
# nano /etc/network/interfaces

Nadomestite naslednje vrednosti s svojimi nastavitvami.

auto eth0
iface eth0 inet static
  address 192.168.1.40
  netmask 255.255.255.0
  gateway 192.168.1.1
  dns-nameservers 192.168.1.1
  dns-search 8.8.8.8

Ko končate z omrežno datoteko, zdaj dodajte ime gostitelja v datoteko/etc/hostname.

# nano /etc/hostnames

3. Nato odprite datoteko /etc/resolv.conf in dodajte sistem strežnikov DNS IP na široko, kot je prikazano na spodnjem posnetku zaslona.

# nano /etc/resolv.conf

S priljubljenimi imenskimi strežniki dodajte naslednjo vsebino.

search mydomain.lan
nameserver 8.8.8.8
nameserver 8.8.8.8

4. Ko so vse zgornje konfiguracije zapisane v ustrezne datoteke, znova zaženite omrežno storitev, da uporabite nove konfiguracije in jo preverite z ukazoma ping in ifconfig.

# service network restart	[On RedHat based systems]

# service networking restart	[On Debian based systems]
# ifconfig

5. Zdaj, ko vaše statično omrežje deluje, uredite datoteko /etc/hosts in dodajte svoje nekvalificirano in FQDN ime gostitelja, kot je spodnji primer.

# nano /etc/hosts
127.0.0.1   centos.mydomain.lan centos localhost localhost.localdomain
192.168.1.40 centos.mydomain.lan centos

Če želite preveriti težavo s konfiguracijo imena gostitelja, zaženite ukaza ime gostitelja in ime gostitelja –f.

# hostname
# hostname -f

6. Drug uporaben paket je bash-zaključek (samodejno dokončanje zaporedja ukazov s tipko [ Tab ]), ki ga nudi repozitorij EPEL v sistemih, ki temeljijo na RedHat, in nato posodobite svoje vire .

# rpm –Uvh http://fedora.mirrors.romtelecom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm
# yum repolist && yum upgrade

Po posodobitvi virov namestite pripomoček bash-zaključek (odgovorite Da na vsa vprašanja).

# yum install bash-completion

Paket bash-dokončanja v sistemih, ki temeljijo na Debianu, je mogoče enostavno namestiti z naslednjim ukazom.

# apt-get install bash-completion

7. Zadnji korak je dodati sistemskega uporabnika s korenskimi pravicami. Najprej dodajte uporabnika in nastavite njegovo geslo.

# adduser your_user
# passwd your_user

Ko je uporabnik dodan, odprite datoteko /etc/sudoers in razkomentirajte skupino % wheel , nato dodajte novo ustvarjenega uporabnika v skupino koles.

# nano /etc/sudoers

Iskanje in razkomentiranje vrstice skupine koles, da izgleda tako.

%wheel                ALL=(ALL)            ALL

Zaprite datoteko in dodajte uporabnika v skupino koles, tako da izda naslednji ukaz.

# usermod -aG wheel your_user

8. Preden začnemo s prenosom in namestitvijo programske opreme iRedMail , znova zaženite sistem, nato se prijavite z novo ustvarjenim uporabnikom in se prepričajte, da je vse popolnoma funkcionalno.

2. korak: Namestite iRedMail

9. Če želite shraniti arhivski paket iRedMail, morate obiskati njegov uradni odsek strani za prenos ali pa z ukazom wget prenesti zadnjo različico ( 0.8.7 v času pisanje tega članka).

# wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-0.8.7.tar.bz2

10. Ko se prenos arhiva iRedMail konča, ga izvlecite z naslednjim ukazom.

# tar xvjf iRedMail-0.8.7.tar.bz2

11. Nato vnesite novo izvlečeno pot do imenika iRedMail, označite skript iRedMail.sh z izvršljivimi dovoljenji in ga zaženite.

# cd iRedMail-0.8.7
# chmod +x iRedMail.sh
# sudo ./iRedMail.sh

12. Po začetnih sistemskih preverjanjih program začne dodajati zahtevano repozitorij, nato vas prvi poziv za vodenje vpraša, ali želite nadaljevati z namestitvijo ali prekiniti. Za nadaljevanje izberite Da .

13. iRedMail uporablja format Maildir za shranjevanje e-pošte na sistemski poti /var/vmail , kjer ustvari ločene imenike za vsako domeno, ki jo dodate na strežnik MTA. Če ste zadovoljni s to potjo, pritisnite Naprej , če želite nadaljevati s konfiguracijami strežnika, sicer navedite želeno lokacijo, nato Naprej .

14. V naslednjem koraku izberite želeno bazo podatkov za shranjevanje imen in prejemnikov poštnih domen, ki se bodo povezali z Postfix . Ta vadnica se osredotoča na bazo podatkov MySQL, zato izberite MySQL z vrstico [ Preslednica ], nato nadaljujte s Naprej in zagotovite močno geslo za korenski račun MySQL.

15. V naslednjem koraku dodajte prvo ime navidezne domene. Če ste lastnik registriranega imena domene, ki ste ga dodali tukaj (dodajte samo ime domene in ne sistemsko FQDN).

16. iRedAdmin privzeto ustvari skrbniškega uporabnika s polnimi pooblastili za vaš strežnik, do katerega je mogoče dostopati prek plošče iRedAdmin ali prek protokolov Dovecot (privzeti spletni vmesnik Roundcube ali katera koli druga programska oprema IMAP/POP MUA, kot so SquirrelMail, Rainloop, Microsoft Outlook, Mozilla Thunderbird, Evolucija, Mutt, Elm itd.).

Tudi ta skrbniški račun postmaster sistem uporablja za poročanje o incidentih, povezanih s poštnimi funkcijami ali drugimi sistemskimi napakami ali koristnimi informacijami - logwatch tu običajno pošlje svojo statistiko - zato izberite močno geslo in nadaljujte s Naprej .

17. V naslednjem koraku izberite druge komponente poštnega strežnika, kot je uradna upravna plošča iRedAdmin za Postfix, ključi domene DKIM - (doda podpis v glavo sporočila, ki ocenjuje zaupanje sporočil za končno dostavo ali nadaljnje prenose), privzeti spletni vmesnik Roundcube (če načrtujete) če želite uporabiti drugega agenta za dostavo pošte, preskočite Roundcube), PhpMyadmin (če se počutite z ukazno vrstico MySQL, morate tudi preskočiti namestitev PhpMyAdmin), Awstats (uporabna statistika dnevnika in analizator), Fail2ban (ščiti strežnik pred napadi brutalne sile).

18. Na naslednja niza vprašanj, odvisno od nameščenih dodatnih komponent, odgovorite z Da . Bodite posebno pozorni na datoteko iRedMail.tips , ki se nahaja v izvlečenem imeniku $HOME , ker vsebuje občutljive podatke o poštnem strežniku, kot so uporabniška imena in gesla za strežniške aplikacije, datoteke s konfiguracijo strežnika, privzeti URL in druge pomembne informacije.

19. Po namestitvi znova zaženite sistem in preverite datoteko iRedmail.tips , da vidite privzete nastavitve strežnika - to datoteko premaknite na varno sistemsko pot z 600 dovoljenji. .

20. Dostopajte do privzetih spletnih aplikacij na naslednjih URL-jih.

  1. Spletna pošta Roundcube - https:/ime_domene ali strežnik_IP/pošta/
  2. Podokno IRedAdmin - https:/ime_domene ali strežnik_IP/iredadmin/
  3. PhpMyadmin - https:/ime_domene ali strežnik_IP/phpmyadmin/
  4. Awstats - https:/ime_domene ali strežnik_IP/awstats/awstats.pl? config = web (ali? config = smtp)
  5. Zaščiten vtičnik za zaščito pred neželeno pošto - https:/ime_domene ali strežnika_IP/cluebringer/

3. korak: Začetne konfiguracije spletne pošte

21. Skrbniška plošča iRedAdmin ponuja osnovni vmesnik za spletno pošto, kamor lahko dodate navidezne domene in račune za svoj poštni strežnik, ki jih Postfix lahko obdeluje prek zalednega sistema MySQL. Če se želite prijaviti na ploščo iRedAdmin, usmerite brskalnik na URL https:/ime_domene/iredadmin/ ali https:/server_IP/iredadmin/ in uporabite te privzete poverilnice.

  1. Uporabniško ime : [email _domain_name.tld
  2. Geslo : geslo poštnega skrbnika je nastavljeno na # 16 točko

22. Če želite uporabnika dodati, pojdite na Dodaj -> Uporabnik , nato vnesite želeni e-poštni naslov in geslo za uporabniško ime. Prav tako lahko nastavite količino prostora, ki ga lahko vaš uporabniški nabiralnik obdeluje s kvoto, lahko pa tudi promovirate uporabnike z upravnimi pooblastili prek plošče iRedAdmin tako, da označite uporabnika kot globalnega skrbnika .

23. Branje e-pošte uporabnikov omogoča spletni vmesnik Roundcube. Do njega dostopate do URL-ja https:/ime_domene/pošte ali https:/strežnik_IP/pošta/ in vnesete poverilnice za svoj poštni račun v obliki [ e-pošta zaščitena] .

Če dostopate do privzetega skrbniškega poštnega računa postmaster, boste našli dva začetna e-poštna sporočila, od katerih eno vključuje informacije o občutljivem strežniku. Od tu lahko zdaj berete e-pošto, sestavljate in pošiljate e-pošto drugim uporabnikom domene.

24. Za dostop do strežnika Policyd proti neželeni politiki pojdite na https:/ime_domene/cluebringer ali https:/server_IP/cluebringer/ in predložite naslednje poverilnice.

  1. Uporabniško ime : [e-pošta zaščitena]
  2. Geslo : geslo postmaster

25. Če si želite ogledati statistiko poštnega strežnika, pojdite na https: //mydomain.lan/awstats/awstats.pl/? Config = smtp ali https: //mydomain.lan/awstats/awstats .pl in uporabite naslednje poverilnice.

  1. Uporabniško ime : [e-pošta zaščitena]
  2. Geslo : geslo postmaster

26. Če želite preveriti odprte povezave strežnika in stanje demona za poslušanje s pripadajočimi vtičnicami, izdajte naslednje ukaze.

# netstat -tulpn   ## numerical view
# netstat -tulp    ## semantic view

27. Če želite odpraviti druge težave s poštnimi transakcijami ali si ogledati strežnik v živo, lahko uporabite naslednje ukaze.

# tailf /var/log/maillog   ## visualize mail logs in real time
# mailq    		   ##  inspect mail queue
# telnet    		   ## test your server protocols and security form a different location
# nmap                     ## scan your server opened connections from different locations

28. Zdaj ste uvedli celotno poštno okolje, edino, kar manjka, je vsaj pri tej temi veljavno ime domene z zapisom MX DNS za sprejemanje pošte z drugih internetnih domen, vendar z lokalnega SMTP strežnik lahko in bo prenašal pošto na drugih internetno veljavnih domenah, zato bodite še posebej pozorni, komu pošiljate pošto, saj lahko pride do nezakonitih težav s svojim ponudnikom internetnih storitev.

Na spodnjem posnetku zaslona lahko vidite, da sem iz svoje lokalne neveljavne domene poslal e-poštno sporočilo na enega od računov google.com in da je e-poštno sporočilo uspešno prejel moj google račun.

V nasprotju z drugimi omrežnimi storitvami, pri katerih nameščate in nanje dolgo pozabljate, je upravljanje s poštnim strežnikom nenehno trdo delo zaradi težav s poštnimi storitvami, kot so neželena pošta, odprti rele in odbijanje sporočil.

Referenčne povezave

Domača stran iRedMail