Hur man installerar och konfigurerar Postfix på Ubuntu 16.04

posted in: Articles | 0

introduktion

Postfix är en populär open-source Mail Transfer Agent (mta) som kan användas för att dirigera och leverera E-post på ett Linux-system. Det uppskattas att cirka 25% av offentliga e-postservrar på internet kör Postfix.

i den här guiden lär vi dig hur du går igång snabbt med Postfix på en Ubuntu 16.04-server.

förutsättningar

för att följa den här guiden bör du ha tillgång till en icke-root-användare medsudo – behörighet. Du kan följa vår Ubuntu 16.,04 ursprungliga server setup guide för att skapa den nödvändiga användaren.

för att kunna konfigurera Postfix korrekt behöver du ett fullt kvalificerat domännamn pekat på din Ubuntu 16.04-server. Du kan hitta hjälp med att konfigurera ditt domännamn med DigitalOcean genom att följa den här guiden. Om du planerar att acceptera e-post måste du se till att du har en MX-post som pekar på din e-postserver också.

i denna handledning antar vi att du konfigurerar en värd som har FQDN för mail.example.com.,

Steg 1: Installera Postfix

Postfix ingår i Ubuntu standardförråd, så installationen är otroligt enkel.

för att börja, uppdatera din lokalaapt paketcache och installera sedan programvaran. Vi kommer att skicka in miljövariabeln DEBIAN_PRIORITY=low I vårt installationskommando för att svara på några ytterligare uppmaningar:

  • sudo apt-get update
  • sudo DEBIAN_PRIORITY=low apt-get install postfix

använd följande information för att fylla i dina uppmaningar korrekt för din miljö:

  • allmän typ av postkonfiguration?,: För detta, vi kommer att välja webbplats eftersom detta matchar våra infrastrukturbehov.
  • system mail name: det här är basdomänen som används för att konstruera en giltig e-postadress när endast kontodelen av adressen anges. Till exempel är värdnamnet för vår server mail.example.com, men vi vill förmodligen ställa in systempostnamnet till example.com så att användarnamnet user1, Postfix kommer att använda adressen .,
  • Root och postmaster mail mottagare: Detta är Linux-kontot som kommer att vidarebefordras mail adresserat till root@och postmaster@. Använd ditt primära konto för detta. I vårt fall, sammy.
  • andra destinationer att acceptera e-post för: detta definierar de postdestinationer som Postfix-instansen accepterar. Om du behöver lägga till några andra domäner som den här servern kommer att ansvara för att ta emot, Lägg till dem här, annars bör standard fungera bra.
  • tvinga synkrona uppdateringar på postkö?,: Eftersom du sannolikt använder ett journalfört filsystem, Acceptera Nej här.
  • lokala nätverk: det här är en lista över de nätverk som din e-postserver är konfigurerad för att vidarebefordra meddelanden till. Standard bör fungera för de flesta scenarier. Om du väljer att ändra det, se till att vara mycket restriktiv när det gäller nätverksintervallet.
  • mailbox size limit: detta kan användas för att begränsa storleken på meddelanden. Ställa in den på ” 0 ” inaktiverar någon storleksbegränsning.,
  • lokalt adresstilläggskaraktär: det här är tecknet som kan användas för att skilja den vanliga delen av adressen från ett tillägg (används för att skapa dynamiska Alias).
  • internetprotokoll att använda: Välj om du vill begränsa den IP-version som Postfix stöder. Vi väljer ”alla” för våra syften.

för att vara explicit är det de inställningar vi använder för den här guiden:

om du någonsin behöver återvända för att justera dessa inställningar igen kan du göra det genom att skriva:

  • sudo dpkg-reconfigure postfix

anvisningarna kommer att vara förfyllda med dina tidigare svar.,

När du är klar kan vi nu göra lite mer konfiguration för att ställa in vårt system hur vi vill ha det.

steg 2: Justera Postfix-konfigurationen

därefter kan vi justera vissa inställningar som paketet inte uppmanade oss för.

till att börja med kan vi ställa in brevlådan. Vi kommer att använda Maildir-formatet, som separerar meddelanden i enskilda filer som sedan flyttas mellan kataloger baserat på användaråtgärd. Det andra alternativet är MBOX-formatet (som vi inte kommer att täcka här) som lagrar alla meddelanden i en enda fil.,

vi ställer in variabelnhome_mailbox tillMaildir/ som skapar en katalogstruktur under det namnet i användarens hemkatalog. Kommandotpostconf kan användas för att fråga eller ställa in konfigurationsinställningar. Konfigurerahome_mailbox genom att skriva:

  • sudo postconf -e 'home_mailbox= Maildir/'

därefter kan vi ställa in platsen för tabellenvirtual_alias_maps. Denna tabell kartlägger godtyckliga e-postkonton till Linux-systemkonton. Vi kommer att skapa denna tabell på /etc/postfix/virtual., Återigen kan vi använda kommandot postconf:

  • sudo postconf -e 'virtual_alias_maps= hash:/etc/postfix/virtual'

steg 3: Kartlägg e-postadresser till Linux-konton

därefter kan vi ställa in filen virtuella kartor. Öppna filen i textredigeraren:

  • sudo nano /etc/postfix/virtual

den virtuella karttabellen alias använder ett mycket enkelt format. Till vänster kan du lista alla adresser som du vill acceptera e-post för. Efteråt, åtskilda av blanktecken, ange den Linux-användare du vill att e-post levereras till.,

om du till exempel vill acceptera e-post på och och vill ha dessa e-postmeddelanden levererade till sammy Linux-användaren kan du konfigurera din fil så här:

/etc/postfix/virtual
[email protected] [email protected] sammy

