ISIK06.rs

Infrastruktura sieciowa

Protokoły FTP, HTTP, SMTP *

FTP

FTP jest to protokół transferu plików (File Transfer Protocol), który umożliwia ich wymianę między serwerem, a klientem w obydwie strony. Większość protokołów w celu nawiązania połączenia wykorzystuje jeden port, jednak FTP różni się pod tym względem, ponieważ wykorzystuje on dwa porty. Port o numerze 21, tak zwany port kontrolny, służący do nawiązania połączenia z serwerem FTP oraz port o innym numerze do przesyłania danych. Klient FTP inicjuje połączenie na porcie 21. Następnie przeprowadzana jest procedura uwierzytelniania użytkownika. Kiedy klient prosi o dane, serwer otwiera nowe połączenie korzystając z wybranego portu o innym numerze.

FTP jest protokołem tekstowym (w związku z czym nie zabezpieczonym przed podsłuchiwaniem).

Z serwerem FTP możemy komunikować się za pomocą surowego protokołu ftp:

Zadanie (3 pkt)

W pliku Plik1 znajduje się log komunikacji pomiędzy klientem a serwerem ftp

Podaj porty na których zachodziła komunikacja oraz listę komend podaną przez użytkownika.

Wykorzystując podejrzane dane na temat użytkownika i hasła połącz się za pomocą programu FileZilla na serwer ftp prowadzącego (adres zostanie podany, numer portu wydedukuj z logu komunikacji) i załóż tam katalog o nazwie ImieNazwisko (podając w tym miejscu swoje dane). Załącz do tego katalogu dowolny mały plik o rozszerzeniu txt.

HTTP

Protokół HTTP (Hypertext Transport Protocol) to protokół, który jest wykorzystywany do komunikacji serwerów WWW z klientami. Komunikacja między klientem a serwerem odbywa się na zasadzie schematu zapytanie-odpowiedź.

Zapytanie HTTP składa się z nagłówka i ciała (body).

Opis pól nagłówków HTTP można znaleźć np tutaj:

Przykład nagłówka (podana komenda zadziała tylko w systemie linux):

echo -e "HEAD http://www.staff.amu.edu.pl/~mw/index.html HTTP/1.0\n\n" | nc www.staff.amu.edu.pl 80 | less

Parametry zapytań HTTP możemy przesyłać poprzez adres (link) lub poprzez pola nagłówka.

W ciele zapytania przesyłamy dane. Przeczytaj więcej na:

Zadanie (1 pkt)

W pliku Plik2 znajduje się log komunikacji pomiędzy klientem a serwerem

Odpowiedz na pytania: Jaki jest domyślny port na którym działa protokół HTTP? Czy HTTP używa protokołu TCP czy UDP?

Zadanie (1 pkt)

Czy są statusy HTTP? Który numer statusu odpowiada za informacje, że server nie jest dostępny, który odpowiada komunikatowi "OK"?

Zadanie (2 pkt)

Strona

Służy do tworzenia zapytań HTTP

Wykonaj metodę GET i metodę POST na adresie

mw.home.amu.edu.pl/zajecia/SIK2018/log.php

podając jeden parametr o nazwie indeks i wartości Twojego numeru indeksu.

Odpowiedz jaka jest różnica między przesyłaniem parametrów metodami GET/POST?

SMTP

SMTP - protokół komunikacyjny opisujący sposób przekazywania poczty elektronicznej w Internecie.

SMTP to względnie prosty, tekstowy protokół, w którym określa się co najmniej jednego odbiorcę wiadomości (w większości przypadków weryfikowane jest jego istnienie), a następnie przekazuje treść wiadomości. Demon SMTP działa najczęściej na porcie 25. Łatwo przetestować serwer SMTP przy użyciu programu telnet.

Aby połączyć się z serwerem SMTP wystarczy wpisać jego adres i port:

nc smtp.wmi.amu.edu.pl 25

Opis komend smtp można znaleźć pod adresem:

Po polsku:

Zadanie (3 pkt)

Korzystając z serwera smtp.wmi.amu.edu.pl wyślij na adres mw@wmi.amu.edu.pl mail z adresu dziekan@wmi.amu.edu.pl w temacie umieszczając swoje imię i nazwisko. Data maila ma być z roku 2020!