Einrichtung, Verwendung und Best Practices des SMTP-Servers
Veröffentlicht: 2022-04-08Haben Sie sich jemals gefragt, wie E-Mails tatsächlich funktionieren? Wenn Sie eine E-Mail senden und sie sich innerhalb weniger Sekunden im Posteingang Ihres Empfängers befinden, ist die Technologie dahinter das Simple Mail Transfer Protocol (SMTP). Wie E-Mails auf dem Server gespeichert werden, sobald sie mit IMAP/POP3-Server empfangen wurden, ist eine andere Geschichte, denn jetzt werden wir SMTP behandeln und am Ende des Artikels hoffen wir, dass Sie das SMTP-Protokoll, SMTP-Server, vollständig verstehen , Allgemeine Optionen und wie Sie sicherstellen, dass Ihre E-Mails im SPAM landen.
Was ist SMTP?
Simple Mail Transfer Protocol ( SMTP ) ist das Protokoll, das zum Senden von E-Mails verwendet wird. Es definiert einen gemeinsamen Standard, sodass jeder SMTP-Server mit jedem anderen SMTP-Server oder POP3/IMAP-Server im Internet kommunizieren kann und sich gegenseitig versteht. Man kann sagen, es stellt sicher, dass verschiedene an der Übertragung von E-Mails beteiligte Stellen eine gemeinsame Sprache sprechen.
Was ist ein SMTP-Server?
Das SMTP-Protokoll muss von einer Anwendung verfügbar gemacht werden. Diese Anwendung, die auf die SMTP-Anforderungen für diejenigen antwortet, die E-Mails senden oder E-Mails weiterleiten möchten, wird als SMTP-Server/SMTP-Relay bezeichnet. Sie können es wie unten angegeben in zwei Typen unterteilen, beide sind bis auf einen kleinen Unterschied größtenteils gleich –
- SMTP-Server: Dies ist dasselbe wie ein SMTP-Relay, wird jedoch hauptsächlich verwendet, wenn die Empfängerdomäne mit der Serverdomäne identisch ist. Diese werden normalerweise mit kostenlosen E-Mail-Diensten wie gmail.com, yahoo.com verwendet.
- SMTP-Relay-Server: Dies ist auch ein Server, aber dieser Begriff wird verwendet, wenn die Quell-E-Mail- und Ziel-E-Mail-Domänen sich von den Domänen des SMTP-Servers unterscheiden. Ein Beispiel kann SendGrid oder SendInBlue sein, die diese anbieten. Diese Server sind hauptsächlich Router für die Mail.
Gefälschte SMTP-Server: – Diese Server werden hauptsächlich von Entwicklern zum Testen verwendet. Sie sind im Grunde Catch-All-Server, mit denen Benutzer sehen können, wie die E-Mail auf der Empfängerseite aussieht, ohne tatsächlich eine E-Mail zu senden. Sie können entweder eine lokale Anwendung wie MailHog oder MailCatcher installieren oder eine bereitgestellte Cloud wie Mailtrap oder unser lokales Tool verwenden.
Wie funktioniert SMTP?
Nachfolgend finden Sie eine allgemeine Anleitung, wie der Prozess des E-Mail-Versands mit SMTP funktioniert.
- Ein Benutzer, der eine E-Mail von beispielsweise [E-Mail-geschützt] an [E-Mail-geschützt] senden möchte, verwendet seinen E-Mail-Client, um eine E-Mail mit Betreff und Text zu erstellen, und drückt auf „Senden“.
- Sobald der Benutzer auf „Senden“ klickt, verbindet sich der E-Mail-Client mit dem konfigurierten SMTP-Server. Nehmen wir an, es sei smtp.source.com . Der Client und der SMTP-Server führen einen Handshake durch, und wenn eine Autorisierung erforderlich ist, stellt der Client Anmeldeinformationen dafür bereit.
- Nach dem Handshake sendet der E-Mail-Client die Adresse des Empfängers, die in unserem Fall [email protected] ist, den Betreff und den Text.
- Wenn unser Benutzer an jemanden in derselben Domäne gesendet hat, leitet unser Server sie einfach intern an den lokalen Empfängerserver weiter.
- Als nächstes findet der SMTP-Server, der eine DNS-Anfrage für MX-Einträge verwendet, die IP- oder Domänenadresse des Empfängers heraus, wo sein SMTP-Server läuft.
- Als nächstes verbindet es sich mit der SMTP-Adresse des Empfängers und versucht, die E-Mail zuzustellen.
- Der E-Mail-Server des Empfängers überprüft, ob er die an ihn weitergeleitete E-Mail verarbeiten kann. Und wenn alles in Ordnung ist, leitet es diese an den eingehenden IMAP- oder POP3-Server weiter.
Gemeinsamer SMTP-Port und -Adresse
In den meisten Fällen ist die SMTP-Adresse ein Präfix von mail oder smtp vor der Domäne, mit der Sie sich verbinden möchten. Auch diese werden durch die Mail Exchange (MX)-Einträge im DNS angegeben, die einen Client an den Mailserver weiterleiten, der die Weiterleitung von E-Mail-Nachrichten übernehmen soll.
Um die Adresse des SMTP-Servers zu finden, können Sie den Befehl dig verwenden
1 2 3 |
root @ mailtest : ~ # dig +short freesmtpservers.com MX 20 smtp . freesmtpservers . com . 10 smtp . freesmtpservers . com . |
Dann können Sie den Befehl dig verwenden, um die IP-Adresse bei Bedarf zu finden
1 2 |
root @ mailtest : ~ # dig +short smtp.freesmtpservers.com 104.237.130.88 |
Mit dem Port, zu dem eine Verbindung hergestellt werden soll, ist die Sache nicht so einfach. Server und Relays haben normalerweise eine Reihe verschiedener Ports, mit denen Sie sich verbinden können. Jeder ist im Laufe der Zeit entstanden, um bestimmte Anforderungen zu erfüllen.
SMTP-Port
Port-Nummer | Beschreibung | Information |
---|---|---|
25 | Standard-SMTP-Port | Es sollte hauptsächlich für Email Relay verwendet werden |
465 | Veralteter SMTP-Port | War für sicheres SMTP, verwendete SSL für die Verschlüsselung. Nutzung vermeiden. |
587 | Moderner sicherer SMTP-Port | Die meisten modernen E-Mail-Clients verwenden dies, es verwendet TLS-Verschlüsselung. |
2525 | Alternativer Nicht-Standard-SMTP-Port | Dies wird als Alternative zu 587 verwendet, falls es blockiert ist. |
In den meisten Fällen werden Sie den Port 587 für Ihre Zwecke verwenden.
Allgemeine SMTP-Servernamen
Gängige Adressen für SMTP-Server beginnen mit smtp. oder mailen. mit dem Domänennamen, einige haben möglicherweise auch eine IP-Adresse. Wir haben einige gängige mit ihren Details unten aufgelistet –
Dienstname | SMTP-Server | Hafen |
---|---|---|
Google Mail | smtp.googlemail.com | 587 |
Outlook.com | smtp.live.com | 587 |
Office365.com | smtp.office365.com | 587 |
Yahoo Mail | smtp.mail.yahoo.com | 465 |
Yahoo Mail Plus | plus.smtp.mail.yahoo.com | 465 |
Yahoo UK | smtp.mail.yahoo.co.uk | 465 |
Yahoo Deutschland | smtp.mail.yahoo.com | 465 |
Yahoo AU/NZ | smtp.mail.yahoo.com.au | 465 |
O2 | smtp.o2.ie | 25 |
O2.uk | smtp.o2.co.uk | 25 |
AOL.com | smtp.aol.com | 587 |
AT&T | smtp.att.yahoo.com | 465 |
NTL @ntlworld.com | smtp.ntlworld.com | 465 |
BT-Verbindung | pop3.btconnect.com | 25 |
BT-Openworld | mail.btopenworld.com | 25 |
BT-Internet | mail.btinternet.com | 25 |
Orange | smtp.orange.net | 25 |
Orange.uk | smtp.orange.co.uk | 25 |
Wanadoo Großbritannien | smtp.wanadoo.co.uk | 25 |
heisse Mail | smtp.live.com | 465 |
O2 Online Deutschland | mail.o2online.de | 25 |
T Online Deutschland | securesmtp.t-online.de | 587 |
1&1 (1und1) | smtp.1and1.com | 587 |
1&1 Deutschland | smtp.1und1.de | 587 |
Komcast | smtp.comcast.net | 587 |
Verizon | ausgehend.verizon.net | 465 |
Verizon (von Yahoo gehostet) | ausgehend.yahoo.verizon.net | 587 |
ZohoMail | smtp.zoho.com | 465 |
Mail.com | smtp.mail.com | 587 |
gmx.com | smtp.gmx.com | 465 |
[E-Mail geschützt] von USA.NET | smtp.postoffice.net | 465 |
Massen-SMTP-Serveranbietereinstellungen
Was passiert, wenn Sie mehr als ein paar E-Mails senden möchten, sagen wir 10000.000 E-Mails, dann benötigen Sie so etwas wie ein Massen-SMTP-Relay, sie bieten Ihnen auch API und andere Funktionen wie Sendungsverfolgung, Öffnungsraten usw. Helfen Sie auch beim Senden E-Mails ziemlich schnell, da SMTP als Protokoll etwas langsam ist.
Wenn die Anzahl nicht sehr groß ist, können Sie unsere Liste für kostenlose SMTP-Server-Anbieter verwenden, um eine Auswahl zu treffen.
Wenn Sie eine E-Mail an Ihre große Benutzerbasis senden möchten oder vielleicht für E-Mail-Marketing, haben wir unten die Preise mit verschiedenen aufgelisteten Anbietern angegeben.
Verkäufer | Freier Monat | Tägliches Limit | Bezahlte Pläne | Bemerkungen |
---|---|---|---|---|
SendInBlue | 9000 | 300 | 25 $ für 10.000 bis 499 $ für 1 Million | Am besten kostenlos |
TurboSMTP | 6000 | 200 | 14,95 für 50.000 bis 979,95 für 2 Millionen. | 6000 / Monat für 12 Monate |
Alibaba Direct Mail | 6000 | 200 | 0,00029 pro 1000 E-Mails | |
PepiPost | 3000 | 100 | $25 für 150.000 bis 445 für 2 Millionen | |
SendGrid | 3000 | 100 | 14,95 $ für 50.000 E-Mails bis 749 $ für 150.000 E-Mails | |
SparPost | 3000 | 100 | 20 $ für 50.000 bis 525 $ für 1 Million | |
Elastische E-Mail | 3000 | 100 | Kosten wie Amazon SES | Kostengünstige kostenpflichtige Option |
Amazon-SES | 62000 | .0001 für 1000 E-Mails | Einer der billigsten, kostenlos, wenn er vom AWS EC2-Server gesendet wird | |
Google Mail | 15000 | 500 | Gsuite ist die Premium-Option | Die Domäne wird gmail.com sein. Kann zur Sperrung des Kontos führen. |
Verwendung eines SMTP-Servers mit WordPress
WordPress betreibt fast 40 % der Websites im Internet, standardmäßig verwendet es PHP Mail, um Transaktions-E-Mails zu senden, die wiederum sendmail verwenden, wenn sie nicht konfiguriert sind WordPress-Plugin, das SMTP-Einstellungen verwenden oder die SMTP-API dafür verwenden kann.
Standardmäßig verwendet WordPress PHP-Mail, um eine E-Mail zu senden, wenn es richtig konfiguriert ist, ist es ausreichend, aber in den meisten Fällen ist es einfacher, den Dienst eines Drittanbieters zu verwenden, da die meisten gemeinsam genutzten Hosts keinen direkten Konsolenzugriff erlauben, um zu überprüfen, was vor sich geht und Ihre Die Host-IP wurde möglicherweise aufgrund von SPAM auf die schwarze Liste gesetzt, da es möglicherweise auch andere Benutzer auf dem Server gibt (im Fall von Common Shared Hosting), die sich möglicherweise nicht verhalten und dazu führen, dass Ihre IP auf die schwarze Liste gesetzt wird. Mit Blacklisting meinen wir, dass die IP Ihres Servers in eine globale Liste bekannter Spammer aufgenommen wird, was es für Ihre E-Mails noch schwieriger macht, durchzukommen. Sie können Ihren Status hier überprüfen.
Für WordPress empfehlen wir das Wp Mail SMTP Plugin, es ist einfach zu konfigurieren, einzurichten und unterstützt viele verschiedene Anbieter, einschließlich Gmail, es gibt auch eine Option zum Protokollieren aller gesendeten E-Mails. Der kostenlose Plan sollte für die meisten Benutzer ausreichen.
Sie können es einfach aus WordPress heraus installieren oder sogar von der WordPress-Website herunterladen. Es hat einen Premium-Plan, aber kostenlos sollte für die meisten Benutzer gut genug sein.
Richten Sie einen selbst gehosteten SMTP-Server unter Linux ein
Schneller MTA-Vergleich, wir wählen Postfix, da wir mit Linux arbeiten werden –
wenn du bist... | qmail | Exim | E-Mail senden | Postfix | Anmerkungen |
---|---|---|---|---|---|
Unerfahren | 0 | 3 | 1 | 3 | Exim und Postfix haben gute Dokumentationen und klare Beispiele |
Besorgt um die Sicherheit | 3 | 2 | 0 | 3 | Postfix ist sicher und modern; qmail ist sicher, aber sehr alt und verschroben; Exim ist nach verschiedenen Kriterien sicher (siehe oben). |
Verlassen Sie sich auf Sendmail-Milter | 0 | 1 | 3 | 2 | Postfix kann Milter ausführen; kann gleichwertige Exim-Router/Filterskripte verwenden |
Minimalen Aufwand wollen | 0 | 3 | 0 | 3 | Sendmail hat einige einfache Frontends, aber je tiefer Sie gehen, desto schlimmer wird es. Postfix und Exim sind vorhersehbarer. |
Ressourcenbeschränkt | 3 | 2 | 1 | 2 | Siehe Eingebettete Anwendung unten für weitere Kommentare |
Unter Windows | 0 | 2 | 3 | 0 | Sendmail hat einen nativen Windows-Port; Exim ist in der Cygwin-Distribution |
Benötigen Sie kommerzielle Unterstützung | 1 | 3 | 3 | 3 | Für alle MTAs gibt es kompetente Firmen; qmail ist von Natur aus weniger unterstützbar, da es so alt ist |
Postfix ist ein Mail Transfer Agent (MTA), der als SMTP-Server oder -Client zum Senden oder Empfangen von E-Mails fungieren kann. Es ist einfach einzurichten und zu konfigurieren und wir selbst verwenden es für die meisten unserer Anforderungen. Es kann auch so eingerichtet werden, dass es als Vermittler für die Weiterleitung von E-Mails über E-Mail-Dienste von Drittanbietern fungiert. Wir behandeln nur die grundlegende Einrichtung und senden Ihre erste E-Mail.
Das einfachste Setup besteht aus der Installation von Postfix und Sie sollten bereit sein.
Ein solches Barebone-Setup funktioniert technisch, aber Ihre E-Mails landen möglicherweise in SPAM. Um dies zu berücksichtigen und eine bessere E-Mail-Zustellbarkeit zu gewährleisten, haben wir einen weiteren Leitfaden, in dem wir die anderen Anforderungen wie DKIM oder SPF hinzufügen, die erforderlich sind, um sicherzustellen, dass Ihre E-Mails gesendet werden durch. Aber trotzdem, es sei denn, es gibt einen sehr guten Grund, empfehlen wir nicht, einen eigenen E-Mail-Server zu betreiben.
Dieser Prozess setzt voraus, dass Sie ein neu installiertes Ubuntu 20.04 haben und mit der Befehlszeile von Linux arbeiten können. Andernfalls empfehlen wir die Verwendung eines der vorhandenen SMTP-Anbieter. Wir werden Postfix auf dem Ubuntu 20.04-Server einrichten und eine E-Mail damit an unseren eigenen Dummy-Dienst senden, um zu testen, ob es funktioniert.