När du har mappat alla adresser till lämpliga serverkonton, spara och stäng filen.,

vi kan använda mappningen genom att skriva:

  • sudo postmap /etc/postfix/virtual

Starta om Postfix-processen för att vara säker på att alla våra ändringar har tillämpats:

  • sudo systemctl restart postfix

steg 4: Justera brandväggen

om du kör UFW-brandväggen, som konfigurerad i den ursprungliga serverns installationsguide, måste vi tillåta ett undantag för Postfix.

Du kan tillåta anslutningar till tjänsten genom att skriva:

  • sudo ufw allow Postfix

komponenten Postfix-server är installerad och klar. Därefter kommer vi att ställa in en klient som kan hantera posten som Postfix kommer att bearbeta.,

Steg 5: Ställa in miljön för att matcha e-postplatsen

innan vi installerar en klient bör vi se till att vår miljövariabel MAIL är korrekt inställd. Klienten kommer att inspektera denna variabel för att ta reda på var du ska leta efter användarens mail.

för att variabeln ska ställas in oavsett hur du kommer åt ditt konto (via ssh, su, su -, sudo, etc.) vi måste ställa in variabeln på några olika platser., Vi lägger till den i/etc/bash.bashrc och en fil i/etc/profile.d för att se till att varje användare har denna konfigurerad.

för att lägga till variabeln i dessa filer, skriv:

  • echo 'export MAIL=~/Maildir' | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh

för att läsa variabeln i din aktuella session kan du hämta filen/etc/profile.d/mail.sh:

  • source /etc/profile.d/mail.sh

steg 6: Installera och konfigurera e-postklienten

För att interagera med den post som levereras kan vi kommer att installera paketets-nail., Detta är en variant av BSD xmail – klienten, som är funktionsrik, kan hantera Maildir-formatet korrekt och är mestadels bakåtkompatibel. GNU-versionen av mail har vissa frustrerande begränsningar, till exempel att alltid spara Läs e-post till MBOX-format oavsett källformat.

för att installera paketets-nail, skriv:

  • sudo apt-get install s-nail

Vi bör justera några inställningar., Öppna filen/etc/s-nail.rc I redigeraren:

  • sudo nano /etc/s-nail.rc

längst ner i filen, Lägg till följande alternativ:

/etc / s-nail.rc
. . .set emptystartset folder=Maildirset record=+sent

detta gör det möjligt för klienten att öppna även med en tom inkorg. Det kommer också att ställa in Maildir katalogen till den interna folder variabeln och använd sedan detta för att skapa en sent MBOX-fil inom det, för att lagra skickat mail.

spara och stäng filen när du är klar.,

Steg 7: initiera Maildir och testa klienten

Nu kan vi testa klienten.

initiera katalogstrukturen

det enklaste sättet att skapa Maildir-strukturen i vår hemkatalog är att skicka oss ett mail. Vi kan göra detta med kommandotmail. Eftersom filensent endast är tillgänglig när Maildir skapas, bör vi inaktivera skrivning till det för vår första e-post. Vi kan göra detta genom att skicka alternativet-Snorecord.,

skicka e-postmeddelandet genom att skicka en sträng till kommandotmail. Justera kommandot för att markera din Linux – användare som mottagare:

  • echo 'init' | mail -s 'init' -Snorecord sammy

Du bör få följande svar:

Output
Can't canonicalize "/home/sammy/Maildir"

detta är normalt och visas bara under det första meddelandet., Vi kan kontrollera för att se till att katalogen skapades genom att leta efter vår~/Maildir katalog:

  • ls -R ~/Maildir

Du bör se att katalogstrukturen har skapats och att en ny meddelandefil finns i katalogen~/Maildir/new:

det ser ut som att vårt mail har levererats.,

  • h
Output
s-nail version v14.8.6. Type ? for help."/home/sammy/Maildir": 1 message 1 new>R 1 [email protected] Wed Dec 31 19:00 14/369 init

eftersom det här meddelandet inte är särskilt användbart kan vi ta bort det med d:

  • d

Avsluta för att komma tillbaka till terminalen genom att skriva q:

  • q

skicka e-post till klienten

Du kan testa att skicka e-post genom att skriva ett meddelande i en textredigerare:

  • nano ~/test_message

inuti, skriv in någon text som du vill maila:

~/test_message
Hello,This is a test. Please confirm receipt!

med kommandot cat kan vi skicka meddelandet till

Hello,This is a test. Please confirm receipt!

med kommandot cat f6560fd726 ” > process., Detta kommer att skicka meddelandet som din Linux-användare som standard. Du kan justera fältet ”From” med flaggan -r om du vill ändra det värdet till något annat:

  • cat ~/test_message | mail -s 'Test email subject line' -r from_field_account [email protected]

alternativen ovan är:

  • -s: ämnesraden i e-postmeddelandet
  • -r: en valfri ändring i fältet ”From:” i e-postmeddelandet. Som standard används Linux-användaren du är inloggad som för att fylla i det här fältet. Alternativet-r låter dig åsidosätta detta.,
  • : kontot att skicka e-postmeddelandet till. Ändra detta till ett giltigt konto som du har tillgång till.

Du kan visa dina skickade meddelanden i dinmail – klient. Starta den interaktiva klienten igen genom att skriva:

  • mail

efteråt, visa dina skickade meddelanden genom att skriva:

  • file +sent

Du kan hantera skickat mail med samma kommandon som du använder för inkommande post.

slutsats

Du borde nu ha Postfix konfigurerad på din Ubuntu 16.04-server., Hantera e-postservrar kan vara en tuff uppgift för början administratörer, men med denna konfiguration, Du bör ha grundläggande mta e-postfunktionalitet för att komma igång.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *