Předávání pošty protokolem SMTP v systémech Windows 2000, Windows XP a na serveru Exchange Server

Překlady článku Překlady článku
ID článku: 304897 - Produkty, které se vztahují k tomuto článku.
Rozbalit všechny záložky | Minimalizovat všechny záložky

Na této stránce

ÚVOD

Předávání zpráv protokolem SMTP společnosti je funkce, která umožňuje klientovi protokolu SMTP pomocí serveru SMTP předávat dál e-mailové zprávy na vzdálenou doménu. Jak je popsáno v dokumentu RFC (Request for Comments) 282, v částech 2.1 a 3.7, byl protokol SMTP navržen s možností předávání e-mailových zpráv.

Pokud ovšem není toto předávání řízeno, může uživatel se zlými úmysly použít předávání k hromadnému rozesílání nevyžádaných e-mailových zpráv. Neřízený hostitel je označován jako hostitel typu open relay. Odesíláním těchto nevyžádaných e-mailových zpráv zprostředkujícímu hostiteli může uživatel se zlými úmysly skrýt svou identitu. Může také dojít k nadměrnému využívání prostředků na hostiteli předávání a k situaci, kdy je hostiteli předávání bráněno v odesílání platné e-mailové zprávy. Uživatel se zlými úmysly rozesílající nevyžádané e-mailové zprávy potom může zejména odeslat jednu zprávu mnoha příjemcům, aniž by využíval jejich vlastní šířku pásma.

Ve výchozím nastavení nejsou produkty společnosti Microsoft uvedené v části Informace v tomto článku jsou určeny pro produkt nakonfigurovány pro režim open relay.

Další informace

Použijete-li nástroje jiných výrobců pro otestování předávání na serveru SMTP, může se zdát, že server SMTP neprošel úspěšně testem, a produkt SMTP společnosti Microsoft může budit dojem, že je v režimu open relay, ačkoli není. Je to způsobeno tím, že server SMTP nemusí okamžitě danou e-mailovou zprávu odmítnout. Místo toho server SMTP e-mailovou zprávu zpracuje a potom odešle zprávu o nedoručení. Další informace o odezvě serveru SMTP na předávání zpráv naleznete v části Odezva serveru SMTP na předávání. Další informace o způsobech testování přenosu pošty na serveru SMTP naleznete v části Testování předávání zpráv.

Každá adresa příjemce a odesílatele má v konverzaci prostřednictvím protokolu SMTP dvě části: místní část a doménovou část. Pokud není uvedena doménová část, což je část následující bezprostředně po znaku @, je zpráva považována za místní. Některé produkty SMTP společnosti Microsoft připojují místní doménu, protože někteří uživatelé mají nakonfigurovány své klienty SMTP tak, aby používali jako e-mailovou adresu pouze uživatelské jméno. Přidáním výchozí místní domény může server společnosti Microsoft přidat doménu, která je s nejvyšší pravděpodobností místní, čímž sníží náklady na podporu.

Příčinou tohoto chování je fakt, že některé produkty SMTP společnosti Microsoft neprovádějí vyhledávání v adresáři před přijetím e-mailových zpráv protokolu SMTP k doručení. Produkty SMTP společnosti Microsoft pouze kontrolují doménu příjemce kvůli zjištění, zda jde o místní doménu nebo explicitně povolenou doménu. Pokud není doména příjemce místní nebo povolená, odpoví server SMTP chybovou zprávou, která je podobná následující zprávě:
550 5.7.1 Relaying prohibited
Jediným požadavkem k zabránění přenosu je ověření, že doménová část adresy příjemce je místní. Volitelnou možností je zkontrolovat v adresáři poštovního serveru, zda je adresa příjemce platná, není to však vyžadováno. Pokud poštovní server přijme zprávu a později rozhodne, že ji nelze doručit, musí vygenerovat zprávu o nedoručení. Produkty SMTP společnosti Microsoft tomuto požadavku odpovídají.

Poznámka: Server Microsoft Exchange Server 2003 může provádět vyhledávání v adresáři během konverzace protokolu SMTP. Tuto funkci lze povolit pomocí nástroje System Manager. Další informace o filtrování příjemců na serveru Exchange Server 2003 najdete v následujícím článku znalostní báze Microsoft Knowledge Base:
823866 Konfigurace filtrování připojení pro použití seznamů blokovaných kontaktů v reálném čase a konfigurace filtrování příjemců na serveru Exchange 2003 (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)

