Hoe je e-mails verstuurt in Linux via de opdrachtregel met Sendmail en Mailx
Voor iedereen die servers beheert of met automatisering werkt, is het essentieel om te weten hoe je e-mails vanuit de Linux-terminal verstuurt. Het geeft volledige controle over e-mailfunctionaliteit en maakt zware mailprogramma’s overbodig. Dit is vooral handig in situaties waarin snelheid en eenvoud belangrijk zijn.
Veelgebruikte tools zoals sendmail en mailx zijn ideaal voor het verzenden van berichten, controleren van SMTP-instellingen, automatiseren van meldingen en integratie met scripts. Ze zijn eenvoudig maar krachtig en perfect voor taken zoals het informeren van teams over serverupdates, het genereren van automatische rapporten of het testen van e-mailconfiguraties.
Deze handleiding is bedoeld voor gebruikers die hun e-mail direct via de terminal willen beheren. Het behandelt de installatie van essentiële tools en gaat verder met geavanceerde taken zoals het verzenden van bijlagen en het configureren van e-mailtools.
Waarom e-mailtools via de command line gebruiken? Link kopiëren
De twee meest gebruikte tools — sendmail en mailx — zijn betrouwbare opties voor e-mailverzending op Linux en bieden diverse voordelen:
Efficiëntie Link kopiëren
Traditionele e-mailsoftware kan traag en zwaar zijn. Deze tools zijn lichtgewicht en versturen e-mails razendsnel vanuit de terminal.
Automatisering Link kopiëren
Ze integreren naadloos met shellscripts, cronjobs en monitoringtools. Hierdoor kunnen terugkerende acties automatisch meldingen versturen.
SMTP-problemen oplossen Link kopiëren
SMTP-configuraties worden eenvoudiger te debuggen. Deze tools geven inzicht in bezorgstatussen, logs en fouten.
Flexibiliteit Link kopiëren
Of het nu gaat om waarschuwingen, interne meldingen of geautomatiseerde rapporten: sendmail en mailx zijn veelzijdig inzetbaar.
Vereisten Link kopiëren
Zorg dat je het volgende hebt voordat je deze Linux e-mailcommando’s gebruikt:
-
Terminaltoegang: In sommige gevallen zijn rootrechten vereist.
-
SMTP-server: Een uitgaande mailserver is nodig voor tests.
-
Geïnstalleerde tools: Controleer of sendmail en mailx correct zijn geïnstalleerd.
Een SMTP-server instellen Link kopiëren
SMTP-servers zijn essentieel voor het verzenden van e-mails. Ze zijn onderverdeeld in:
-
Externe SMTP-servers
-
Lokale SMTP-servers
Externe SMTP-servers Link kopiëren
Dit zijn mailservers van een externe provider. Ze versturen e-mails via het internet naar ontvangers buiten je netwerk en bieden:
-
Wereldwijde aflevering
-
Authenticatie
-
Versleuteling
-
Spampreventie
Voorbeelden Link kopiëren
Gmail
-
Adres: smtp.gmail.com
-
Poort: 587 (TLS) of 465 (SSL)
Outlook
-
Adres: smtp.office365.com
-
Poort: 587
Ze vereisen correcte authenticatie (gebruikersnaam, wachtwoord of app-wachtwoord) en encryptie (TLS/SSL).
Opmerking: we hebben al een handleiding voor externe SMTP-instellingen. De verzendopdrachten blijven hetzelfde. Configureer simpelweg de SMTP-instellingen en gebruik je Gmail- of andere provideraccounts.
Lokale SMTP-servers Link kopiëren
Deze servers functioneren binnen een intern netwerk. Ideaal voor:
-
Interne e-mails (bijv. tom@office.local → jerry@office.local)
-
Lokale tests en ontwikkeling
-
Interne communicatie
-
Geen internet nodig
Lokale SMTP-server instellen Link kopiëren
Stap 1 — Installeer Postfix Link kopiëren
sudo apt install postfix
Stap 2 — Configureer Postfix Link kopiëren
sudo nano /etc/postfix/main.cf
Belangrijke instellingen:
myhostname = mail.office.local
mydomain = office.local
myorigin = $mydomain
inet_interfaces = loopback-only
local_recipient_maps = proxy:unix:passwd.byname
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
Sla op en herstart Postfix:
sudo systemctl restart postfix
Stap 3 — Gebruikers aanmaken Link kopiëren
sudo adduser linux
sudo adduser hostman
Hiermee maak je adressen zoals linux@office.local aan.
Overzicht van sendmail Link kopiëren
sendmail is een bekende mail transfer agent (MTA) op Linux. Het werkt goed met SMTP-servers en kan e-mails verzenden vanaf lokale systemen of scripts.
sendmail installeren Link kopiëren
Debian/Ubuntu Link kopiëren
sudo apt install sendmail
CentOS/Red Hat Link kopiëren
sudo yum install sendmail
Dienst starten en inschakelen Link kopiëren
sudo systemctl start sendmail
sudo systemctl enable sendmail
Configuratie testen Link kopiëren
echo "Testing sendmail setup" | sendmail -v your-email@example.com
Inkomende e-mail controleren:
mail
Installeer mailutils als mail ontbreekt:
sudo apt install mailutils
Of bekijk lokale mailbox:
cat /var/mail/user
sendmail configureren Link kopiëren
sudo nano /etc/mail/sendmail.mc
Voorbeeld: domeinnaam instellen:
define(`confDOMAIN_NAME', `your_domain.com')dnl
Nieuwe configuratie genereren:
sudo m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
Bij permissiefouten:
sudo sh -c "m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf"
sendmail herstarten:
sudo systemctl restart sendmail
E-mail verzenden met sendmail Link kopiëren
1 — Maak een bestand aan Link kopiëren
nano email.txt
Inhoud:
Subject: Test Email from Hostman
This is a test email sent using sendmail on Linux.
2 — E-mail versturen Link kopiëren
sendmail recipient@example.com < email.txt
3 — Controleren Link kopiëren
mail
Bijlagen verzenden Link kopiëren
sendmail ondersteunt geen bijlagen standaard, maar met uuencode kan dit wel:
sudo apt install sharutils
Met een bijlage sturen:
( echo "Subject: Email with attachment"; uuencode file.txt file.txt ) | sendmail recipient@example.com
Controleren:
mail
Overzicht van mailx Link kopiëren
mailx is een eenvoudige maar efficiënte terminaltool voor e-mailbeheer. Het maakt deel uit van mailutils op de meeste distributies.
mailx installeren Link kopiëren
Debian/Ubuntu Link kopiëren
sudo apt install mailutils
Red Hat Link kopiëren
sudo yum install mail
E-mail verzenden met mailx Link kopiëren
echo "This is the body of the email" | mailx -s "Test Email from Mailx" recipient@example.com
E-mail met bijlage Link kopiëren
echo "Please find the attached document" | mailx -s "Email with Attachment" -A email.txt recipient@example.com
Conclusie Link kopiëren
E-mails verzenden via de Linux-opdrachtregel is een krachtige manier om communicatie te automatiseren, servers te debuggen of configuraties te testen. Met tools zoals sendmail en mailx kun je zowel eenvoudige berichten als complexere e-mails met bijlagen beheren. Deze gids biedt duidelijke stappen om meteen aan de slag te gaan en je workflow te verbeteren.