Protokół SMTP SMTP (Simple Mail Transfer Protocol) - służy tylko do przesyłania poczty między komputerami. Nie specyfikuje on systemu pocztowego wysyłającego ani odbierającego, nazw użytkowników, sposobu przechowywania informacji przez serwery pocztowe, wielkości przesyłki, liczby przesyłek. SMTP określa jedynie format komunikatów wymienianych przez maszynę nadającą przesyłkę i odbierającą ją. Komunikaty w ASCII.
MIME Aby umożliwić dołączanie do listów poczty elektronicznej plików różnego rodzaju aplikacji zdefiniowano rozszerzenie SMTP zwane MIME (Multipurpose Internet Mail Extensions). Umożliwia ono zakodowanie dowolnego typu danych w ASCII. Dzięki temu, przy pomocy SMTP można przesyłać w listach różnego rodzaju załączniki. Dane zakodowane przez MIME w nagłówkach zawierają informację konieczną do ich zdekodowania.
Poczta elektroniczna Nadawca tworzy list, a następnie łączy się przy pomocy swojego klienta pocztowego (MUA Mail User Agent) z serwerem (MTA - Mail Transfer Agent), który go wyśle. Najczęściej program wysyłającego umieszcza go w swojej lokalnej kolejce listów oczekujących na wysłanie (standard 5 dni). Zgromadzone w kolejkach przesyłki mogą przebywać w nich określony czas; limit czasowy przekroczony i list nie zostanie w tym czasie wysłany do odbiorcy, serwer usuwa taką wiadomość ze swoich kolejek -> komunikat.
POP3 Protokół dostępu do skrzynek pocztowych POP3 (Post Office Protocol Version 3) - służy do wykonywania operacji kasowania oraz odczytywania listów przechowywanych w skrzynce pocztowej na innym komputerze. Na komputerze (niekoniecznie serwerze pocztowym), przez który użytkownicy mają mieć możliwość sięgania do swoich skrzynek, na 110 porcie TCP uruchamiany jest proces demon oczekujący na połączenia.
IMAP Podobnie jak POP3, protokół IMAP (Internet Message Access Protocol) pozwala użytkownikom na zdalny dostęp do swoich skrzynek pocztowych na serwerach. Klient pocztowy użytkownika, podobnie jak w poprzednim przypadku, musi nawiązać połączenie TCP z serwerem IMAP, port 143.
IMAP vs. POP3 IMAP - możliwość dokładnego zarządzania wiadomościami na serwerze oraz możliwość szybkiego ich odbierania; możliwość wysyłania klientowi tylko nagłówków wiadomości. Użytkownicy mogą sortować nadchodzące przesyłki i zapisywać je do różnych skrzynek zgodnie ze zdefiniowanymi przez siebie regułami. możliwość rozsyłania wiadomości w grupie użytkowników bez potrzeby obciążania serwera pocztowego: zapisanie wiadomość w skrzynce, którą będą mogli wybrać użytkownicy tej grupy w konfiguracji swoich klientów IMAP.
Przesyłanie plików Kopiowanie (FTP, SCP). Dostęp zintegrowany z systemem operacyjnym, gdzie operacje dostępu do zdalnych plików są dla użytkownika niewidoczne (NFS, CIFS). W obu jednak przypadkach protokoły muszą uwzględniać prawa dostępu do pliku, różnice w nazwach plików, różnice w reprezentacjach binarnych (choć czasami konwersja formatów powodowałaby utratę danych i jest niemożliwa).
Protokół FTP FTP (File Transfer Protocol) pierwszy przeznaczony specjalnie do transferu plików. Aby z niego korzystać, użytkownik musi mieć program klienta np. opcja w Windows Commander. Klient łączy się ze wskazanym serwerem FTP, próbując otworzyć sesję TCP na porcie 21. Użytkownik musi podać identyfikator w postaci nazwy użytkownika i hasła. Serwer i klient FTP używają odrębnego połączenia do przesyłania danych sterujących oraz odrębnych połączeń do transmisji każdego z czytanych lub zapisywanych plików.
Protokół FTP Wszystkie komendy wysyłane do serwera oraz jego odpowiedzi są przesyłane w kodzie ASCII (tak samo jak w przypadku SMTP, POP3, IMAP). Do transmisji danych wykorzystywany jest protokół UDP.
Protokół NFS Sieciowy system plików (NFS, Network File System) - opracowany przez firmę Sun Microsystems; zapewnia użytkownikowi "przezroczysty" dostęp do plików i programów położonych na innych komputerach. Konieczne do tego jest jedynie uruchomienie serwera NFS oraz wyposażenie użytkownika w program klienta. Jest to standardowym sieciowy system plików na systemach Uniksowych.
SCP SCP (Secure Copy) - najczęściej interpretowany jako fragment oprogramowania SSH (usługa ta jest instalowana w systemach przy okazji uruchamiania tego serwisu). Można z niej jednak korzystać bez instalacji całego SSH. Windows (WinSCP, pscp); UNIX (scp, Midnight Commander). Przypomina FTP; mechanizm autoryzacji użytkownika; w przeciwieństwie jednak do FTP, SCP nie używa dwóch odrębnych kanałów do komunikacji i transferu danych. Stosuje mechanizmy kryptograficzne.
Usługi terminalowe Możliwość korzystania z zasobów innych komputerów pracujących w odległych miejscach, nie posiadając dostępu do konsoli tych maszyn. Przykłady: Serwisy W W W, np. wyszukiwarki internetowe. Poprzez odpowiedni interfejs oferują one dostęp do bazy adresów oraz możliwość ich przeszukiwania. Często np. studenci chcą korzystać z kompilatorów zainstalowanych na serwerach uczelnianych, pracownicy ze specjalistycznego oprogramowania używanego w firmie, itd. Wówczas protokoły te oferującą dostęp do wszystkich poleceń na odległym systemie.
Telnet Umożliwia użytkownikowi zestawienie sesji TCP między dwoma odległymi systemami; na jednym z nich musi pracować proces serwera TELNET a użytkownik musi być wyposażony w program klienta. Użytkownik może wskazać serwer TELNET podając jego nazwę lub numer IP; autoryzacja użytkownika. Jednak przesyłane dane nie są w żaden sposób zabezpieczone przed podsłuchem. Klient przesyła do serwera informacje o wszystkich naciśniętych klawiszach. Zwrotnie przyjmuje znaki, które przysłał serwer i wyświetla je na terminalu użytkownika.
Telnet Serwer TELNET musi obsługiwać wiele sesji jednocześnie, zazwyczaj jeden proces serwera oczekuje na nowe połączenia na porcie 23 TCP. Dalej przekazuje on obsługę połączenia tworzonemu w tym celu procesowi podrzędnemu. Różnorodność systemów operacyjnych; w celu rozwiązania problemu TELNET definiuje tzw. sieciowy terminal wirtualny (Network Virtual Terminal - NVT). Dzięki niemu klient i serwer posługują się tym samym interfejsem w komunikacji między sobą.
SSH Secure Shell - funkcjonalnie zbliżony do usługi TELNET; użytkownik musi posiadać program klienta łączącego się z procesem serwera. odporny na podsłuch sieciowy - cała komunikacja między dwoma zdalnymi systemami jest szyfrowana; proces serwera oczekuje na połączenia na porcie 22 TCP; po połączeniu przekazuje obsługę do procesu potomnego, sam czekając dalej na nowe połączenia. klient i serwer SSH ustalają między sobą rodzaj algorytmu szyfrującego, zasady kompresji przesyłanych danych, możliwość przesyłania informacji generowanych przez aplikacje działające w środowiskach graficznych.
SSH - szyfrowanie Klucze: prywatny i publiczny. Wiadomość zaszyfrowana kluczem publicznym może być odczytana tylko przez kogoś, kto posiada klucz prywatny z tej pary kluczy. Klient SSH przekazuje serwerowi, której ze znanych mu par klucz-użytkownik ma użyć. Jeżeli serwer nie znajdzie informacji zabraniającej mu na zestawiania połączeń z komputerem użytkownika, wyśle klientowi numer losowy zaszyfrowany kluczem publicznym użytkownika. Ponieważ klucz prywatny jest zabezpieczony tzw. wyrażeniem przejściowym, więc tylko użytkownik znający to wyrażenie będzie w stanie odczytać wiadomość od serwera. W ten sposób użytkownik potwierdzi swoją tożsamość.
SSH - szyfrowanie W przypadku, gdy klucze publiczny i prywatny nie zostały wygenerowane, serwer SSH wyśle klientowi zapytanie o nazwę użytkownika i jego hasło.
RDP RDP (Remote Desktop Protocol) - podobnie jak SSH czy TELNET daje możliwość zdalnego dostępu do serwera. SSH i telnet służą głównie do pracy z terminalami tekstowymi, to RDP jest wykorzystywany głównie w usługach Terminal Services systemów firmy Microsoft. SSH daje możliwość tunelowania połączeń do serwera XWindows; jest to dodatkowa cecha SSH. RDP przenoszenia całe środowisko graficzne użytkownika na lokalny komputer.
RDP RDP nie wprowadza dużego dodatkowego obciążenia dla lokalnego komputera - zadaniem lokalnej maszyny jest tylko i wyłącznie obsługa aplikacji wyświetlającej wyniki działania programów uruchomionych na serwerze. daje możliwość wprowadzania oszczędności w firmach na sprzęcie, gdyż użytkownicy mniej wydajnych maszyn mogą uruchamiać duże aplikacje na serwerze aplikacja zainstalowana na serwerze Windows NT Terminal Server lub następnych wersjach systemu Windows, może być wykorzystywana przez dowolnego użytkownika, który ma aplikację klienta Terminal Services - administrator musi dbać o uaktualnienia oprogramowania tylko na jednym komputerze.
HTTP HTTP i WWW nie są to dwa tożsame pojęcia. WWW składa się z trzech rzeczy: protokołu HTTP, języka HTML i systemu nazewnictwa URI (Uniform Resource Identifier). Protokół HTTP jest używany do komunikacji między komponentami WWW, czyli np. przeglądarkami stron, serwerami proxy. Przy pomocy HTTP informacje są przesyłane w wielu różnych formatach, językach i kodowaniach znaków. Składnia wiadomości jest oparta o przedstawiony wcześniej MIME.
HTTP URI do identyfikacji zasobów w sieci; mechanizm "zapytanie-odpowiedź" przy wymianie danych; brak nawiązywania sesji między klientem a serwerem; zawieranie informacji o zasobach, które mogą być użyte na różne sposoby.
URI (Uniform Resource Identifier) URI pozwala na umieszczenie zasobu (pliku) gdziekolwiek w sieci Internet; separuje nazwę od rodzaju zasobu; URI jest sformatowanym ciągiem znaków wskazuje na zasób, niezależnie jakiego typu i niezależnie w jakim miejscu w sieci się znajduje; URI jest kombinacją URL (Uniform Resource Locator) i URN (Uniform Resource Name): jeśli zasób X został umieszczony pod adresem www.foo.com/x i adresem www.comx.com/pub/x to są to dwa adresy URL; każdy z nich jest URI zasobu X; jeżeli zasobem X jest książka o nadanym numerze ISBN (International Society of Book Numbers) to jej URN jest właśnie ten numer.
Serwer proxy Serwer pośredniczący (pośrednik, proxy) oprogramowanie lub serwer z odpowiednim oprogramowaniem, które dokonuje pewnych operacji (zwykle nawiązuje połączenia) w imieniu użytkownika. Użytkownik zleca pośrednikowi zadania za pomocą odpowiedniego klienta - klient FTP czy przeglądarka internetowa. Pośredniki (proxy) aplikacyjne, transferujące zapytania aplikacji, w istocie pełnią funkcję oprogramowania pośredniczącego i realizują "trasowanie zależne od danych".
Cookies Problem utrzymywania sesji zaczął być bardzo odczuwalny, gdy serwis WWW musiał przechowywać jakieś informacje o wcześniejszych odwołaniach, np. sklepy internetowe, banki elektroniczne, itd. Rozwiązaniem najczęściej stosowanym są ciasteczka (cookies). Przy każdym wysyłaniu zapytania do serwera, aplikacja użytkownika dołącza ciasteczko z informacjami o nim.
USENET NNTP (Network News Transfer Protocol) połączenie nieszyfrowane lub szyfrowane. Aplikacja, służąca do odczytywania artykułów z serwera news, otwiera połączenie TCP z serwerem na porcie 119. Podczas przetwarzania komend serwer pamięta nazwę bieżącej grupy news oraz numer artykułu pobranego przez klienta.
RSS Umowna rodzina języków znacznikowych do przesyłania nagłówków wiadomości. Wszystkie w większym lub mniejszym zakresie bazują na XML-u. Potrzebny jest odpowiedni program, tzw. czytnik kanałów. Często czytniki RSS-ów są zamieszczane w programach pocztowych.
P2P P2P (peer-to-peer równy z równym) model komunikacji w sieci komputerowej, który gwarantuje obydwu stronom równorzędne prawa (w przeciwieństwie do modelu klientserwer). Programy do wymiany plików w Internecie. Sieci bez centralnego serwera, oraz sieci z centralnym serwerem/serwerami (bardziej efektywne; informacje o użytkownikach podłączonych w danej chwili do sieci, oraz w niektórych wypadkach, o udostępnianych zasobach); centralne serwery oferują czasami także dodatkowe usługi, jak np. czat.
BitTorrent BitTorrent protokół wymiany i dystrybucji plików przez Internet, którego celem jest odciążenie łączy serwera udostępniającego pliki. Zaleta w porównaniu do protokołu HTTP - podział pasma pomiędzy osoby, które w tym samym czasie pobierają dany plik (użytkownik w czasie pobierania wysyła fragmenty pliku innym użytkownikom); Pobranie metapliku o rozszerzeniu.torrent, zawierającego informacje o zawartości, adresie trackera (serwer przekazujący informacje o innych użytkownikach pobierających dany plik) i sumach kontrolnych poszczególnych plików przesyłanych przez sieć.
Wirusy Wirusy komputerowe - proste programy komputerowe, które potrafią się powielać na komputerze użytkownika bez jego wiedzy. Często powstawały jako wynik nudów programistów. Nieszkodliwe (otwarcie okienka z komunikatem) jak i procedura formatowania dysku twardego. Wirusy generalnie atakują systemy operacyjne stworzone przez firmę Microsoft; są też pojedyncze wirusy działające w środowisku UNIX. Zagrożenie - nie tylko pliki zawierające programy, ale też pliki, w których przesyłane są dokumenty; dokumenty nadesłane od znanej osoby - odbiorca próbuje je otworzyć, co powoduje uruchomienie makra z wirusem.
Wirusy Kolejne generacje wirusów potrafią coraz więcej są wyposażane we własne serwery pocztowe co pozwala im się samodzielnie rozsyłać; korzystają z książek adresowych (utrudnia to wykrycie fałszerstwa, gdyż dość często otrzymuje list od znanej sobie osoby); Wykorzystywane są błędy w językach skryptowych baz danych, współdzielone zasoby w systemie Windows, dziury w oprogramowaniu oraz błędy w protokołach komunikacyjnych takich jak na przykład sieci p2p (np. Kazaa); Wirusy posiadły także możliwość zakłócania pracy sieci; niektóre - próbując się rozsyłać - generują spory ruch sieciowy lub określonego dnia atakują wybrany serwis sieciowy;
Wirusy Rozwój narzędzi programistycznych powoduje też szybkie powstawanie nowych odmian tego samego wirusa - najczęściej wykorzystują tę samą lukę w systemach do rozprzestrzenia a zmieniania jest dodatkowa funkcjonalność. Wirusy zaczęto dzielić na różne kategorie. Najczęściej spotykanymi na zwami są robaki i trojany.
Robaki Robakami (Worms) określa się programy podobne do wirusów, które zostały opracowane w celu szybkiego zainfekowania jak największej liczby komputerów. Ich masowa reprodukcja powoduje ogromny ruch w sieci - w symulacjach teoretycznego robaka o nazwie Warhol Worm stwierdzono, że w ciągu kwadransa jest możliwe zarażenie nawet 9 000 000 komputerów.
Konie trojańskie (trojany) Konie trojańskie - po zainfekowaniu systemu nie czynią w nim żadnych zniszczeń tylko oczekują na polecenia z zewnątrz; ich kod zawarty jest w dwóch plikach: w jednym jest kod "wirusa", który jest instalowany na komputerze ofiary, w drugim pliku jest kod "sterownika" za pomocą, którego można sterować trojanem na komputerze ofiary. trojan daje możliwość przejęcia kontroli nad komputerem ofiary.
Dialery Dialery nie są wirusami; są to programiki, które zmieniają ustawienia sieciowe komputera wyposażonego w modem; dialer dokonuje zmiany numeru telefonu, za pomocą którego jest realizowany dostęp do Internetu na inny numer. Najczęściej jest to numer telefonu typu 0-700 gdzie opłata za wynosi kilka złotych za minutę; operatorzy tych numerów mają podpisane umowy na dzielenie zysków z operatorami telekomunikacyjnymi, oferują oni najczęściej dostęp do płatnych serwisów pornograficznych; są one instalowane na komputerach w sposób podstępny, przypominający działanie wirusów.
VPN VPN (wirtualne sieci prywatne) - rozszerzenie prywatnej sieci LAN najczęściej chronionej firewallem na wybrane komputery znajdujące się w sieci publicznej. Podczas transmisji dane są szyfrowane, dzięki czemu nawet po ich przechwyceniu przez niepowołane osoby ich odczytanie jest bardzo utrudnione, a czasami prawie nie możliwe (potrzebny odpowiedni klucz). Możliwe jest sprawdzanie tożsamości zdalnego użytkownika poprzez uwierzytelnianie kryptograficzne. Dane są enkapsulowane w pakietach IP, co pozwala na przeźroczyste przenoszenie danych transmitowanych w różnych protokołach.
VPN Trzy podstawowe typy połączeń: klient do klienta, klient do sieci, sieć do sieci. VPN'y powstały głównie jako odpowiedź na potrzebę zapewnienia bezpiecznej transmisji danych pomiędzy użytkownikami znajdującymi się poza firmą (np. w podróży), a siecią firmy. Taniej jest wykorzystywać jako platformę transmisji Internet; połączenie do lokalnego dostawcy Internetu jest znacznie tańsze niż połączenie do siedziby firmy. Okazało się, że budowa bezpiecznych połączeń pomiędzy oddziałami firm za pomocą dedykowanych łączy jest równie kosztowna, więc rozszerzono standardy VPN na potrzeby budowy połączeń typu sieć do sieci.