Vyhledávání v adresáři během konverzace protokolu SMTP může být použito k ověření adres. Z tohoto důvodu doporučujeme zapnout funkci TarpitTime, popsanou v následujícím článku znalostní báze Microsoft Knowledge Base:
842851 Funkce vkládání prodlev (tar pit) protokolu SMTP pro Microsoft Windows Server 2003
Důležité: Je-li nutné provádět vyhledávání v adresáři během konverzace protokolu SMTP, můžete napsat jímku událostí protokolu SMTP pro systém Microsoft Windows 2000. Další informace naleznete na následujícím webu o událostech na serveru sady SDK na platformě MSDN:
http://msdn.microsoft.com/library/en-us/smtpevt/html/0e0c3b0d-5b08-42b5-8312-59a9f3cd8fd9.asp?frame=true

Odezva serveru SMTP na předávání

Doporučená odpověď, která odpovídá dokumentu RFC, je podobná následující:
550 5.1.1 JménoUživatele@NázevDomény.tld... Neznámý uživatel
V produktech uvedených v části Informace v tomto článku jsou určeny pro produkt se společnost Microsoft rozhodla neprovádět vyhledávání v adresáři během konverzace protokolu SMTP z následujících důvodů:
  • Pokud server SMTP vrátí chybu 5xx uživateli se zlými úmysly, který se pokouší odeslat hromadné nevyžádané e-mailové zprávy, bude tento uživatel okamžitě vědět, které adresy jsou skutečné. Pokud uživatel se zlými úmysly odešle seznam jmen prostřednictvím protokolu SMTP, může tímto způsobem jednoduše vytěžit seznam platných e-mailových adres. Může to být také riskantní pro místní uživatele, protože názvy uživatelských účtů jsou obvykle shodné s e-mailovými adresami.
  • Uživatel se zlými úmysly může použít adresu odesílatele k získání neoprávněného přístupu k systému a potom využít server oběti k odesílání zpráv o nedoručení zamýšlenému příjemci. Tento typ útoku, známý jako falšování identity (spoofing), zasáhne tento server pouze takovým objemem dat, jaký útočník odešle. Jinak řečeno, pokud chce uživatel se zlými úmysly odeslat 1 megabajt (MB) dat někomu jinému, musí použít 1 MB své šířky pásma k odeslání 1 MB dat na server SMTP. V typickém případě se takový uživatel se zlými úmysly pokusí odeslat 1 MB dat, ale ve skutečnosti způsobí odeslání desítek až stovek MB dat své oběti nebo skupině obětí prostřednictvím Internetu.
  • Pokud se během konverzace protokolu SMTP provádí vyhledávání v adresáři, může dojít k výraznému zpomalení konverzace protokolu SMTP. V době vydání tohoto článku pracovala společnost Microsoft s předpokladem, že server SMTP musí fungovat co nejrychleji, aby se zabránilo zablokování zpráv SMTP v síti Internet nebo v klientech SMTP ve stolních počítačích. Někdy není adresář dostupný, případně je vyžadováno předání určité domény, ale kopie adresáře nemusí být dostupná. Tato situace může nastat v hostitelském prostředí poskytovatele služeb Internetu.

Jak otestovat předávání zpráv

Chcete-li zjistit, zda je server SMTP nakonfigurován pro předávání e-mailových zpráv, můžete jej otestovat. V následujících příkladech nejsou testy předávání zpráv 1 až 5 serverem SMTP přijaty a jsou okamžitě odmítnuty. Testy 6 a 7 jsou serverem SMTP přijaty, ale e-mailová zpráva není předána a server nakonec vygeneruje zprávu o nedoručení.

Chcete-li provést následující testy předávání zpráv, zahajte nejdříve relaci protokolu Telnet a připojte se k serveru SMTP prostřednictvím portu 25:
  1. Spusťte příkazový řádek.
  2. Zadejte příkaz telnet NázevServeru 25, kdeNázevServeru je název serveru SMTP nebo jeho adresa IP a 25 je číslo portu, a potom stiskněte klávesu ENTER.
  3. Zadejte příkaz EHLO a potom stiskněte klávesu ENTER.

Test předávání zpráv 1

Toto je standardní test předávání zpráv protokolem SMTP. Klient SMTP nesmí mít povoleno předávání zpráv tímto způsobem, pokud to správce ve zvláštním případě nepovolí nebo pokud klient nejprve neprovede ověření. Chcete-li provést tento test, postupujte takto:
  1. V relaci Telnet zadejte na příkazovém řádku příkaz RSET.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.0.0 Resetting
  2. Zadejte příkaz MAIL FROM:JménoUživatele@NázevDomény.tld, kde JménoUživatele je jméno uživatele, NázevDomény je název domény a tld je doména nejvyšší úrovně, například .com nebo .net.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.1.0 JménoUživatele@NázevDomény.tld....Sender OK
  3. Zadejte příkaz RCPT TO:JménoPříjemce@NázevDomény.tld, kde JménoPříjemce je e-mailová adresa příjemce.

    Relace Telnet odpoví textem podobným následujícímu:
    550 5.7.1 Nelze předat na adresu (Unable to relay) for JménoPříjemce@ NázevDomény.tld

