Kjører din egen e-postserver for åpen kildekode

Hva du skal skape

Om tiden for Edward Snowdens NSA PRISM åpenbaringer, begynte jeg å utforske alternative e-postsystemer. Australia-basert FastMail fanget min oppmerksomhet på grunn av en venns anbefaling og tilsynelatende bedre personvernbeskyttelse sitt hjemland tilbys:

"Australia har ikke noe som svarer til USAs sikkerhetsbrev, så vi kan ikke bli tvunget til å gjøre noe uten å få lov til å avsløre det."

Imidlertid er noen av FastMails servere faktisk vert i USA, og e-post kan bli kompromittert på en rekke måter. Enten du bruker en tredjepartstjeneste eller verter din egen e-post, hvis personvern og sikkerhet er dine viktigste bekymringer, må du bygge ferdighetssettet på flere nivåer.

Jeg har ingen illusjoner om at selvverten din e-post vil holde regjeringen fra å lese den hvis den vil. For eksempel har Amazon nylig mottatt en kontrakt på 600 millioner dollar for å drive CIAs skyoperasjoner. Men det vil gjøre det litt vanskeligere og oppfordre open source innovatører til å flytte plattformer mot en mer privat og sikrere verden.

Hvis du minimerer kostnadene, er du bekymret. Husk å kjøre din egen e-postserver vil ikke være gratis. Det kan enkelt koste fra $ 7 til $ 15 per måned eller mer, avhengig av konfigurasjonen. Og jeg anbefaler på det sterkeste å kjøre en dedikert forekomst eller serverblanding av andre programmer på samme server kan utsette e-posten for et bredt spekter av trusler.

En slik plattform jeg begynte å eksperimentere med, er iRedMail, en åpen kildekode-e-postserverløsning som kjører på vanlige Linux-systemer. iRedMail-bunter RoundCube, en åpen kildekode webmail klient. Sammen gir begge et ganske anstendig Gmail-alternativ. Og iRedMail støtter IMAP og POP, slik at du kan kjøre den med en rekke smarttelefon- og nettbrettapplikasjoner og stasjonære postklienter.

I denne opplæringsserien vil jeg gå gjennom grunnleggende om å installere og konfigurere iRedMail og RoundCube. Hvis du vil ha ekstra hjelp, tilbyr iRedMail også en førsteklasses administrativ konsoll og betalt installasjon og støtte.

Ikke la deg lure til å tro at dette vil være like enkelt som å kjøre WordPress. Det er ikke. I tillegg til problemer med sikkerhet og personvern, må du overbevise andre e-postservere for å stole på e-postserveren din. Så du vil sende noen e-post (via kode) beskriver noe av kompleksiteten i å håndtere denne utfordringen, inkludert konfigurering av omvendt PTR og DomainKeys Identified Mail.

Oversikt over iRedMail-funksjoner

iRedMail er en gratis, fullverdig, åpen kildekode-e-postserverløsning. Den gir en enkel automatisert installeringsprosedyre og kjører på syv versjoner av Linux: Red Hat Enterprise Linux, CentOS, Scientific Linux, Debian, Ubuntu, FreeBSD og OpenBSD. Det er et open source-prosjekt lisensiert under GPLv2.

Med iRedMail styrer du dine egne data. Alle dine personlige data er på din server, ikke på tredjeparts. Mail kan lagres med enten PostgreSQL, MySQL eller OpenLDAP.

For sending og levering av post, gir den SMTP via Postfix og bruker Dovecot til å levere POP3 / POP3S og IMAP / IMAPS. Den gir flere lag med anti-spam og trusselbeskyttelse, inkludert Amavisd, SpamAssassin, ClamAV og Fail2ban..

Her er en visning som representerer den generelle iRedMail-arkitekturen:


Bilde kreditt: http://workaround.org/ispmail/lenny/bigpicture

Den gir integrert webmail via Roundcube, som har sitt eget utviklingssamfunn som gir temaer og plugins.

Her er en komplett liste over RoundCube-funksjoner.

Installere iRedMail

Konfigurere operativsystemet

Nå går jeg deg gjennom å installere iRedMail med MySQL på Ubuntu 14.x. Jeg bruker denne veiledningen til å installere og konfigurere Ubuntu på Digital Ocean, med en primær forskjell. I stedet for å bruke LAMP-stakken i kategorien Programmer, vil vi bruke standard Ubuntu 14.04-installasjonen i distribusjoner fanen, som vist nedenfor under installasjonsprosessen:

Selvfølgelig kan du bruke hvilken som helst generisk virtuell server du ønsker.

Hvis du bruker 512MB minneeksemplet, vil du sette opp en byttefil (bla til Konfigurere Droppet), Ellers vil antivirusprogrammet sannsynligvis krasje og forhindre postlevering.

