Installer 'iRedMail' (Fully Featured Mail Server) med virtuelle domener, webmail, SpamAssassin og ClamAV i Linux


Etter HTTP- og skygge-DNS-tjenester er e-post (SMTP, POP, IMAP og alle relaterte krypterte e-postprotokoller) en av de mest brukte tjenestene på Internett, og også en av de mest fornuftige, på grunn av spam og åpne e-postservere.

Denne opplæringen vil veilede deg gjennom å installere en full e-postserver med MTA-, MDA- og MUA-programvare på noen få minutter på RHEL, CentOS, Scientific Linux og Debian, Ubuntu, Linux Mint med Postfix, virtuelle domener og brukere med MySQL, Dovecot – støtte for POP3/POP3S, IMAP/IMAPS, Roundcube – Webmail og også e-post spam og virusskanning med SpamAssassin og ClamAV, alt installert med en enkelt programvarepakke kalt 'iRedMail'.

Hva er iRedMail

iRedMail er en åpen kildekode fullverdig e-postserverløsning som kan spare mye tid for systemadministratorer for komplekse konfigurasjoner, har støtte for alle større Linux-distribusjoner og leveres med følgende Linux-pakker.

  1. Postfix: SMTP-tjeneste – standard MTA.
  2. Dovecot: POP3/POP3S, IMAP/IMAPS, Managesieve tjeneste – standard MDA.
  3. Apache: Webserver.
  4. MySQL/PostgreSQL: Lagring av programdata og/eller e-postkontoer.
  5. OpenLDAP: Lagring av e-postkontoer.
  6. Policyd: Postfix-policyserver.
  7. Amavisd: Et grensesnitt mellom Postfix og SpamAssassin, ClamAV. Brukes til spam og virusskanning.
  8. Roundcube: Webmail – standard MUA.
  9. Awstats: Apache og Postfix logganalysator.
  10. Fail2ban: skanner loggfiler (f.eks. /var/log/maillog) og forbyr IP-er som viser ondsinnede systemforsøk.

Krav

  1. CentOS 6.5 minimal installasjon – CentOS 6.5 installasjonsveiledning
  2. En gyldig DNS MX-post som peker til e-postserveren din som er ansvarlig for domenenavnet ditt.

Denne opplæringen er også utformet kun for test- og læringsformål og bruker ikke gyldige MX-poster, og heller ikke en gyldig DNS-domenemane, alle konfigurasjoner gjøres lokalt ved hjelp av virtuelle mottakere med MySQL (kan motta eller sende e-post kun mellom lokale domenebrukere – lokalt domenenavn oppgitt fra vertsfil), men vær oppmerksom på at selv om systemet vårt ikke kan motta e-post fra internettdomener, kan det faktisk videresende e-post til disse domenepostserverne gjennom Postfix MTA, selv om du bor på et privat IP-adresseområde , uten gyldig MX-post og bruker et fiktivt domene, så vær oppmerksom på hva du gjør.

Trinn 1: Innledende konfigurasjoner og statisk IP-adresse

1. Etter første omstart, logg på med root-kontoen din og sørg for at systemet ditt er oppdatert og installer noen nyttige pakker som trengs for senere bruk.

På RHEL/CentOS/Scientific Linux
yum update && yum upgrade
yum install nano wget bzip2
På Debian/Ubuntu/Linux Mint
apt-get update && apt-get upgrade
apt-get install nano wget bzip2

2. Fordi denne boksen fungerer som en e-postserver, må en statisk IP konfigureres på nettverksgrensesnittet. For å legge til en statisk IP, åpne og rediger NIC-konfigurasjonsfilen som ligger på /etc/sysconfig/network-scripts/ banen og legg til følgende verdier.

På RHEL/CentOS/Scientific Linux
nano /etc/sysconfig/network-scripts/ifcfg-eth0

Bruk denne filen som en mal og erstatt den med dine egendefinerte verdier.

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

Etter at du er ferdig med å redigere NIC-filen, åpner du nettverksfilen fra samme sted som ovenfor og legger til serverens ukvalifiserte vertsnavn i HOSTNAME-direktivet.

nano /etc/sysconfig/network-scripts/network

På Debian/Ubuntu/Linux Mint
nano /etc/network/interfaces

Erstatt følgende verdier med innstillingene dine.

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

Når du er ferdig med nettverksfilen din, legg nå til vertsnavnet ditt i filen /etc/hostname.

nano /etc/hostnames

3. Åpne deretter /etc/resolv.conf-filen og legg til DNS IP-serverne for hele systemet som i skjermbildet nedenfor.

nano /etc/resolv.conf

Legg til følgende innhold med dine favorittnavneservere.

search mydomain.lan
nameserver 8.8.8.8
nameserver 8.8.8.8