Test předávání zpráv 2

Tento test je téměř shodný s testem 1, ale odesílatelem je místní uživatel místo uživatele ve vzdálené doméně. Adresy odesílatelů se všeobecně využívají k získání neoprávněného přístupu k systému, a proto nesmí server tuto e-mailovou zprávu předat. Chcete-li provést tento test, postupujte takto:
  1. V relaci Telnet zadejte na příkazovém řádku příkaz RSET.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.0.0 Resetting
  2. Zadejte příkaz MAIL FROM:MístníUživatel, kdeMístníUživatel je místní název e-mailu uživatelského účtu v doméně, a potom stiskněte klávesu ENTER.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.1.0 MístníUživatel@NázevDomény.tld....Sender OK
  3. Zadejte příkaz RCPT TO:JménoPříjemce@NázevDomény.tld

    Relace Telnet odpoví textem podobným následujícímu:
    550 5.7.1 Nelze předat na adresu (Unable to relay) JménoPříjemce@ NázevDomény.tld

Test předávání zpráv 3

Tento test testuje prázdnou adresu obálky nebo adresu obálky s hodnotou NULL. Zprávy o nedoručení a další upozornění mají hodnotu adresy obálky NULL. Upozornění ovšem nesmí být předána, pokud není doména v adrese příjemce místní doménou. Chcete-li provést tento test, postupujte takto:
  1. V relaci Telnet zadejte na příkazovém řádku příkaz RSET.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.0.0 Resetting
  2. Zadejte příkaz MAIL FROM:<> a potom stiskněte klávesu ENTER.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.1.0 <>....Sender OK
  3. Zadejte příkaz RCPT TO:JménoPříjemce@NázevDomény.tld

    Relace Telnet odpoví textem podobným následujícímu:
    550 5.7.1 Nelze předat na adresu (Unable to relay) JménoPříjemce@ NázevDomény.tld

Test předávání zpráv 4

Tento test je shodný s testem 2, ale do e-mailové adresy je explicitně přidána místní doména. Server SMTP uzavřený pro předávání tuto e-mailovou zprávu nesmí předat. Chcete-li provést tento test, postupujte takto:
  1. V relaci Telnet zadejte na příkazovém řádku příkaz RSET.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.0.0 Resetting
  2. Zadejte příkaz MAIL FROM:JménoUživatele@NázevDomény.tld, kde NázevDomény je název místní domény, a potom stiskněte klávesu ENTER.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.1.0 JménoUživatele@NázevDomény.tld....Sender OK
  3. Zadejte příkaz RCPT TO:JménoUživatele@NázevDomény.tld a potom stiskněte klávesu ENTER.

    Relace Telnet odpoví textem podobným následujícímu:
    550 5.7.1 Unable to relay for JménoUživatele@ NázevDomény.tld

Test předávání zpráv 5

Tento test je také shodný s testem 2, ale místo názvu domény je použita adresa IP serveru. Přestože je tento formát adresy všeobecně přijímán, server nesmí přijmout předání na vzdálenou doménu. V různých dalších testech, které používají v adrese odesílatele hodnotu localhost nebo název DNS (Domain Name System) serveru, nesmí server předat e-mailové zprávy, které používají tento přístup. Chcete-li provést tento test, postupujte takto:
  1. V relaci Telnet zadejte na příkazovém řádku příkaz RSET.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.0.0 Resetting
  2. Zadejte příkaz MAIL FROM:JménoUživatele@10.10.10.10 a potom stiskněte klávesu ENTER.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.1.0 JménoUživatele@10.10.10.10....Sender OK
  3. Zadejte příkaz RCPT TO:JménoUživatele@NázevDomény.tld a potom stiskněte klávesu ENTER.

    Relace Telnet odpoví textem podobným následujícímu:
    550 5.7.1 Nelze předat na adresu (Unable to relay) JménoUživatele@ NázevDomény.tld

Test předávání zpráv 6

