Het eerste wat we moeten doen is installeren van postfix. Postfix wordt in deze installatie gebruikt voor het verzenden van de mails, maar alle ontvangen mails worden afgehandeld door Dovecot.
Goed om te weten:
- Postfix houdt een log bij van alle acties in /var/log/mail.log. Hierin staat nuttige informatie bij problemen.
- Het ‘postconf’- commando wordt gebruikt om de configuratie van postfix rechtstreeks te bekijken of aan te passen.
- Alle postfix configuratiegegevens staan in de file /etc/postfix/mail.cf
Voordat je postfix installeert:
In versie 16.04.03 van Ubuntu is er een wijziging gemaakt in de rechten van de log-directory waardoor postfix daar geen log aanmaakt. Ik adviseer je om dat eerst te herstellen.
Controleer eerst de rechten van de /var/log directory:[codebox]sudo stat /var/log[/codebox]
Als daar dan staat:[entrybox]…
Access: (0755/drwxr-xr-x)
…[/entrybox] Dan gaat het mis. Zijn de rechten ingesteld op 0775, dan is er niets aan de hand.
Om het te repareren zet je de rechten op 0775 d.m.v.[codebox]sudo chmod -R 0775 /var/log[/codebox]
DNS instellingen.
Bij je hostingprovider moet je bij het DNS beheer een paar instellingen goed zetten.
- Je moet een MX-record hebben met de naam mail.voorbeeld.nl die verwijst naar mail.voorbeeld.nl, met prio 10. (waarbij voorbeeld.nl natuurlijk jouw domeinnaam is)
- Je moet een A-record hebben met de naam mail.voorbeeld.nl die verwijst naar het IP adres van jouw VPS
- Je moet een A-record hebben met de naam voorbeeld.nl die ook verwijst naar het IP adres van jouw VPS, maar die heb je al, anders kon je voorgaande tutorials al niet maken.
[entrybox]
Naam type waarde prio mail.voorbeeld.nl MX mail.voorbeeld.nl 10 mail.voorbeeld.nl A 123.123.123.123 voorbeeld.nl A 123.123.123.123
[/entrybox]
Daarnaast doe je er goed aan om de reverse-DNS in te stellen op jouw domeinnaam. Controleer hoe deze ingesteld staat dmv [codebox]dig -x <jouw IP adres> +short[/codebox]Als daar niet jouw domeinnaam uit komt, kun je je hostingprovider vragen om de reverse-DNS, ofwel PTR-Record aan te passen. Bij sommige providers kunje dat zelf doen. Bij Vultr ook. kun je dat zelf:
- Log in bij bij Vultr.com
- kies aan de linkerkant voor ‘servers’. Je krijgt dan al jouw servers op een rijtje. Klik op de naam van de server.
- Je krijgt nu een pagina ‘Server Information’ met daaronder een menu. Kies uit dat menu ‘Settings’.
- Je krijgt nu als het goed is de pagina met de instelling voor IPv4. In dat overzicht staat rechts de kolom ‘reverse DNS’
- Klik op het potloodje dat in die kolom staat en vul jouw domeinnaam daar in.
Het kan wel tot 12 uur duren voordat de informatie in de DNS servers verwerkt is, maar dat hoeft jou niet te weerhouden om nu verder te gaan met de installatie.
Installeer Postfix
Installeer nu Postfix.
[codebox]sudo apt-get install postfix postfix-mysql postfix-policyd-spf-python[/codebox]
Daarna wordt er gevraagd naar de ‘system mail name’. Als jouw emailadres straks ‘Jan@voorbeeld.nl’ wordt, vul hier dan ‘voorbeeld.nl’ in.
Na het installeren van Postfix kun je voor de zekerheid de versie controleren. Dat doe je met het volgende commando:
[codebox]sudo postconf mail_version[/codebox]
In mijn systeem gebruik ik versie 3.1.0
Postfix toevoegen aan de firewall
Als je de firewall ingeschakeld hebt, moet je Postfix natuurlijk wel toegang geven. Dat doe je met:
[codebox]
sudo ufw allow "Postfix" sudo ufw allow "Postfix submission"
[/codebox]
Een mail versturen.
Om mails te kunnen versturen is het belangrijk dat poort 25 open staat. Je kunt dat vanaf een andere computer doen met nmap of, redelijk eenvoudig, met het gratis programma Advanced Port Scanner. Als je die geinstalleerd hebt, vul je bovenin het IP adres van je VPS in en laat je scannen. Dat duurt een minuutje op 2. Aan de rechterkant van je scherm staan vervolgens alle poorten die open staan. Kijk of daar poort 25 ook bij staat. Zoniet, dan kunnen er 2 problemen zijn:
- Jouw eigen provider blokkeert poort 25, dat komt best vaak voor om te voorkomen dat mensen mails kunnen sturen uit naam van een ander.
of - Jouw hostingprovider, van de VPS, blokkeert poort 25.
In beide gevallen (of als beide het geval is), zie je poort 25 niet in jouw lijstje staan. Je kunt dan in elk geval contact opnemen met je hostingprovider en vraag of ze poort 25 open willen zetten voor je. De kans dat jouw internetprovider dat doet is redelijk klein, maar je kunt het vragen.
Als poort 25 aan de kant van je hostingprovider niet open staat is er nog niet veel aan de hand, we gaan dat op een andere manier oplossen, maar dat betekent voor nu wel dat je geen mails kunt versturen. Ik zou het in elk geval wel proberen.
Je kunt eenvoudig een mail versturen met[codebox]echo “test mailtje” | sendmail <jouw-eigen-mail@gmail.com>[/codebox]Let op! deze mail beland waarschijnlijk in jouw spambox.
Je kunt nu ook vanaf je computer een mail sturen naar jouw nieuwe mailadres. De inbox voor elke gebruiker vind je in de /var/spool/mail/<gebruikersnaam> en /var/mail/<gebruikersnaam> file. Als die mapjes niet bestaan dan kun je met dit commando opvragen waar de mails opgeslagen worden:
[codebox]sudo postconf mail_spool_directory[/codebox][entrybox]mail_spool_directory = /var/mail[/entrybox]Als je ze dan nog niet vind, kijk dan in de logfile. Die zou je moeten vinden in /var/log/mail.log.