4. Etter at alle konfigurasjonene ovenfor er skrevet til de tilhørende filene, start nettverkstjenesten på nytt for å bruke nye konfigurasjoner og bekrefte den ved å bruke kommandoene ping og ifconfig.

service network restart	[On RedHat based systems]

service networking restart	[On Debian based systems]

ifconfig

5. Nå som det statiske nettverket ditt er fullt operativt, rediger /etc/hosts-filen og legg til ditt ukvalifiserte og FQDN-vertsnavn som eksemplet nedenfor.

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

For å bekrefte konfigurasjonsproblemet med vertsnavnet, kjør kommandoene vertsnavn og vertsnavn –f.

hostname
hostname -f

6. En annen nyttig pakke er bash-completion (autofullfør kommandosekvens ved å bruke [Tab]-tasten) som leveres av EPEL-depotet under RedHat baserte systemer og deretter oppdatere kildene dine.

På RHEL/CentOS/Scientific Linux
rpm –Uvh http://fedora.mirrors.romtelecom.ro/pub/epel/6/i386/epel-release-6-8.noarch.rpm
yum repolist && yum upgrade

Etter at kildene dine har blitt oppdatert installer bash-completion-verktøyet (svar Ja på alle spørsmål).

yum install bash-completion

På Debian/Ubuntu/Linux Mint

Bash-completion-pakken under Debian-baserte systemer kan enkelt installeres ved å bruke følgende kommando.

apt-get install bash-completion

7. Det siste trinnet er å legge til en systembruker med root-rettigheter. Legg først til brukeren og konfigurer passordet.

adduser your_user
passwd your_user

Etter at brukeren din er lagt til, åpner du /etc/sudoers-filen og fjerner kommentarfeltet til %wheel-gruppen, og deretter legger du til den nyopprettede brukeren i hjulgruppen.

nano /etc/sudoers

Søk og fjern kommenter hjulgruppelinje for å se slik ut.

%wheel                ALL=(ALL)            ALL

Lukk filen og legg til brukeren din i hjulgruppen ved å gi følgende kommando.

usermod -aG wheel your_user

8. Før vi kan begynne å laste ned og installere iRedMail-programvare, start systemet på nytt, logg på med den nyopprettede brukeren og sørg for at alt er fullt funksjonelt.

Trinn 2: Installer iRedMail

9. For å laste ned iRedMail-arkivpakken må du besøke dens offisielle nedlastingsside, eller du kan bruke kommandoen wget for å laste ned den siste versjonen ( 0.8.7 på tidspunktet for skriving av denne artikkelen).

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

10. Etter at nedlastingen av iRedMail-arkivet er fullført, pakk det ut ved å bruke følgende kommando.

tar xvjf iRedMail-0.8.7.tar.bz2

11. Skriv deretter inn den nylig utpakkede iRedMail-katalogbanen, merk iRedMail.sh-skriptet med kjørbare tillatelser og kjør det.

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

12. Etter innledende systemkontroller begynner programmet å legge til nødvendig depot, og den første veiledningsmeldingen spør deg om du vil fortsette med installasjonen eller avbryte. Velg Ja for å fortsette.

13. iRedMail bruker formatet Maildir til å lagre e-poster på /var/vmail-systembanen der den oppretter atskilte kataloger for hvert domene du legger til til MTA-serveren din. Hvis du er komfortabel med denne banen, trykk Neste for å gå videre med serverkonfigurasjoner, ellers oppgi ønsket plassering og deretter Neste.

14. På neste trinn velger du din foretrukne database for å lagre e-postdomener og mottakere som vil koble til Postfix. Denne opplæringen fokuserer på MySQL-databasen, så velg MySQL ved å bruke [mellomrom]-linjen og fortsett med Neste og oppgi et sterkt passord for MySQL-rotkontoen.

15. I neste trinn legger du til ditt første virtuelle domenenavn. Hvis du eier et registrert domenenavn lagt til her (legg bare til domenenavnet, ikke systemet FQDN).

16. Som standard oppretter iRedAdmin en administrativ bruker med full makt over serveren din som kan nås gjennom iRedAdmin-panelet eller gjennom Dovecot-protokoller (standard Roundcube webmail-grensesnitt eller annen IMAP/POP MUA-programvare som SquirrelMail, Rainloop , Microsoft Outlook, Mozilla Thunderbird, Evolution, Mutt, Elm osv.).

Også denne postmaster administrative kontoen brukes av systemet til å rapportere hendelser relatert til e-postfunksjoner eller andre systemfeil eller nyttig informasjon – logwatch sender vanligvis sin statistikk hit – så velg et sterkt passord og fortsett med Neste.