Tento test je speciálně určen pro starší servery se systémem UNIX, které směrují e-mailové zprávy tím, že připojují místní doménu a mění znak zavináč (@) na symbol procento (%). Server potom zprávu předá. Symbol procenta (%) je platným znakem v místní části e-mailové adresy, a proto je možné, že server SMTP zprávu přijme a v případě neúspěšného vyhledávání v adresáři odešle zprávu o nedoručení. Produkty SMTP společnosti Microsoft nejsou zranitelné vůči tomuto druhu předávání, protože zpráva není předána dál a je vygenerována zpráva o nedoručení. Chcete-li provést tento test, postupujte takto:
  1. V relaci Telnet zadejte na příkazovém řádku příkaz RSET.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.0.0 Resetting
  2. Zadejte příkaz MAIL FROM:JménoUživatele a potom stiskněte klávesu ENTER.

    Relace Telnet odpoví textem podobným následujícímu:
    JménoUživatele@NázevDomény.tld....Sender OK
  3. Zadejte příkaz RCPT TO:JménoUživatele%NázevDomény.tld a potom stiskněte klávesu ENTER.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.1.5 JménoUživatele%NázevDomény.tld@NázevDomény.tldJménoUživatele@NázevDomény.tld
    Poznámka: K doméně příjemce je v e-mailové adrese připojena místní doména.

Test předávání zpráv 7

Tento test je variantou testu 6. Uvozovka (") je platným znakem v místní části e-mailové adresy, a proto server SMTP přijme zprávu a v případě neúspěšného vyhledávání v adresáři odešle zprávu o nedoručení. Produkty SMTP společnosti Microsoft nejsou zranitelné vůči tomuto druhu předávání, protože zpráva není předána dál a je vygenerována zpráva o nedoručení. Chcete-li provést tento test, postupujte takto:
  1. V relaci Telnet zadejte na příkazovém řádku příkaz RSET.

    Relace Telnet odpoví textem podobným následujícímu:
    250 2.0.0 Resetting
  2. Zadejte příkaz MAIL FROM:JménoUživatele a potom stiskněte klávesu ENTER.

    Relace Telnet odpoví textem podobným následujícímu:
    JménoUživatele@NázevDomény.tld....Sender OK
  3. Zadejte příkaz RCPT TO:"JménoUživatele@NázevDomény.tld" a potom stiskněte klávesu ENTER.

    Relace Telnet odpoví textem podobným následujícímu:
    "JménoUživatele@NázevDomény.tld"@NázevDomény.tld
    Poznámka: K doméně příjemce je v e-mailové adrese připojena místní doména.

Jak určit, zda je server SMTP uzavřený vůči testům předávání zpráv 6 a 7

Spustíte-li testy 6 a 7 proti počítači se serverem Exchange 2000, testy vygenerují zprávu příjemci, jehož jméno nelze přeložit, a do poštovní schránky uvedené v nástroji Exchange System Manager přijdou zprávy o nedoručení. Poštovní schránku lze nakonfigurovat pro nepřeložená jména příjemců ve vlastnostech výchozího virtuálního serveru SMTP v okně Předat všechny nepřeložené příjemce hostiteli na kartě Zprávy v nástroji Exchange System Manager.

Zprávy o nedoručení jsou důkazem o tom, že e-mailové zprávy nejsou předány.

Odkazy

Další informace o tom, jak postupovat, provozujete-li server Exchange Server 5.5 a chcete jej nakonfigurovat tak, aby nebyl v režimu open relay, získáte v následujícím článku znalostní báze Microsoft Knowledge Base:
196626 XFOR: Omezení směrování služby Internet Mail Service
Další informace o tom, jak zabránit předávání pošty v systému Windows 2000, naleznete v následujícím článku znalostní báze Microsoft Knowledge Base:
310356 Jak zabránit předávání pošty na serveru SMTP služby IIS 5.0 v systému Windows 2000 (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)
Existují obecné testy, pomocí kterých můžete otestovat předávání pošty na serveru SMTP. Můžete například využít následující weby a nástroje jiných výrobců: Společnost Microsoft se vám snaží usnadnit získání technické podpory poskytnutím informací o kontaktech na jiné výrobce. Tyto kontaktní informace se mohou bez upozornění změnit. Společnost Microsoft neručí za správnost informací o kontaktech na jiné výrobce.

Produkty jiných výrobců popisované v tomto článku vyrábějí společnosti, které jsou nezávislé na společnosti Microsoft. Společnost Microsoft neposkytuje žádnou záruku (předpokládanou ani jinou) týkající se výkonu a spolehlivosti těchto produktů.

Vlastnosti

ID článku: 304897 - Poslední aktualizace: 20. listopadu 2006 - Revize: 10.0
Informace v tomto článku jsou určeny pro produkt:
  • Microsoft Windows XP Professional Edition
  • Microsoft Windows 2000 Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Professional Edition
  • Microsoft Exchange 2000 Enterprise Server
  • Microsoft Exchange Server 5.5 Standard Edition
  • Microsoft Exchange Server 5.0 Standard Edition
Klíčová slova: 
kbhowto kbwinservnetwork kbnetwork KB304897

Dejte nám zpětnou vazbu

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com