Inleiding
Postfix is een populaire open-source Mail Transfer Agent (MTA) die kan worden gebruikt om e-mail te routeren en te leveren op een Linux-systeem. Geschat wordt dat ongeveer 25% van de openbare mailservers op het internet Postfix draaien.
in deze gids leren we u hoe u snel aan de slag kunt met Postfix op een Ubuntu 16.04-server.
Prerequisites
om deze gids te volgen, moet u toegang hebben tot een niet-root gebruiker metsudo
privileges. U kunt onze Ubuntu 16 volgen.,04 initial server setup guide om de benodigde gebruiker te maken.
om Postfix correct te kunnen configureren, heeft u een volledig gekwalificeerde domeinnaam nodig die naar uw Ubuntu 16.04-server is gericht. U kunt hulp vinden bij het instellen van uw domeinnaam met DigitalOcean door deze handleiding te volgen. Als je van plan bent om mail te accepteren, moet je er ook voor zorgen dat je een MX record hebt dat naar je mailserver wijst.
voor deze tutorial gaan we ervan uit dat u een host configureert met de FQDN van mail.example.com
.,
Stap 1: Postfix installeren
Postfix is opgenomen in Ubuntu ‘ s standaard repositories, dus installatie is ongelooflijk eenvoudig.
om te beginnen, update uw lokaleapt
pakketcache en installeer de software. We zullen de DEBIAN_PRIORITY=low
omgevingsvariabele doorgeven aan ons installatie commando om een aantal extra prompts te beantwoorden:
- sudo apt-get update
- sudo DEBIAN_PRIORITY=low apt-get install postfix
Gebruik de volgende informatie om uw prompts correct in te vullen voor uw omgeving:
- Algemeen Type E-mailconfiguratie?,: Hiervoor zullen we internetsite kiezen, omdat dit aansluit bij onze infrastructuurbehoeften.
- Systeemmailnaam: Dit is het basisdomein dat wordt gebruikt om een geldig e-mailadres te construeren wanneer alleen het accountgedeelte van het adres wordt opgegeven. Bijvoorbeeld, de hostnaam van onze server is
mail.example.com
, maar we willen waarschijnlijk de systeemmailnaam instellen opexample.com
zodat gegeven de gebruikersnaamuser1
, Postfix het adreszal gebruiken.,
- root-en postmaster-e-mailontvanger: Dit is het Linux-account dat mail zal doorsturen die is geadresseerd aan
root@
enpostmaster@
. Gebruik hiervoor je primaire account. In ons geval, sammy. - andere bestemmingen om e-mail te accepteren: dit definieert de e-mailbestemmingen die deze postfix instantie zal accepteren. Als u nog andere domeinen moet toevoegen die deze server verantwoordelijk zal zijn voor het ontvangen, voeg deze dan hier toe, anders zou de standaard prima moeten werken.
- synchrone updates forceren in e-mailwachtrij?,: Omdat je waarschijnlijk een journaled bestandssysteem gebruikt, accepteer hier geen.
- lokale netwerken: Dit is een lijst van de netwerken waarvoor uw mailserver is geconfigureerd. De standaard zou moeten werken voor de meeste scenario ‘ s. Als u ervoor kiest om het te wijzigen, zorg ervoor dat u zeer restrictief bent met betrekking tot het netwerkbereik.
- postvakgrootte limiet: dit kan worden gebruikt om de grootte van berichten te beperken. Het instellen van het op” 0 ” schakelt elke grootte beperking.,
- lokaal adresextensie teken: dit is het teken dat gebruikt kan worden om het reguliere gedeelte van het adres te scheiden van een extensie (gebruikt om dynamische aliassen te maken).
- te gebruiken internetprotocollen: kies of u de IP-versie wilt beperken die Postfix ondersteunt. We kiezen “alles” voor onze doeleinden.
om expliciet te zijn, zijn dit de instellingen die we zullen gebruiken voor deze gids:
Als u ooit wilt terugkeren om deze instellingen opnieuw aan te passen, kunt u dit doen door te typen:
- sudo dpkg-reconfigure postfix
de prompts zullen vooraf worden ingevuld met uw vorige antwoorden.,
Als u klaar bent, kunnen we nu iets meer configuratie doen om ons systeem in te stellen zoals we het zouden willen.
Stap 2: Tweak de Postfix configuratie
vervolgens kunnen we enkele instellingen aanpassen waar het pakket ons niet om vroeg.
om te beginnen kunnen we de mailbox instellen. We zullen het Maildir formaat gebruiken, dat berichten scheidt in individuele bestanden die vervolgens worden verplaatst tussen mappen op basis van de actie van de gebruiker. De andere optie is de mbox-indeling (die we hier niet behandelen) die alle berichten in een enkel bestand opslaat.,
we zullen de variabele home_mailbox
instellen op Maildir/
die een mapstructuur onder die naam zal aanmaken binnen de persoonlijke map van de gebruiker. Het commando postconf
kan worden gebruikt om configuratie-instellingen te bevragen of in te stellen. Configureer home_mailbox
door te typen:
- sudo postconf -e 'home_mailbox= Maildir/'
vervolgens kunnen we de locatie van de virtual_alias_maps
tabel instellen. In deze tabel worden willekeurige e-mailaccounts toegewezen aan Linux-systeemaccounts. We zullen deze tabel aanmaken op /etc/postfix/virtual
., Nogmaals, we kunnen het postconf
commando gebruiken:
- sudo postconf -e 'virtual_alias_maps= hash:/etc/postfix/virtual'
Stap 3: e-mailadressen toewijzen aan Linux-Accounts
vervolgens kunnen we het virtuele maps-bestand instellen. Open het bestand in uw teksteditor:
- sudo nano /etc/postfix/virtual
de virtuele alias map tabel gebruikt een zeer eenvoudig formaat. Aan de linkerkant, kunt u een lijst van alle adressen die u wilt e-mail te accepteren voor. Daarna, gescheiden door witruimte, voer je de Linux gebruiker in waar je die mail wilt ontvangen.,
bijvoorbeeld, als u wilt accepteren e-mail aan en
en zou graag de e-mails afgeleverd op de
sammy
Linux gebruiker, kunt u uw bestand als volgt aan:
[email protected] [email protected] sammy
Nadat u alles hebt toegewezen alle adressen op de juiste server-accounts, opslaan en sluit het bestand.,
We kunnen de toewijzing toepassen door te typen:
- sudo postmap /etc/postfix/virtual
Herstart het postfix-proces om er zeker van te zijn dat al onze wijzigingen zijn toegepast:
- sudo systemctl restart postfix
Stap 4: Pas De Firewall aan
Als u de UFW firewall gebruikt, zoals geconfigureerd in de handleiding voor initiële serverinstellingen, zullen we moeten sta een uitzondering toe voor postfix.
u kunt verbindingen met de service toestaan door te typen:
- sudo ufw allow Postfix
Het postfix-serveronderdeel is geïnstalleerd en klaar. Vervolgens zullen we een client opzetten die de mail kan verwerken die Postfix zal verwerken.,
Stap 5: de omgeving Instellen om overeen te komen met de Maillocatie
voordat we een client installeren, moeten we ervoor zorgen dat onze MAIL
omgevingsvariabele correct is ingesteld. De client zal deze variabele inspecteren om erachter te komen waar te zoeken naar de mail van de gebruiker.
om de variabele in te stellen ongeacht hoe u toegang krijgt tot uw account (via ssh
, su
, su -
, sudo
, enz.) we moeten de variabele op een paar verschillende locaties instellen., We zullen het toevoegen aan /etc/bash.bashrc
en een bestand binnen /etc/profile.d
om ervoor te zorgen dat elke gebruiker dit heeft geconfigureerd.
om de variabele aan deze bestanden toe te voegen, typ:
- echo 'export MAIL=~/Maildir' | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh
om de variabele in uw huidige sessie te lezen, kunt u de /etc/profile.d/mail.sh
bestand:
- source /etc/profile.d/mail.sh
Stap 6: Installeer en configureer de mailclient
om te interageren met de mail die wordt bezorgd, zullen we het s-nail
pakket installeren., Dit is een variant van de BSD xmail
client, die rijk is aan functies, het Maildir-formaat correct kan verwerken en meestal achterwaarts compatibel is. De GNU-versie van mail
heeft een aantal frustrerende beperkingen, zoals altijd lezen van e-mail naar het MBOX-formaat, ongeacht het bronformaat.
om het s-nail
pakket te installeren, typ:
- sudo apt-get install s-nail
We moeten een paar instellingen aanpassen., Open het /etc/s-nail.rc
bestand in uw editor:
- sudo nano /etc/s-nail.rc
aan de onderkant van het bestand, voeg de volgende opties toe:
. . .set emptystartset folder=Maildirset record=+sent
Hiermee kan de client openen, zelfs met een leeg Postvak IN. Het zal ook de Maildir
map instellen op de interne folder
variabele en deze vervolgens gebruiken om een sent
MBOX-bestand binnen dat te maken, voor het opslaan van verzonden e-mail.
sla het bestand op en sluit het als u klaar bent.,
Stap 7: Initialiseer de Maildir en Test de Client
nu kunnen we de client testen.
initialiseren van de mapstructuur
De makkelijkste manier om de Maildir-structuur binnen onze thuismap aan te maken is door onszelf een e-mail te sturen. We kunnen dit doen met het mail
Commando. Omdat het sent
bestand alleen beschikbaar zal zijn als de Maildir is aangemaakt, moeten we het schrijven naar dat bestand uitschakelen voor onze eerste e-mail. We kunnen dit doen door de -Snorecord
optie te geven.,
verzend de e-mail door een tekenreeks door te pipen naar het mail
Commando. Pas het commando aan om je Linux gebruiker als ontvanger te markeren:
- echo 'init' | mail -s 'init' -Snorecord sammy
je zou het volgende antwoord moeten krijgen:
OutputCan't canonicalize "/home/sammy/Maildir"
Dit is normaal en zal alleen getoond worden tijdens dit eerste bericht., We kunnen controleren of de map is aangemaakt door te zoeken naar onze ~/Maildir
Map:
- ls -R ~/Maildir
u zou moeten zien dat de mapstructuur is aangemaakt en dat er een nieuw berichtbestand in de ~/Maildir/new
Map:
Het lijkt erop dat onze e-mail is afgeleverd.,:
- h
Outputs-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
Omdat dit bericht is niet erg handig, kunnen we verwijderen met d:
- d
Quit om terug te gaan naar de terminal te typen q:
- q
e-Mail Verzenden met de Client
U kunt testen of het versturen van e-mail door het invoeren van een bericht in een tekst editor:
- nano ~/test_message
In, voer een tekst in die u wilt e-mail:
Hello,This is a test. Please confirm receipt!
met Behulp van de cat
commando, kunnen we de pijp van het bericht naar de mail
proces., Dit zal het bericht standaard als je Linux gebruiker sturen. U kunt het veld “From” aanpassen met de -r
vlag als u die waarde wilt wijzigen naar iets anders:
- cat ~/test_message | mail -s 'Test email subject line' -r from_field_account [email protected]
de bovenstaande opties zijn:
-
-s
: de onderwerpregel van de e-mail -
-r
: een optionele wijziging in het veld “van:” van de e-mail. Standaard zal de Linux gebruiker waarmee je ingelogd bent, gebruikt worden om dit veld in te vullen. Met de optie-r
kunt u dit overschrijven., -
: het account waarnaar de e-mail moet worden verzonden. Wijzig dit om een geldig account te zijn waartoe u toegang hebt.
u kunt uw Verzonden berichten bekijken binnen uwmail
client. Start de interactieve client opnieuw door te typen:
- mail
na afloop kunt u uw Verzonden berichten bekijken door te typen:
- file +sent
u kunt verzonden e-mail beheren met dezelfde commando ‘ s die u gebruikt voor inkomende e-mail.
conclusie
u zou Postfix nu moeten hebben geconfigureerd op uw Ubuntu 16.04-server., Het beheren van e-mailservers kan een moeilijke taak voor beginnende beheerders zijn, maar met deze configuratie, moet u basis MTA e-mail functionaliteit om u te beginnen.
Geef een reactie