17. På neste trinn velger du de andre e-postserverkomponentene dine som iRedAdmin offisielle administrasjonspanel til Postfix, DKIM-domenenøkler – (legger til en signatur til meldingshode som evaluerer meldingstillit for endelig levering eller videre releer), Roundcube standard webmail-grensesnitt (hvis du planlegger å bruke andre Mail Delivery Agent, hopp over Roundcube), PhpMyadmin (hvis du er komfortabel med MySQL-kommandolinjen bør du også hoppe over å installere PhpMyAdmin), Awstats (nyttig loggstatistikk og analysator), Fail2ban (beskytter serveren din mot brute force angrep).

18. På neste serie spørsmål, avhengig av valgfrie komponenter som er installert, bør du svare med Ja. Vær ekstra oppmerksom på iRedMail.tips-filen som ligger i den utpakkede katalogen $HOME fordi den inneholder sensitiv e-postserverinformasjon som brukernavn og passord for serverapplikasjoner, serverkonfigurasjonsfiler, standard URL og annen viktig informasjon.

19. Etter at installasjonen er fullført start systemet på nytt og bekreft iRedmail.tips-filen for å se serverens standardinnstillinger – du bør flytte denne filen til en sikker systembane med 600 tillatelser.

20. Få tilgang til standard nettapplikasjoner på følgende URL-er.

  1. Roundcube Webmail – https://domenenavn eller server_IP/mail/
  2. IRedAdmin-panel – https://domenenavn eller server_IP/iredadmin/
  3. PhpMyadmin – https://domenenavn eller server_IP /phpmyadmin/
  4. Awstats – https://domenenavn eller server_IP/awstats/awstats.pl?config=web (eller ?config=smtp)
  5. Policyd anti-spam plugin – https://domenenavn eller server_IP/cluebringer/

Trinn 3: Innledende nettpostkonfigurasjoner

21. iRedAdmin administrasjonspanel tilbyr et grunnleggende webmail-grensesnitt der du kan legge til virtuelle domener og kontoer for e-postserveren din som Postfix kan håndtere gjennom MySQL-backend. For å logge på iRedAdmin-panelet, pek nettleseren til https://domenenavn/iredadmin/ eller https://server_IP/iredadmin/ URL og bruk følgende standardlegitimasjon.

  1. Brukernavn: postmaster@ditt_domenenavn.tld
  2. Passord: postmesterpassord satt til #16 punkt

22. For å legge til en bruker, naviger til Legg til -> Bruker og oppgi ønsket brukernavn, e-postadresse og passord. Du kan også konfigurere hvor mye plass brukerens postkasse kan håndtere med Quota, og du kan også markedsføre brukere med administrative fullmakter over iRedAdmin-panelet ved å merke bruker som global admin.

23. Lesing av brukernes e-post leveres av Roundcube-nettgrensesnittet. For å få tilgang til den, gå til https://domenenavn/mail eller https://server_IP/mail/ URL og oppgi e-postkontolegitimasjonen din i form av [ e-postbeskyttet].

Når du får tilgang til standard administrative postkontopostmaster, vil du finne to første e-poster, en av dem inkluderer serversensitiv informasjon. Herfra kan du nå lese e-poster, skrive og sende e-poster til andre domenebrukere.

24. For å få tilgang til serverens Policyd anti-spam policy, gå til https://domenenavn/cluebringer eller https://server_IP/ cluebringer/ og oppgi følgende legitimasjon.

  1. Brukernavn: [e-postbeskyttet]
  2. Passord: postmesterpassord

25. For å se e-postserverstatistikken din, gå til https://mydomain.lan/awstats/awstats.pl/?config=smtp eller https:// mydomain.lan/awstats/awstats.pl og bruk følgende legitimasjon.

  1. Brukernavn: [e-postbeskyttet]
  2. Passord: postmesterpassord

26. Hvis du vil sjekke serverens åpnede tilkoblinger og lyttedemonstatus med deres afferente stikkontakter, utfør følgende kommandoer.

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

27. For å feilsøke andre problemer med e-posttransaksjoner eller se at serveren din fungerer live, kan du bruke følgende kommandoer.

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. Nå har du distribuert et fullstendig e-postmiljø, det eneste som mangler, i det minste i dette emnet er et gyldig domenenavn med en MX DNS-post for å motta e-post fra andre internettdomener, men lokal SMTP-server kan og vil videresende e-post på andre internettgyldige domener, så vær ekstra oppmerksom på hvem du sender e-post fordi du kan få ulovlige problemer med Internett-leverandøren din.

Fra skjermbildet nedenfor kan du se at jeg har sendt en e-post fra mitt lokale ugyldige domene til en av google.com-kontoene mine, og e-posten ble mottatt av google-kontoen min.

I motsetning til andre nettverkstjenester hvor du installerer og glemmer dem i lang tid, er administrasjon av en e-postserver et kontinuerlig hardt arbeid på grunn av e-posttjenester relaterte problemer som SPAM, åpent relé og meldingssprett.

Referanselenker

iRedMail-hjemmesiden