Introduction
Postfix is een mail transfer agent (MTA), een toepassing die wordt gebruikt om e-mail te verzenden en te ontvangen. In deze tutorial zullen we Postfix installeren en configureren, zodat het kan worden gebruikt om e — mails te verzenden door alleen lokale toepassingen-dat wil zeggen, die zijn geïnstalleerd op dezelfde server waarop Postfix is geïnstalleerd.
waarom zou u dat willen doen?
als u al een externe e-mailprovider gebruikt voor het verzenden en ontvangen van e-mails, hoeft u niet uw eigen e-mailserver te draaien., Als u echter een cloudserver beheert waarop u applicaties hebt geïnstalleerd die e-mailmeldingen moeten verzenden, is het uitvoeren van een lokale SMTP-server met alleen verzenden een goed alternatief voor het gebruik van een e-mailprovider van derden of het uitvoeren van een volledige SMTP-server.
in deze tutorial leert u hoe u Postfix installeert en configureert als een send-only SMTP-server.
Prerequisites
om deze tutorial te volgen, hebt u het volgende nodig:
-
Eén Ubuntu 16.04-Droplet ingesteld met Ubuntu 16.,04 initial setup guide, inclusief het aanmaken van een sudo non-root gebruiker
-
een geldige domeinnaam, zoals
example.com
, die naar uw server wijst. U kunt dit instellen door deze hostnaam tutorial
te volgen merk op dat de hostnaam van uw server moet overeenkomen met dit domein of subdomein. U kunt de hostnaam van de server verifiëren door hostname
achter de opdrachtprompt te typen. De uitvoer moet overeenkomen met de naam die u de druppel gaf toen het werd gemaakt.
Stap 1-Postfix installeren
In deze stap leert u hoe u Postfix installeert., De meest efficiënte manier om Postfix en andere programma ‘ s te installeren die nodig zijn voor het testen van e-mail is het installeren van het mailutils
pakket.
eerst de pakketdatabase bijwerken:
- sudo apt-get update
tot slot installeer Postfix. Het installeren van mailtuils
zal Postfix installeren evenals een paar andere programma ‘ s die nodig zijn om Postfix te laten functioneren.
- sudo apt install mailutils
aan het einde van het installatieproces wordt u een venster getoond dat precies lijkt op het venster in de afbeelding hieronder. De standaard optie is Internet Site., Dat is de aanbevolen optie voor deze tutorial, dus druk op TAB
, dan ENTER
.
daarna krijgt u een ander venster, net als in de volgende afbeelding. De systeemmailnaam moet dezelfde zijn als de naam die u aan de server hebt toegewezen toen u deze aan het maken was. Als het een subdomein toont zoals subdomain.example.com
, verander het dan in gewoon example.com
. Als u klaar bent, drukt u op TAB
, dan ENTER
.,
nadat de installatie succesvol is voltooid, gaat u verder met stap twee.
Stap 2-Postfix configureren
In deze stap leest u hoe u Postfix configureert om verzoeken te verwerken om e-mails te verzenden alleen vanaf de server waarop het draait, dat wil zeggen vanaf localhost.
om dat te laten gebeuren, moet Postfix geconfigureerd worden om alleen te luisteren op de loopback interface, de virtuele netwerk interface die de server gebruikt om intern te communiceren., Om de wijziging aan te brengen, open je het hoofd postfix configuratiebestand met nano
of je favoriete teksteditor.
- sudo nano /etc/postfix/main.cf
met het bestand open scroll naar beneden totdat u de volgende sectie ziet.
. . .mailbox_size_limit = 0recipient_delimiter = +inet_interfaces = all. . .
Wijzig de regel met inet_interfaces = all
naar inet_interfaces = loopback-only
.
. . .mailbox_size_limit = 0recipient_delimiter = +inet_interfaces = loopback-only. . .
een andere richtlijn die u moet wijzigen is mydestination
, die wordt gebruikt om de lijst van domeinen op te geven die worden geleverd via local_transport
postbezorgingstransport. Standaard zijn de waarden vergelijkbaar met deze:
/etc/postfix/main.cf. . .mydestination = $myhostname, example.com, localhost.com, , localhost. . .
De aanbevolen standaardwaarden voor dat scenario worden gegeven in het codeblok hieronder, dus wijzig de jouwe om overeen te komen:
/etc/postfix/main.cf. . .mydestination = $myhostname, localhost.$mydomain, $mydomain. . .
opslaan en sluiten van het bestand.,
Als u meerdere domeinen host op een enkele server, kunnen de andere domeinen ook worden doorgegeven aan Postfix met behulp van de mydestination
richtlijn. Echter, om Postfix te configureren op een manier die schalen en die geen problemen voor een dergelijke setup impliceert extra configuraties die buiten het bereik van dit artikel.
ten slotte herstart Postfix.,
- sudo systemctl restart postfix
Stap 3 — testen van de SMTP-Server
in deze stap test U of Postfix e-mails naar een extern e-mailaccount kan verzenden met behulp van het mail
commando, dat deel uitmaakt van het mailutils
pakket dat is geïnstalleerd in Stap 1.
om een test-e-mail te verzenden, typt u:
- echo "This is the body of the email" | mail -s "This is the subject line" your_email_address
bij het uitvoeren van uw eigen test(s) kunt u de tekst van de hoofdtekst en de onderwerpregel gebruiken zoals deze is, of deze naar wens wijzigen. Gebruik echter in plaats van your_email_address
Een geldig e-mailadres., Het domeindeel kan zijn gmail.com
, fastmail.com
, yahoo.com
, of een andere e-mailprovider die u gebruikt.
Controleer nu het e-mailadres waar u het testbericht hebt verzonden. U zou het bericht in uw postvak IN moeten zien. Zo niet, controleer dan uw spam folder.
merk op dat met deze configuratie, het adres in het From veld voor de test e-mails die u verzendt zal zijn, waarbij sammy uw Linux gebruikersnaam is en het domeingedeelte de hostnaam van de server is. Als u uw gebruikersnaam wijzigt, verandert ook Het From-adres.,
Stap 4 – Forwarding System Mail
Het Laatste wat we willen instellen is forwarding, dus je krijgt e-mails verzonden naar root op het systeem op je persoonlijke, externe e-mailadres.
om Postfix zo in te stellen dat door het systeem gegenereerde e-mails naar uw e-mailadres worden verzonden, moet u het /etc/aliases
bestand bewerken.
- sudo nano /etc/aliases
de volledige inhoud van het bestand op een standaardinstallatie van Ubuntu 16.04 is als volgt:
# See man 5 aliases for formatpostmaster: root
met die instelling worden systeemgegenereerde e-mails naar de root-gebruiker verzonden., Wat u wilt doen is bewerken, zodat die e-mails worden omgeleid naar uw e-mailadres. Om dat te bereiken, bewerk je het bestand zo dat het luidt:
/etc/aliases# See man 5 aliases for formatpostmaster: rootroot: your_email_address
vervang your_email_address
met je persoonlijke e-mailadres. Als u klaar bent, slaat u het bestand op en sluit u het. Om de wijziging door te voeren, voer je het volgende commando uit:
- sudo newaliases
je kunt nu testen of het werkt door een e-mail te sturen naar het root account met behulp van:
- echo "This is the body of the email" | mail -s "This is the subject line" root
je moet de e-mail op je e-mailadres ontvangen. Zo niet, controleer dan uw spam folder.,
conclusie
dat is alles wat nodig is om een send-only e-mailserver op te zetten met Postfix. U kunt een aantal extra stappen te nemen om uw domein te beschermen tegen spammers.
als uw use case is om meldingen van uw server te ontvangen op een enkel adres, e-mails worden gemarkeerd als spam is een groot probleem, omdat u ze kunt whitelist. Echter, als uw use case is om e-mails te sturen naar potentiële gebruikers van de site (zoals bevestiging e-mails voor een message board sign-up), moet u zeker het opzetten van SPF records en DKIM, zodat e-mails van uw server zijn meer kans om te worden gezien als legitiem.,
-
hoe gebruik je een SPF-Record om Spoofing te voorkomen & Verbeter de e-Mailbetrouwbaarheid
-
Hoe installeer en configureer je DKIM met Postfix op Debian Wheezy hoewel dat artikel geschreven is voor Debian Wheezy, gelden dezelfde stappen voor Ubuntu 16.04.
indien correct geconfigureerd, maakt dit het moeilijk om spam te verzenden met een adres dat afkomstig lijkt te zijn van uw domein. Het doen van deze extra configuratie stappen zal ook maken het meer kans voor gemeenschappelijke e-mailproviders om e-mails van uw server als legitiem te zien.