Dlaczego potrzebuję pośredniego serwera SMTP do wysyłania poczty? Dlaczego mój klient (Outlook, Thunderbird) nie może wysyłać wiadomości bezpośrednio do domeny SMTP odbiorcy?
Na przykład, jeśli muszę wysłać wiadomość e-mail na [email protected]
konto Gmail, wysyłam ją na smtp.gmail.com
serwer; a następnie ten serwer wyśle moją wiadomość do serwera MX example.com
.
Odpowiedzi:
Technicznie możliwe jest wysłanie wiadomości e-mail bezpośrednio na serwer SMTP odbiorcy z komputera.
Patrząc na to z historycznego punktu widzenia, jeśli zdalny serwer SMTP jest wyłączony, chcesz, aby system automatycznie go obsługiwał i kontynuował ponawianie próby - stąd masz serwer SMTP. Podobnie w dawnych czasach nie wszystkie serwery pocztowe były podłączone przez cały czas - łącza międzystrefowe były drogie, więc poczta była umieszczana w kolejce i wysyłana po ustanowieniu łącza.
Przechodząc do miejsca, w którym Internet jest tani, nadal przydatne są mechanizmy do ponownej próby wysłania wiadomości e-mail, jeśli serwer jest niedostępny, i nie jest idealne, aby ta funkcja została zapisana w MUA (agencie użytkownika poczty / programie pocztowym użytkownika końcowego). Te funkcje pasują do MTA (serwer poczty / serwer SMTP).
Ale robi się coraz gorzej - spamerzy . Większość wiadomości e-mail (ponad 80%) to spam. Dlatego dostawcy poczty dokładają wszelkich starań, aby zmniejszyć ten problem - a wiele technik przyjmuje założenia dotyczące sposobu dostarczania wiadomości e-mail - ważne są następujące kwestie:
Greylisting: Niektórzy dostawcy automatycznie przerywają połączenie pocztowe, jeśli nadawca i odbiorca nie komunikowali się wcześniej, i oczekują, że spróbują po raz drugi - ponieważ spamerzy często tego nie robią, podczas gdy serwer SMTP zawsze powinien. Zmniejsza to ilość spamu o około 80%. Ale to jest do kitu.
Reputacja: o wiele bardziej prawdopodobne jest, że ktoś wysyłający e-maile za pośrednictwem renomowanego, znanego serwera SMTP jest legalny niż serwer nocny. Aby zyskać reputację, dostawcy robią wiele rzeczy:
Blokuj adresy dynamiczne / klienckie (nie w 100%, ale zmapowano duże fragmenty Internetu).
Spójrz, że odwrotny DNS pasuje do przodu DNS: Nie jest to bardzo trudne, ale pokazuje pewien poziom odpowiedzialności i znajomość najlepszych praktyk - i coś, czego nie ma wiele bloków adresów klienta.
Reputacja: Podczas komunikowania się z innymi serwerami SMTP wielu dostawców śledzi ilość spamu i ilości wysłanych wiadomości e-mail i może zmniejszyć ilość spamu poprzez ograniczenie połączeń i kontrolę tych parametrów. (Jest to wiele sposobów, nie wszystkie z nich są oczywiste, ale wymagają znanego nadawcy).
SPF i DKIM: Mechanizmy te wiążą zasoby DNS z nazwą domeny, aby utrudnić fałszowanie poczty i byłoby trudne (ale niekoniecznie niemożliwe do wdrożenia, jeśli program pocztowy (MUA) jest odpowiedzialny za pocztę wychodzącą. (Dodano, aby ta odpowiedź była większa) kompletna, ponieważ została już zaakceptowana. Należy ją przypisać do plakatów poniżej, ponieważ wpadło mi to w pamięć, ale mimo to jest bardzo ważna)
Prawdopodobnie istnieją inne drobne obawy, ale byłyby to najważniejsze.
źródło
W 1991 r. - i na początku lat 90., a nawet wcześniej - możesz być w stanie zrobić to, co opisujesz. Ale w rzeczywistości w 2015 r. Można wprawdzie wysyłać wiadomości e-mail do dowolnej osoby z dowolnego komputera, na którym jest zainstalowana usługa pocztowa, ale świat SPAM sprawił, że ta metoda była bezużyteczna.
Gdy korzystasz z „prawdziwej” usługi SMTP, ustawiane są takie rzeczy, jak rekordy PTR, rekordy SPF, a nawet klucze DomainKeys, które zostały ustanowione tylko w jednym celu i tylko w jednym celu: w celu zagwarantowania, że SMTP wysyłający wiadomość jest zgodny z prawem. A jeśli nie jest? Przefiltruj wiadomość do folderu SPAM lub „wielkiej otchłani” usunięcia. Oto podział każdego z tych przedmiotów:
PTR (rekord wskaźnika / zwrotny rekord DNS): weryfikacja na poziomie serwera. Jak wyjaśniono tutaj , rekord PTR służy do mapowania interfejsu sieciowego (IP) na nazwę hosta. Oznacza to, że jeśli masz adres
123.456.789.0
na swoim serwerze SMTP wysyłającym e-maile,smtp.example.com
odpowiedni rekord PTR byłby odpowiednismtp.example.com
. Wydaje się to zbyt proste, ale działa, ponieważ jedynym, który naprawdę może ustawić rekord PTR, jest właściciel adresu IP i można go ustawić tylko na ich sprzęcie. Działa więc jako punkt weryfikacji, kto jest właścicielem / uruchamia / zarządza tym adresem IP.SPF (Sender Policy Framework): Weryfikacja poziomu wejścia DNS nazwa hosta. Rekord SPF - jak wyjaśniono tutaj - jest w zasadzie rekordem DNS ustawionym przez właściciela nazwy domeny, który zawiera listę adresów IP i nazw hostów serwerów, które mogą wysyłać wiadomości e-mail dla tej nazwy domeny. To kolejny krok weryfikacji, który gwarantuje, że tylko prawdziwy właściciel nazwy domeny dla serwera SMTP może wysyłać maile. Powiedzmy, że serwer z adresem IP, na który
123.456.789.9
wysyła wiadomości e-mailexample.com
. Wiemy już, że tosmtp.example.com
wykorzystuje123.456.789.0
, ale wpis rekordu SPF dlaexample.com
może oznaczać: „Hej!123.456.789.9
to dobry serwer! On jest legalny! Szanuj jego e-maile! ”DKIM (DomainKeys Identified Mail): weryfikacja poziomu wiadomości e-mail. Jak wyjaśniono tutaj i na Wikipedii , „DKIM to system sprawdzania poprawności wiadomości e-mail zaprojektowany do wykrywania fałszowania wiadomości e-mail, zapewniając mechanizm umożliwiający odbierającym wymiennikom poczty sprawdzanie, czy poczta przychodząca z domeny jest autoryzowana przez administratorów tej domeny i czy wiadomość e-mail (w tym załączniki) nie został zmodyfikowany podczas transportu. ”Za pomocą skrótów kryptograficznych DKIM sprawdza, czy sama poczta nie została przefiltrowana ani naruszona podczas transportu. Służy to również jako kolejny punkt weryfikacji w łańcuchu „Czy jesteś uprawniony czy jesteś spamem?”.
Tak więc ostatecznie publiczny serwer SMTP warty cokolwiek będzie miał ustawione co najmniej dwa z tych elementów (PTR i SPF), aby zweryfikować, czy serwer SMTP i powiązany e-mail są prawidłowe. Nie wszyscy używają DKIM, ale jest to kolejna warstwa walidacji, która staje się coraz bardziej popularna w dzisiejszych czasach, ponieważ SPAMmers stają się bardziej wytrwali w swoich wysiłkach, aby wysłać SPAM.
źródło
Większość prywatnych dostawców usług internetowych blokuje port TCP 25 (SMTP), aby uniemożliwić uczestnictwo w sieci spamowej. Jeśli komputer zostanie zainfekowany, może zacząć wyrzucać spam na żądanie innej osoby.
źródło
Wszystkie pozostałe odpowiedzi są doskonałe, a spam ma z tym wiele wspólnego.
Ale w rzeczywistości istnieje prostsza, bardziej ogólna odpowiedź: funkcje. Wysyłanie wiadomości e-mail za pośrednictwem SMTP jest w rzeczywistości bardzo złożonym przedsięwzięciem. Nawet bez spamu nie chciałbyś wdrożyć całego zestawu funkcji protokołu SMTP w każdym kliencie e-mail; lepiej jest mieć dedykowane oprogramowanie (sendmail, postfix itp. to te duże w świecie * nix, Exchange w świecie Windows).
Na przykład, nawet w najbardziej podstawowym, „prawdziwy” serwer SMTP musi przynajmniej być w stanie rozpoznać rekordy MX. Następnie musi negocjować funkcje (głównie TLS, ale są też inne funkcje). Musi zarządzać kolejkami w celu ponowienia próby, generować raporty o niedostarczeniu itp.
A to tylko podstawowa, niezbędna funkcjonalność, bez której serwer nawet nie działałby. Nie obejmuje nawet takich rzeczy jak przepisywanie adresów, listy mailowe. Nie wspominając już o kilkunastu innych protokołach, które obsługują sendmail i innych, takich jak UUCP.
Wdrożenie SMTP w Outlooku, Thunderbirdzie itp. Jest bardzo minimalne - w najlepszym razie odpowiada to w przybliżeniu użyciu inteligentnego hosta na sendmailu.
Powiązany, ale odrębny problem: poczta e-mail jest tematem bardzo wrażliwym na bezpieczeństwo i chciałbyś, aby jeden lub kilka centralnie zarządzanych serwerów obsługiwało ją, zamiast potencjalnie setek lub tysięcy pojedynczych serwerów na każdym pulpicie.
źródło
Możesz stworzyć program pocztowy, który to zrobił, i nie mam wątpliwości, że inni też to zrobili (lub próbowali).
Zasadniczo piszesz narzędzie, które jest zarówno MUA (agent użytkownika poczty), jak i MTA (agent transferu poczty) w jednym.
Powodem tego, że tradycyjnie jest on podzielony na różne narzędzia, z MTA rezydującym „po stronie serwera”, jest to, że MTA, który wysyła pocztę przez otwarty Internet, jest znacznie bardziej skomplikowany w pisaniu i konfiguracji, a także korzysta z przebywania na niezawodny serwer „zawsze na”.
MTA musi:
Wyszukaj i połącz się z serwerami, którym nie ufa lub które mogą źle funkcjonować, i radzić sobie z błędami w rozsądny sposób, który nie powoduje utraty poczty.
Postępuj z serwerami, które są wyłączone, i kieruj je na alternatywne serwery lub ustaw kolejkę poczty w celu późniejszego ponownego spróbowania. Najlepiej działa to na serwerze, który jest „zawsze podłączony” do Internetu. Oznacza to również, że agent przesyłania poczty potrzebuje własnych obszarów przechowywania poczty w kolejce.
Zajmij się szeregiem różnych możliwości serwera, dostosowując zachowanie do możliwości serwera odbierającego.
Powiadom użytkownika o stanach błędów lub niedostarczeniu poczty, aby nie tylko została utracona.
Stosuj doskonałe praktyki bezpieczeństwa i bądź bardzo świadomy bezpieczeństwa.
Idealnie jest, jeśli rezydujesz na niezawodnym, zawsze podłączonym serwerze ze stabilnym adresem IP i zwrotnym wpisem DNS, tj. Połączeniem internetowym odpowiednim dla serwerów publicznych. Pomaga to innym systemom nie wykrywać poczty wysyłanej jako spam.
Biorąc pod uwagę te wymagania, sensowne jest umieszczenie serwera SMTP gdzieś na ogólnodostępnym serwerze zawsze dostępnym publicznie i próba użycia narzędzia odpowiedniego do wykonywania tego konkretnego zadania.
źródło
Kolejną rzeczą do rozważenia jest otrzymanie zwróconego e-maila . Co najmniej wszystkie wychodzące wiadomości e-mail mają adres FROM, na który można wysłać odpowiedź (nieznany użytkownik, odpowiedź urlopowa itp.). Aby adres zwrotny został rozpoznany, musi istnieć rekord MX wskazujący lokalizację skrzynki odbiorczej. O ile nie wysyłasz wiadomości e-mail z komputera ze stałym adresem IP, który jest zawsze włączony, będziesz potrzebować serwera do obsługi tych wiadomości przychodzących. Jest to zazwyczaj (ale nie zawsze) obsługiwane przez tę samą usługę.
GMail, Outlook 365 i Yahoo Mail to przykłady usług e-mail, z których korzystają osoby wysyłające wiadomości e-mail. W przypadku komercyjnego wysyłania wiadomości e-mail istnieją usługi, takie jak MailChimp, Marketo i Eloqua, które są bardzo dobre w wysyłaniu masowych wiadomości e-mail dla firmy i obsłudze takich rzeczy, jak odbicia, ograniczanie przepustowości i dostarczalność.
Zobacz: https://en.m.wikipedia.org/wiki/Bounce_address
źródło