Zu Beginn geben wir den Update-Cache-Befehl für den apt-Paketmanager aus
sudo apt update
Als nächstes installieren wir Postfix mit dem folgenden Befehl –
sudo apt install postfix
Die Installation öffnet eine Reihe von Eingabeaufforderungen, bitte treffen Sie die folgende Auswahl –
- Allgemeine Art der Mailkonfiguration? : Hierfür wählen wir eine Internet-Site aus, da diese unseren Infrastrukturanforderungen entspricht.
- System-E-Mail-Name: Dies ist die Basisdomäne, die zum Senden einer E-Mail verwendet wird, wenn vom Benutzer keine Absenderdomäne angegeben wird. Wenn Sie also eine E-Mail von beispielsweise Benutzer1 senden und keine Domäne angegeben ist, wird dies an die E-Mail angehängt. Wenn also example.com angegeben wird, wird eine E-Mail von [email protected] gesendet.
Das sollte sich um die Grundkonfiguration kümmern. Für eine vollständige Einrichtung folgen Sie bitte unserer Mailserver-Einrichtungsanleitung. Jetzt sollte Port 25 verfügbar sein, Sie können überprüfen, ob er geöffnet ist, indem Sie einen der Befehle verwenden –
1 2 3 4 5 |
sudo lsof - i - P - n | grep LISTEN sudo netstat - tulpn | grep LISTEN sudo ss - tulpn | grep LISTEN sudo lsof - i : 22 ## see a specific port such as 22 ## sudo nmap - sTU - O IP - address - Here |
Was suchen wir so etwas
master 2575 root 13u IPv4 30244 0t0 TCP *:25 (LISTEN)
master 2575 root 14u IPv6 30245 0t0 TCP *:25 (LISTEN)
Wenn Sie das Setup sogar neu konfigurieren müssen, führen Sie einfach den Befehl aus –
1 |
sudo dpkg - reconfigure postfix |
Wir sind alle eingestellt, unser SMTP-Server sollte betriebsbereit sein. Als nächstes können wir eine E-Mail an einige Benutzer im Internet senden oder vielleicht alle E-Mails abfangen, um Dinge zu testen.
Verwenden eines SMTP-Servers
Normalerweise ist ein E-Mail-Client die häufigste Art und Weise, wie die meisten von uns mit einem SMTP-Server kommunizieren, aber Sie können auch direkt mit ihm über Telnet interagieren. Wir werden mit dieser Methode beginnen, da sie einfach cool ist.
Senden Sie E-Mails mit Telnet unter Linux
Verbinden Sie sich mit Ihrem lokalen SMTP-Server, indem Sie den folgenden Befehl eingeben –
1 |
telnet localhost 25 |
Sie werden so etwas sehen –
1 2 3 4 |
root @ mailtest : ~ # telnet localhost 25 Trying : : 1... Connected to localhost . Escape character is '^]' . |
Wenn Sie keine Verbindung herstellen können, vergewissern Sie sich, dass Postfix ausgeführt wird und prüfen Sie, ob Port 25 geöffnet ist.
Lassen Sie uns jetzt eine E-Mail an [email protected] senden ( alle E-Mails abfangen ).
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
root @ mailtest : ~ # telnet localhost 25 Trying : : 1... Connected to localhost . Escape character is '^]' . 220 mailtest ESMTP Postfix ( Ubuntu ) ehlo localhost 250 - li292 - 146.members.linode.com 250 - PIPELINING 250 - SIZE 10240000 250 - VRFY 250 - ETRN 250 - STARTTLS 250 - ENHANCEDSTATUSCODES 250 - 8BITMIME 250 - DSN 250 - SMTPUTF8 250 CHUNKING mail from : bob @ example . com 250 2.1.0 Ok rcpt to : smtptest @ freesmtpservers . com 250 2.1.5 Ok data 354 End data with . Subject : Testing Email service This is a test email . . 250 2.0.0 Ok : queued as A6ADC402D4 quit 221 2.0.0 Bye Connection closed by foreign host . |
Überprüfen Sie, ob die E-Mail im Posteingang für [email protected] eingegangen ist, oder wenn Sie einen anderen Empfänger verwendet haben, können Sie sie in seinem Posteingang überprüfen.
E-Mail von der Linux-Befehlszeile senden
Unter Linux können wir den Befehl sendmail verwenden, um E-Mails schnell zu versenden.
1 |
echo "Subject: hello" | sendmail - v smtptest @ freesmtpservers . com |
Ich hoffe, Ihnen gefällt mein Artikel. Wenn Sie der Meinung sind, dass ich einige Punkte verpasst habe oder irgendwo falsch lag, lassen Sie es mich bitte wissen, und ich werde ihn hier aktualisieren.