Theory Ogólne
Generalnie serwer SMTP ma dwie różne funkcje, które często się pomylili: wychodzący złożenie mail i odbierania poczty z innych sieci. Te dwie funkcje są wykonywane przy użyciu tego samego protokołu SMTP. Zwykle te dwie funkcje są wykonywane przez to samo urządzenie, a historycznie można je nawet wykonywać na tym samym porcie. Łatwo więc zrozumieć, dlaczego ludzie łączą te dwie funkcje.
Chociaż te dwie funkcje nadal są tym samym protokołem SMTP, coraz mniej prawdą jest, że są one wykonywane na tym samym porcie (ponieważ administratorzy systemu uniemożliwiają swoim klientom spamowanie blokując ruch wychodzący z portu 25). Często przesyłanie SMTP wykorzystuje szyfrowanie SSL w dzisiejszych czasach, podczas gdy przesyłanie poczty pomiędzy dwiema różnymi sieciami odbywa się nadal w postaci zwykłego tekstu. Ze złożonością sieci Google nie zdziwiłoby mnie, gdyby te dwie funkcje były wykonywane na różnych komputerach. (Zastrzeżenie: pracuję dla Google, ale nie mam wewnętrznej wiedzy na temat działania GMail).
Składanie poczty wychodzącej. Podczas wysyłania wiadomości e-mail z GMail, szczególnie podczas konfigurowania klienta poczty e-mail, takiego jak Evolution, do wysyłania z konta Gmail, musisz skonfigurować serwer SMTP, który będzie używany do wysyłania wiadomości e-mail. Twój klient poczty e-mail łączy się bezpośrednio z tym serwerem SMTP, a serwer SMTP bierze odpowiedzialność za wysłanie wiadomości we właściwe miejsce w innym miejscu w Internecie. Często jest to konfigurowane przy użyciu specjalnego portu i wymaga informacji logowania, aby tylko autoryzowani użytkownicy mogli wysyłać wiadomości e-mail. Jest to funkcja, której dotyczy powyższy link pomocniczy. Skonfiguruj swojego klienta poczty tak, aby używał nazwy domeny smtp.gmail.com
na porcie 587 i myślę, że twój klient poczty znajduje ten serwer, używając rekordu DNS A
do zwykłego sprawdzania nazwy domeny.
Odbieranie wiadomości e-mail z innych sieci. Serwer SMTP przekazujący wiadomość do innej sieci wyszukuje rekord MX
dla gmail.com
(w twoim przypadku, ustalając, że miejscem wysłania wiadomości jest alt1.gmail-smtp-in.l.google.com
) i wysyła wiadomość do portu 25 na tym hoście. To właśnie sprawdziłeś w DIG i przetestowałeś za pomocą telnetu.
Dlaczego nie widzisz portu 25 z alt1.gmail-smtp-in.l.google.com
, gdy próbowałeś telnetować się przez Internet? Odpowiedź brzmi, że aby zapobiec wysyłaniu spamu, Twój dostawca usług internetowych blokuje ruch wychodzący na porcie 25. Nie możesz więc wysłać niczego do gmail.com
portu 25 bez przechodzenia przez serwer SMTP Twojego usługodawcy internetowego lub inny serwer SMTP, który wymaga logowania i przesyłania danych do portu 587.
Co próbowałeś zrobić.
Więc próbujesz wykonać funkcję # 2. Wyszukiwanie MX dla gmail.com
wykonałeś samodzielnie i okazało się, że odpowiada on serwerowi alt1.gmail-smtp-in.l.google.com
. Następnie próbowałeś telnetować się do portu 587 pod numerem alt1.gmail-smtp-in.l.google.com
.To nie zadziałało, ponieważ alt1.gmail-smtp-in.l.google.com
nie nasłuchuje na tym porcie (musi tylko nasłuchiwać na porcie 25, aby wykonać funkcję # 2). Następnie próbowałeś telnetować się do portu 25 na alt1.gmail-smtp-in.l.google.com
. To nie zadziałało, ponieważ twój dostawca usług internetowych blokuje połączenia wychodzące na porcie 25.
Co musisz zrobić, aby wysłać wiadomość e-mail na adres gmail.com, to znajdź serwer, który wykonuje funkcję nr 1 i wyślij tam wiadomość e-mail. Możesz również znaleźć dostawcę usług internetowych, który nie przeszkadza, że jest przystanią do spamu i nie blokuje ruchu wychodzącego z portu 25. (Właściwie, proszę tego nie robić.)
Myślę, że źle zrozumiałeś mój serwer do weryfikacji portu (może być powinienem wyraźnie wymienić nazwę serwera, dla którego testowałem otwarte porty). Nie sprawdzałem otwartych portów w "gmail.com". Sprawdziłem porty "alt1.gmail-smtp-in.l.google.com" 25 i 587, które są zgłaszane jako serwer poczty gmail.com przez dig. Nie myślę o wysyłaniu wiadomości e-mail z gmail.com. Załóżmy, że muszę napisać klienta poczty, który musi wysłać wiadomość e-mail na "nazwa_uż[email protected]". Pierwszą rzeczą, którą muszę znaleźć, jest serwer pocztowy dla gmail.com. Jak to znaleźć. –
@Talespin_Kit: Zaktualizowałem teraz swoją odpowiedź. To pomaga? –
Dziękujemy za zaktualizowanie odpowiedzi. Mam kilka pytań dotyczących blokowania portów przez dostawcę usług internetowych. Mogę połączyć się z portem 25 "smtp.gmail.com", ale nie mogę połączyć się z portem 25 "alt1.gmail-smtp-in.l.google.com". Dlaczego więc dostawca Internetu blokuje port 25 "alt1.gmail-smtp-in.l.google.com", ale nie "smtp.gmail.com". Czy istnieje metoda sprawdzenia, czy dostawca usług internetowych blokuje port (mam wątpliwości, czy port 25 "alt1.gmail-smtp-in.l.google.com" jest naprawdę otwarty). Kolejne pytanie brzmi: dlaczego informacje o "smtp.gmail.com" nie występują w rekordzie MX. –