Protokół SMTP.pdf

(112 KB) Pobierz
718054621 UNPDF
Historia
Sieci komputerowe
Wykład 13: Poczta elektroniczna
1971. Ray Tomlinson wysyła pierwszego maila. Notacja
user@komputer .
1982. RFC 822. Standard wiadomosci pocztowych.
198*. sendmail (program przesył aj acy poczt e).
1988. Pierwsze eksperymentalne komercyjne skrzynki pocztowe.
1996. MIME (Multipurpose Internet Mail Extensions), RFC
2045–2048. Listy w HTML.
Marcin Bie nkowski
Instytut Informatyki
Uniwersytet Wrocławski
Sieci komputerowe ()
Wykład 13
1 / 1
Sieci komputerowe ()
Wykład 13
2 / 1
Wiadomosci pocztowe
Poczta elektroniczna
Wiadomosci pocztowe
Protokół SMTP
Omówimy trzy powi azane ze sob a rzeczy:
1
protokół przesyłania poczty mi edzy serwerami (SMTP)
1
Serwer oczekuje na porcie 25
2
budowa wiadomosci email
2
Protokół czysto tekstowy (tak jak np. HTTP)
3
protokoły odbierania poczty z serwera (POP3/IMAP)
Sieci komputerowe ()
Wykład 13
3 / 1
Sieci komputerowe ()
Wykład 13
4 / 1
718054621.011.png
Wiadomosci pocztowe
Protokół SMTP, przekazywanie poczty
Wiadomosci pocztowe
Protokół SMTP, przekazywanie poczty cd.
Jesli wysyłany wiadomosc na adres email, który jest obługiwany przez
dany serwer to serwer j a zapisuje do jakiegos lokalnego pliku.
Przykład: wysyłamy poczt e do user@tcs.uni.wroc.pl ł acz ac si e z
serwerem swiatowit.ii.uni.wroc.pl .
Dok ad przekazywac poczt e?
Ogólnie: zalezy od konfiguracji.
W przeciwnym przypadku:
serwer moze j a przekazac dalej (relaying).
Obecnie serwery s a niech etne do takiego przekazywania poczty
(wymagana autoryzacja).
Przy przekazywaniu serwer SMTP ł aczy si e z innym serwerem
SMTP staj ac si e na moment klientem SMTP.
Zazwyczaj stosowane jedno z dwóch skrajnych podejsc:
Wszystkie wiadomosci kierujemy do jednego komputera
(smarthost).
Sprawdzamy rekord MX dla domeny odbiorcy i wysyłamy do
odpowiedniego komputera.
Sieci komputerowe ()
Wykład 13
5 / 1
Sieci komputerowe ()
Wykład 13
6 / 1
Wiadomosci pocztowe
Wiadomosci pocztowe
Budowa emaila
Nagłówek
Zawiera pola typ: wartosc.
1
nagłówek
Najcz esciej uzywane pola
From
To
Cc (kopia)
Bcc („slepa” kopia)
Message-ID (unikatowy identyfikator wiadomosci)
Date
Subject
2
wiersz odst epu
3
tresc maila
Sieci komputerowe ()
Wykład 13
7 / 1
Powyzsze pola s a ustawiane juz przez klienta poczty.
Istnieje szereg pól dodawanych juz przez kolejne serwery SMTP na
trasie (np. Received )
Sieci komputerowe ()
Wykład 13
8 / 1
718054621.012.png 718054621.013.png 718054621.014.png 718054621.001.png
Wiadomosci pocztowe
Wiadomosci pocztowe
W atki, czyli dlaczego 90% ludzi zle robi
MIME
Pocz atkowo tresc wiadomosci musiała byc „normalnym” 7-bitowym
tekstem.
Standard MIME
Mozliwosc okreslenia Content-Type: a w nim równiez
kodowania.
Pole Content-Transfer-Encoding: (np. 8bit , base64 ).
Content-Type:multipart/ * — mozliwosc wysyłania
zał aczników (a równiez wysyłania wiadomosci jednoczesnie w txt i
html)
Jesli uzywamy funkcji Reply w programie pocztowym
do nagłówka zostaj a dodane pola References: i
In-Reply-To: .
na podstawie tych pól program pocztowy moze tworzyc w atki
(drzewa wiadomosci)
znaczenie zwłaszcza przy mailowych grupach dyskusyjnych.
Co robi a ludzie jesli chce napisac do kogos (albo na grup e)
Szukamy jakiejs wiadomosci od tej osoby.
Naciskamy Odpowiedz.
Zmieniamy temat wiadomosci. Pola References: i
In-Reply-To: zostaj a!
Sieci komputerowe ()
Wykład 13
9 / 1
Sieci komputerowe ()
Wykład 13
10 / 1
Wiadomosci pocztowe
Protokół dostarczania ko ncowego: POP3
Wiadomosci pocztowe
Par e uwag na temat poczty
swiatowit:mbi:~>telnetlocalhost110
Connectedtolocalhost.
Escapecharacteris’^]’.
+OKready
USERmbi
+OKPasswordrequiredformbi.
PASS **********
+OKmbihas2visiblemessages(0hidden)in56859octets.
LIST
+OK2visiblemessages(56859octets)
1540
256319
.
RETR2
...
Netykieta
Emoticony :-)
Skróty (IMHO, ZTCP)
Sieci komputerowe ()
Wykład 13
11 / 1
Sieci komputerowe ()
Wykład 13
12 / 1
718054621.002.png 718054621.003.png 718054621.004.png
Wiadomosci pocztowe
Wiadomosci pocztowe
Spam
Co to jest Spam?
spam
spam = niechciane wiadomosci elektroniczne
Pierwszy raz: 1 maja 1978 (reklama komputerów DEC)
Sposoby walki ze spamem
Blokowanie adresów
Blokowanie konkretnych tematów (wyrazenia regularne)
Metody statystyczne
Sieci komputerowe ()
Wykład 13
13 / 1
Sieci komputerowe ()
Wykład 13
14 / 1
Wiadomosci pocztowe
Wiadomosci pocztowe
Szyfrowanie
Szyfrowanie, cd.
Wiadomosci pomi edzy serwerami zazwyczaj przesyłane s a w
postaci niezaszyfrowanej (wszyscy po drodze mog a czytac nasz a
poczt e).
Mozna szyfrowac poł aczenia SMTP, ale wtedy i tak
administratorzy serwerów SMTP mog a czytac nasz a poczt e.
Szyfry podstawieniowe
Przykład: zmieniamy literke A na D, B na E, itd.
Dobre w czasach Juliusza Cezara, ale juz nie dzis.
Mozna złamac dosc szybko za pomoc a analizy statystycznej.
Obecna popularna implementacja: ROT-13, wbudowana w
programy pocztowe.
Sieci komputerowe ()
Wykład 13
15 / 1
Sieci komputerowe ()
Wykład 13
16 / 1
718054621.005.png 718054621.006.png
Wiadomosci pocztowe
Szyfry symetryczne z uzyciem klucza
Wiadomosci pocztowe
One-Time Pad: przykład
Szyfrujemy ci ag bitów za pomoc a klucza (ci agu bitów)
Przykład: One-Time Pad
Klucz ma tak a sam a długosc jak tekst zaszyfrowany
Wykonujemy bitowy XOR na dwóch ci agach i wynik przesyłamy
odbiorcy.
Po drugiej stronie odbiorca robi XOR odebranej wiadomosci ze
swoj a kopi a klucza
Chcemy wysłac ci ag „kot”:
kot=110101111011111110100
KEY=101010110101011010101
-----------------------
SZYFR011111001110100100001
Sieci komputerowe ()
Wykład 13
17 / 1
Sieci komputerowe ()
Wykład 13
18 / 1
Wiadomosci pocztowe
One-Time Pad: przykład
Wiadomosci pocztowe
Szyfrowanie symetryczne
Całkowicie bezpieczne jesli ktos nie zna klucza. Atakuj acy nie dostaje
zadnej wiedzy na temat szyfrowanego tekstu (poza długosci a)
W szczególnosci jesli ma zły klucz, to moze odszyfrowac dowolny inny
tekst
kot=110101111011111110100
KEY1=101010110101011010101
-----------------------
SZYFR011111001110100100001
KEY2=100110010110111001010
rak=111001011000011101011
Symetryczne = odbiorca i nadawca maj a ten sam klucz
Poza one-time pad istniej a tez inne szyfrowania z krótszymi
kluczami (DES, AES, ...)
Ale jak przesłac klucz przez niezabezpieczony kanał?
Sieci komputerowe ()
Wykład 13
19 / 1
Sieci komputerowe ()
Wykład 13
20 / 1
718054621.007.png 718054621.008.png 718054621.009.png 718054621.010.png
Zgłoś jeśli naruszono regulamin