Uživatelské nástroje

Nástroje pro tento web


Postranní lišta

Menu


web GML
intranet GML


© GML 2014
používáme Dokuwiki

informatika:maturita:emailprakticky

Obsah

Emailové protokoly prakticky

Níže uvedeme příklad komunikace pomocí protokolů SMTP, POP3 a IMAP s mailovými servery. Pro uvedené příklady je potřeba telnetový klient, na linuxu je konzolový příkaz telnet na Windows je vhodný program Putty. Dále je potřeba nástroj pro zakódování textu do base64, na linuxu příkaz base64 nebo třeba online Utilities-online.info či base64decode.org a base64encode

SMTP

Simple mail transfer protocol je určený pro komunikaci s odesílacím serverem a pro komunikaci mezi servery během doručování. Pro zkoušku si vytvoříme účet na serveru centrum.cz, kde mám odzkoušené, že se lze přes telnet přihlásit. Některé SMTP servery vyžadují vyšší míru zabezpečení komunikace, kterou je ručně těžké zajistit. Pro přihlášení potřebujeme následující údaje:

server smtp.centrum.cz
port 25
login maturantiinf@centrum.cz
heslo smtpTest2020

Nejprve zjistíme, jak vypadá náš login a heslo zakódovaný pomocí base64. Buďto online nebo v linuxu příkazy:

echo -n „maturantiinf@centrum.cz“ | base64 a  echo -n „smtpTest2020“ | base64

Všimněte si, že k příkazu echo přidáváme volbu -n, která zajistí, aby se nevypisovalo odřádkování, jinak bychom v kódu měli na konci loginu či hesla ještě navíc „enter“, čili znaky ASCII 10 a 13, které by způsobovaly, že jméno a heslo bude špatně. Pokud příkazy zadáváte do konzole, všimněte si, že před echo u hesla jsem udělal mezeru, čímž zamezím tomu, aby se tento příklad uložil do historie použitých příkazů v souboru /home/user/.bash_history.

Připojíme se k serveru telnetovým programem. V linuxu zadáme telnet smtp.centrum.cz 25 v Putty zvolíme u session „Host name: smtp.centrum.cz“, „Connection type: RAW“ a „Port: 25“, ještě je praktické vespod zvolit „Close window on exit: Never“, aby se nám okno nezavřelo ihned po ukončení spojení, ale abychom jej zavřeli křížkem, až si vše přečteme.

Nyní probíhá komunikace:

220 smtp.centrum.cz ESMTP MAdfix (User/GNU) server nás zdraví, je připraven si povídat
ehlo centrum.cz pozdravíme server s názvem jeho domény
250-gm-smtp11.centrum.cz
250-PIPELINING
250-SIZE 26214400
250-AUTH PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250-DSN
250-CHUNKING
250 STARTTLS
server nás informuje o způsobech komunikace, mimojiné říká, že akceptuje autorizaci ve formě PLAIN nebo LOGIN
AUTH LOGIN zvolíme si jako metodu autorizace LOGIN, kdy postupně zadáme base64 zakódovaný login a pak heslo
334 VXNlcm5hbWU6Cg== server posílá kód 334, kterým akceptuje požadovanou metodu autorizace a přímo v kódu base64 odpovídá „Username:“
bWF0dXJhbnRpaW5mQGNlbnRydW0uY3o= zadáme base64 zakódovaný login
334 UGFzc3dvcmQ6Cg== data byla úspěšně převzata, teď požaduje „Password:“ (sekvence znaků za číslem dekódovaná base64)
c210cFRlc3QyMDIw zadáme base64 zakódované heslo
235 2.7.0 Authentication successful Jsme úspěšně přihlášení
mail from: maturantiinf@centrum.cz Zadáme adresu odesílatele
250 2.1.0 Ok Server přijal odesílatele (některé servery nevezmou jinou adresu, než odpovídající autorizovanému uživateli)
rcpt to: rydlo@gml.cz Zadáme adresu příjemce
250 2.1.5 Ok Server přijal adresu příjemce zprávy.
data Chceme začít psát mail
354 End data with <CR><LF>.<CR><LF> Server povoluje začít psát a informuje nás, že máme ukončit zadávání dat jedním prázdným odstavcem, který následuje odstavec jen s tečkou.
Subject: Testovací mail

Ahoj, posílám ti testovací mail.
Maturant z GML
 
.
 
Nejprve zadáme předmět za „Subject: “, po něm musíme mít jeden prázdný řádek (dvojí odentrování), následuje text zprávy, který dokončíme tak, že uděláme jeden prázdný odstavec, pak odstavec jen s tečkou a odentrování.
250 2.0.0 Ok: queued as 6D9DBC063A35 Zadaná zpráva byla přijata do fronty k odeslání.
quit Nechceme-li psát další mail, spojení ukončíme.
221 2.0.0 Bye Server se s námi loučí a ukončuje spojení.
informatika/maturita/emailprakticky.txt · Poslední úprava: 19. 02. 2021, 12.56 autor: rydlo