Konfigurere ditt domenenavn

Når du har mottatt din IP-adresse, må du kartlegge domenenavnets DNS til IP-adressen. Og du vil trenge et sekundært domene for posttjenestene. 

For eksempel bruker jeg red.lookahead.me som underdomene for installasjonen min - det er min primære server vertsnavn:

red.lookahead.me A 104.236.52.19

Men under installasjonen vil iRedMail også kreve et e-postserverdomene eller underdomene. Jeg bruker mailserver.lookahead.me:

mailserver.lookahead.me A 104.236.52.19

Viktig: Velge standarddomener

Jeg valgte domenene over for demonstrasjonsformål, og disse valgene gjenspeiles i skjermbildene i hele installasjonsprosessen nedenfor.

En annen måte å konfigurere iRedMail på er å konfigurere serveren din med vertsnavn mail.yourexampledomain.com og motta e-post på rotdomenet ditt. Så, når du oppretter server-forekomsten din, må du sette vertsnavnet som mail.yourexampledomain.com. Og, når du blir bedt om av iRedMail for den virtuelle serveren din, må du gi roten domenet.

Med andre ord: i stedet for red.lookahead.me, konfigurer vertsnavnet som mail.yourexampledomain.com. I stedet for mailserver.lookahead.me, spesifiser du yourexampledomain.com.

Dette vil tillate deg å logge inn på Roundcube webmail på http://mail.yourexampledomain.com og sende og motta epost fra [email protected] rett ut av boksen.

Selvfølgelig må du også legge til MX-poster med domenenavnregistratoren for det valgte domenet ditt for å sende meldinger til din iRedMail-server. Her er et eksempel:

lookahead.me. 1800 MX red.lookahead.me. 10

Se også Oppsett DNS-poster for din iRedMail-server.

Kjører installasjonsskriptet iRedMail

Vi kjører iRedMail-installasjonen fra \ root. Så først laster vi ned koden og trekker den ut fra BitBucket-arkivet:

cd / root wget https://bitbucket.org/zhb/iredmail/downloads/iRedMail-0.9.0.tar.bz2 tar xjf iRedMail-0.9.0.tar.bz2

Så løper vi installeringsskriptet:

cd iRedMail-0.9.0 bash iRedMail.sh 

iRedMail vil begynne å gå deg gjennom installasjonsveiviseren. Du kan ofte godta standardresponsene.

Først kan du angi en bane for postboksforretningen: 

Deretter kan du velge om du skal bruke Nginx eller Apache:

Deretter kan du velge postbutikken din. Vi bruker MySQL for denne demonstrasjonen:

Angi et passord for MySQL Server administratorkonto:

Gi deretter ditt sekundære domenenavn til postserveren - ikke serverens vertsnavn. Jeg bruker mailserver.lookahead.me:

Angi et passord for administratorbrukerkontoen:

Det fullfører den opprinnelige konfigurasjonen. En fil vil bli skrevet til /root/iRedmail-0.9.0/config som må sikres, men kan være nødvendig for å referere til:

Klikk Fortsett for å starte den faktiske automatiserte installasjonsprosessen. Når det er gjort, vil du bli vist serveradressene dine for å bruke Roundcube og administrativ panelet, iRedAdmin. 

Gratulerer, du er klar til å starte iRedMail. Start serveren på nytt og la oss sjekke ut hva vi har opprettet.

Bruke Roundcube

I nettleseren din, besøk din webmailadresse, f.eks. http://yourexampledomain.com/mail. Du blir møtt med Roundcube-påloggingsskjermen.

Når du logger på, vil du se Roundcube-postkasse-konsollen:

Klikk komponer å sende din første melding:

Vi vil utforske Roundcube og dens tilpasningsalternativer videre i en kommende opplæring.

Administrere iRedMail

Nå, la oss utforske administrasjonspanelet for iRedMail. Gå til http://yourexampledomain.com/iredadmin for å se påloggingspanelet for back-end:

Når du logger på, ser du iRedAdmin Dashboard:

Her kan du administrere domener og kontoer konfigurert for e-postserveren din:

Og du kan administrere administratorer:

Bruker Legg til menyen, kan du legge til brukere:

Hva blir det neste?

I den neste opplæringen vil jeg gå deg gjennom flere konfigurasjoner av iRedMail og utforske administrasjonens back-end-konsoll.

Vennligst legg inn eventuelle kommentarer, rettelser eller flere ideer nedenfor. Du kan bla gjennom mine andre Tuts + veiledninger på min instruktørside eller følg meg på Twitter @ reifman.

Relaterte linker

  • iRedMail nettsted og dokumentasjon
  • RoundCube Nettsted
  • Slik installerer du din egen private e-postserver i skyen
  • Så du vil sende noen e-post (via kode)