Geneza Internetu - Notatki -  Informatyka - Część 1, Notatki'z Informatyka. Szczecin University of Technology
Norbert_88
Norbert_8827 February 2013

Geneza Internetu - Notatki - Informatyka - Część 1, Notatki'z Informatyka. Szczecin University of Technology

PDF (1015.6 KB)
24 strony
855Liczba odwiedzin
Opis
Powstanie Internetu , definicja "Języka C", Unixa, historia i działanie TCP/IP, czym są i jak działają poszczególne protokoły, Firewall, SSH.
20punkty
Punkty pobierania niezbędne do pobrania
tego dokumentu
Pobierz dokument
Podgląd3 strony / 24
To jest jedynie podgląd.
Zobacz i pobierz cały dokument.
To jest jedynie podgląd.
Zobacz i pobierz cały dokument.
To jest jedynie podgląd.
Zobacz i pobierz cały dokument.
To jest jedynie podgląd.
Zobacz i pobierz cały dokument.

1

SPIS TREŚCI

SPIS TREŚCI ................................................................................................................... 1 Geneza powstania Internetu .............................................................................................. 2

Czym jest TCP/IP ........................................................................................................ 11 HISTORIA TCP/IP .................................................................................................. 12 JAK DZIAŁA TCP/IP .............................................................................................. 14 PORTY .................................................................................................................... 20 Adresy IP ............................................................... Błąd! Nie zdefiniowano zakładki. Topologie Sieci Komputerowych ........................... Błąd! Nie zdefiniowano zakładki.

Rys historyczny systemu Linux .................................. Błąd! Nie zdefiniowano zakładki. Zasady działania Linuxa jako systemu operacyjnego. . Błąd! Nie zdefiniowano zakładki.

Instalacja Red Hat Linux ................................................ Błąd! Nie zdefiniowano zakładki. Podział dysku na partycje ........................................... Błąd! Nie zdefiniowano zakładki. Podstawowy system zabezpieczeń .............................. Błąd! Nie zdefiniowano zakładki. Parametry jądra systemu ............................................ Błąd! Nie zdefiniowano zakładki. Konfiguracja jądra systemu (Kornel configuration) .... Błąd! Nie zdefiniowano zakładki.

FIREWALL ................................................................... Błąd! Nie zdefiniowano zakładki. Architektury zapór ogniowych ................................... Błąd! Nie zdefiniowano zakładki. Network Adress translation ........................................ Błąd! Nie zdefiniowano zakładki. Wymagania sprzętowe ............................................... Błąd! Nie zdefiniowano zakładki. Kryteria wyboru ......................................................... Błąd! Nie zdefiniowano zakładki. Wady i zalety firewalli ............................................... Błąd! Nie zdefiniowano zakładki.

SSH ............................................................................... Błąd! Nie zdefiniowano zakładki. Instalacja SSH pod Linuxem: ..................................... Błąd! Nie zdefiniowano zakładki. Konfiguracja serwera SSH: ........................................ Błąd! Nie zdefiniowano zakładki. Konfiguracja klienta SSH: .......................................... Błąd! Nie zdefiniowano zakładki.

LINUX I WIRUSY ....................................................... Błąd! Nie zdefiniowano zakładki.

docsity.com

2

Geneza powstania Internetu

Początki: 1962-1969

W obliczu wybuchu wojny atomowej, Siły Powietrzne Stanów Zjednoczonych

obarczyły niewielką grupę naukowców arcytrudnym zadaniem: stworzyć sieć

transmisji danych odporną na atak nuklearny. Wysunięto rewolucyjną koncepcję

sieci bez scentralizowanej kontroli. W wypadku zniszczenia jednego, dziesięciu czy

stu węzłów system wciąż miał działać. Sieć taka, projektowana wyłącznie na

potrzeby wojska, miała przetrwać choćby i apokalipsę - nawet gdyby nie udało się to

ludziom. Nazwisko Paula Barana już zawsze kojarzone będzie z początkami

Internetu. W 1962 roku pracował on w Rand Corporation, firmie której zlecono

opracowanie koncepcji niezniszczalnej sieci. Pomysłem Barana była sieć, w której

każdy komputer mógł komunikować się z dowolnym innym. Wtedy stanowiło to

ideę rewolucyjną, zdającą się przeczyć zdrowemu rozsądkowi. Baran wiedział

jednak dobrze, że sieci scentralizowane nie miały szans na przetrwanie ataku. W

swojej słynnej publikacji „O komunikacji rozproszonej: I. Wprowadzenie do sieci

rozproszonych” (tyt. org. On Distributed Communications: I. Introduction to

Distributed Communications Network) pisze:

„Bez wątpienia sieci scentralizowane są podatne na ataki, ponieważ zniszczenie

jednego, centralnego węzła oznacza koniec komunikacji pomiędzy stacjami

końcowymi”1

Baran miał na myśli sposób, w jaki budowana była większość sieci w tamtych

czasach. Opierały się one na potężnych maszynach zawierających scentralizowane

informacje, tzw. Mainframe. Z czasem komputery typu mainframe określa się

mianem „duży komputer’, „wielki system’, „komputer” - w odróżnieniu od

mikrokomputera - czy nawet „superkomputer’; obecne odpowiedniki tej nazwy to

„serwery przedsiębiorstw”, „serwery korporacyjne’, itp.) Użytkownicy mieli dostęp

do informacji poprzez terminale (urządzenia z klawiaturą, monitorem i minimalnym

oprogramowaniem) podłączone bezpośrednio do komputera głównego. Dane

wędrowały kablem z terminala do komputera centralnego, który z kolei kierował je

do innych terminali. Sieć scentralizowana działała wydajnie, ale bezpieczeństwo

1 http://www.rand.org/publications/electronic

docsity.com

3

takiej konstrukcji było żałosne. Terminale nie mogły porozumiewać się

bezpośrednio ze sobą, dlatego w przypadku uszkodzenia komputera centralnego

przestawała pracować cała sieć.Baran miał na to proste rozwiązanie: zaprojektować

taką sieć, w której każda jednostka będzie mogła porozumieć się z każdą inną. W

założeniach przypominała to pod wieloma względami sieć telefoniczną. Autor

pomysłu tłumaczył:„W praktyce sieci telekomunikacyjne składają się z elementów

sieci kratowej i sieci gwiaździstej. Twór taki nazywany jest czasem siecią

zdecentralizowaną, ponieważ nie zawsze odpowiedzialność za działanie sieci oparta

jest na jednym tylko punkcie”2

Propozycja Barana była dobrze obmyślona - opracował on nawet sposób trasowania

danych routingu - czyli funkcji odpowiedzialnej za dostarczenie danych do adresata.

Wynalazł system, w którym dane określały swoją własną trasę dynamicznie - w

przypadku napotkania na przeszkodę znajdowały inną drogę dotarcia do celu.

System ten opierał się na określonych zasadach. Na przykład węzeł sieci (jeden z

komputerów biorących udział w przesyłaniu danych) przyjmował porcję danych

tylko wtedy, gdy miał wystarczająco dużo miejsca na ich przechowanie. Jeśli

wszystkie możliwe połączenia były zajęte, dane oczekiwały na zwolnienie którejś z

marszrut (path - ścieżek, po których poruszają się dane w sieci}. W ten sposób

powstawał inteligentny system wymiany informacji. Baran szczegółowo opracował

również inne aspekty sieci, a w tym:

 system priorytetów (oraz sposoby na uniknięcie przeciążenia sieci)

 sprzęt

Niestety, idee Barana wybiegały zbyt daleko w przyszłość. W Pentagonie nie ufano

tak radykalnym koncepcjom i oficjale w Departamencie Obrony natychmiast

odłożyli jedenastotomowy raport Barana na półkę. Dopiero jakiś czas później

okazało się, że krótkowzroczność Pentagonu opóźniła narodziny Internetu. Do

pomysłu powrócono w 1965 roku zorganizowano fundusze i w 1969 roku istnienie

zdecentralizowanej sieci komputerowej stało się faktem. System nazwano

ARPANET.

2 Autor nieznany: Pierwszy profesjonalny podręcznik hakera, Wydawnictwo Robomatic, Wrocław 1998, s. 28

docsity.com

4

W rozumieniu współczesnych technologii sieciowych ARPANET był siecią o dość

nieskomplikowanej konstrukcji. Składał się z połączonych komputerów czterech

uniwersytetów (Instytut Badań w Stanford, Uniwersytet w Utah Uniwersytet

Kalifornijski w Los Angeles oraz Uniwersytet w Santa Barbara). Jedną z tych

maszyn był DEC PDP-10. Niegdyś potęgi wśród maszyn liczących, dziś komputery

te posłużyć mogą co najwyżej jako wątpliwe ozdoby.

W każdym razie ARPANET zaczynał skromnie: cztery komputery połączone

dzierżawioną linią telefoniczną. W tamtym czasie wydawało się to niesamowitym

osiągnięciem, jednakże euforia towarzysząca powstaniu ARPANET-u szybko

ucichła gdy inżynierowie zdali sobie sprawę z kilku poważnych problemów. Jednym

z nich był brak systemu operacyjnego odpowiedniego dla ogromnej sieci Barana.

Główną rolę miał teraz odegrać przypadek. W innej części Stanów Zjednoczonych

naukowcy opracowywali właśnie tajemniczy system operacyjny. System ten - który

ujrzał światło dzienne wraz z APRANET-em miał na zawsze zmienić świat.

Nazywał się UNIX. W roku 1969, tym samym, w którym powstał ARPANET.

Człowiek o nazwisku Ken Thompson (wraz z Dennisem Ritchie i Josephem

Ossanna) z firmy Bell Labs opracowują pierwszą wersję UNIX-a. Autorskie opro-

gramowanie Thompsona instalowane jest na maszynie DEC (Digital Equipment

Corporation) PDP-7.

UNIX Thompsona nie przypominał współczesnych UNIX-ów, które między innymi

są systemami wielodostępnymi - jednocześnie na tym samym komputerze może

pracować wielu użytkowników. Prototyp Thompsona był systemem

jednostanowiskowym, w dodatku zupełnie „nagim”. Przybliżę może, co rozumiem

pod pojęciem „nagi’.

System operacyjny kojarzymy z programem, który zawiera podstawowe narzędzia,

edytory tekstów, pliki pomocy, interfejs okienkowy, narzędzia sieciowe i tak dalej.

Przyzwyczajeni jesteśmy do środowiska rozbudowanego i przyjaznego

użytkownikowi. Pierwszy, „nagi” UNIX zawierał wyłącznie te narzędzia, których

istnienie konieczne było do poprawnego funkcjonowania. Thompson w ogóle nie

myślał o żadnych innych udogodnieniach. Miał na głowie nieco inny problem - jak

w ogóle swój system uruchomić!

docsity.com

5

Gdy pierwszy UNIX wreszcie wystartował, narodziły się nowe problemy. Po

pierwsze, język programowania, w którym pracowali twórcy systemu nie bardzo

nadawał się do takich zastosowań. I znów przypadek odegrał dużą rolę: mniej więcej

w tym samym czasie inni naukowcy w Bell Labs (Dennis Ritchie i Brian Kernighan)

opracowali nowy język programowania o nazwie C.

Język C

Z języka C często korzysta się do pisania kompilatorów i systemów operacyjnych.

„Dziś niemal wszystkie aplikacje wspomagające komunikację poprzez Internet

napisane są w języku C. Zarówno system operacyjny UNIX, na którym oparta jest

podstawowa struktura Internetu, jak i protokól TCP/IP sterujący wymianą danych

zostaly napisane w języku C. Gdyby nie C, nie istniałby Internet w takiej postaci, w

jakiej go teraz znamy”3

Popularność języka C wynika z kilku faktów: · ma niewielkie wymagania i jest wydajny

 kod C może być bez trudu kompilowany na różnych systemach operacyjnych

 można się go szybko i łatwo nauczyć

Naukowcy Bell Labs byli świadomi tylko pierwszego z tych faktów, gdy

podejmowali decyzję o przepisaniu kodu systemu w C. Wspólnie z Ritchiem,

Thompson przeniósł UNIX-a na komputer DEC PDP-11/20. Od tamtego czasu

rozpoczął się właściwy rozwój systemu. W latach 1970-1973 w języku C został

przepisany cały kod. Pozwoliło to przy okazji na wyeliminowanie wielu błędów

istniejących w oryginalnej wersji systemu.

Lata kształtowania się Internetu: 1972-1975

W latach 1972-1975 poczyniono postępy w innych dziedzinach. Ich analiza pozwala

zrozumieć, dlaczego to właśnie UNIX został wybrany jako system operacyjny

Internetu.

3 Autor nieznany: Pierwszy . . . , op. cit. , s. 30

docsity.com

6

W roku 1972 ARPANET składał się z około 40 hostów (tak potocznie nazywa się

komputery, na których oparty jest Internet). Dzisiaj niejedna sieć lokalna ma ich

więcej. Właśnie w tym roku Ray Tomlinson, członek Bolt, Beranek, and Newman,

nc.zrewolucjonizował komunikację za pośrednictwem sieci. Stworzył pocztę

elektroniczną.

Prawdopodobnie był to najważniejszy wynalazek dziesięciolecia. Poczta

elektroniczna (e-mail) pozwoliła na prostą, wydają i niedrogą komunikację - co

pozwoliło na wymianę idei i międzystanową współpracę osób pracujących nad

różnymi technologiami. Można było określić wielu odbiorców jednej wiadomości,

prace nad technologiami zaczęły posuwać się szybciej. Od tej pory już na zawsze

sieć zakwitła życiem.

Kolejny kluczowy wynalazek powstał w roku 1974, gdy Vinton Cerf i Robert Khan

opracowali protokół sterowania transmisją w sieci TCP (Transmission Control

Protocol). Protokół wprowadzał nowy sposób przesyłu danych: wysyłane one były

bit po bicie i dopiero na drugim końcu łączone w całość.

TCP jest głównym protokołem używanym w dzisiejszym Internecie. Został

opracowany we wczesnych latach siedemdziesiątych i zintegrowany z dystrybucją

(dystrybucjami nazywamy różne wersje systemu UNIX) BSD ( Berkeley Software

Distribution), stając się standardem internetowym. Dzisiaj niemal wszystkie

komputery połączone z Internetem obsługują którąś z odmian TCP.4W roku 1975

ARPANET był już w pełni funkcjonalną siecią. Najważniejsze zostało zrobione -

rząd amerykański mógł zacząć zbierać plony swoich inwestycji. Kontrolę nad

ARPANET-em przekazano organizacji znanej dzisiaj pod nazwą Biura Systemów

Informacji Obronnej (Defense Information Systems Agency).

Pozostało tylko zdecydować się na oficjalny system operacyjny dla ARPANET-u.

Postawiono na UNIX. Powody tej decyzji były dość złożone; poniżej postaramy się

je przybliżyć:

4 Autor nieznany: Pierwszy . . . op. cit. , s. 30

docsity.com

7

UNIX osiąga pełnoletność

W latach 1974-1980, kod źródłowy systemu UNIX został rozesłany do uniwersytetów

w całym kraju. To zaważyło na jego sukcesie. Środowiska akademickie i naukowe

doceniły system i zaczął on być używany do ćwiczeń naukowych. To miało z kolei

wpłynęło na jego zastosowanie w przedsiębiorstwach:„Uczelnie wychowywały ogromną

liczbę doświadczonych użytkowników komputerowych i programistów systemowych,

którzy wy chodząc z uczelni już znali system UNIX. Można więc było sobie „kupić”

gotowych do pracy informatyków bez konieczności szkolenia ich w jakimś nieznanym

systemie”.5

Dzięki temu, że źródła UNIX-a udostępniano darmowo - system rozwijany był przez

studentów, co wkrótce doprowadziło do przeniesienia go na inne platformy i jeszcze

powiększyło bazę użytkowników.

Ponieważ system operacyjny UNIX jest znany i szeroko dostępny, znanych jest

także więcej błędów w strukturze zabezpieczeń. Stanowi to wyraźny kontrast z

systemami firmowymi (opracowanymi na konkretną platformę lub do konkretnego

zastosowania). Producenci takiego oprogramowania ujawniają kod źródłowy swoich

produktów tylko wybranym osobom, co pozostawia wiele wątpliwości co do

bezpieczeństwa takich systemów.

UNIX zyskiwał coraz większą popularność, a w 1978 roku firma AT&T

postanowiła skomercjalizować system i zażądać opłat licencyjnych za swoją wersję

systemu. Spowodowało to różne reakcje środowisk informatycznych. Najbardziej

zaskakującym posunięciem, mającym na celu zachowanie twórczej niezależności

było stworzenie przez Uniwersytet Kalifornijski w Berkeley własnej wersji UNIX-a.

Dystrybucja Berkeley

okazała się bardzo popularna i wyznaczyła kierunki rozwoju stając się podstawą

wielu dzisiejszych dystrybucji komercyjnych.

Tak więc wybór padł na system UNIX z kilku powodów, m.in: wytyczał kierunki

rozwoju systemów operacyjnych

 był systemem otwartym

5Autor nieznany: Pierwszy . . . , op. cit. , s. 34

docsity.com

8

 każdy miał dostęp do kodu źródłowego

 miał wbudowane potężne narzędzia sieciowe

UNIX rozwija się wraz z Internetem

Kiedy już wybrano UNIX-a na system operacyjny sieci globalnej, kolejne etapy

rozwoju systemu odbijały się na konstrukcji Internetu i od 1975 UNIX i Internet

ewoluowały wspólnie. Skorzystało na tym wielu producentów oprogramowania i

sprzętu wypuszczając własne wersje UNIX-a. Najpopularniejsze z nich wymienione

są poniżej.

 Wersja systemu UNIX Produceet

 SunOS i Solaris Sun Microsystems HP-UX Hewlett Packard

 AIX IBM

 IRIX Silicon Graphics (SGI)

 Digital UNIX Digital Equipment Corporation (DEC)

Wiele z powyższych odmian systemu UNIX przeznaczonych jest do instalacji na

wysokowydajnych maszynach zwanych stacjami roboczymi (ang. workstations).

Różnią się one od komputerów osobistych pod kilkoma względami. Przede

wszystkim zbudowane są z najlepszych dostępnych części, co czyni je dużo

droższymi. Wpływ na cenę ma także fakt, iż stacji roboczych produkuje się

niewiele, podczas gdy komputery osobiste wytwarzane są masowo, a firmy szukają

każdego możliwego sposobu obniżenia kosztów. Dlatego też klient kupujący nową

płytę główną do swojego PC ma dużo większą szansę natrafienia na produkt

wadliwy. Ponadto stacje robocze są zazwyczaj bardziej zaawansowane

technologicznie od komputerów domowych. Przykładowo, już w 1989 roku

standardem w stacjach roboczych były: wbudowana karta dźwiękowa, sieciowa oraz

adapter SCSI (interfejs do podłączania urządzeń zewnętrznych oferujący dużą

przepustowość). Obsługę ISDN dodano tuż po opracowaniu standardu tej usługi.

Jakie aplikacje można uruchomić w systemie UNIX?

W UNIX-ie można uruchomić wiele różnych programów. Są wśród nich

wysokowydajne aplikacje do badań naukowych oraz prac nad sztuczną inteligencją,

docsity.com

9

ale są też programy mniej wyspecjalizowane. Dla platformy tej zaadoptowano także

znane, komercyjne programy w rodzaju Adobe Photoshop, Corel WordPerfect, czy .

inne znane z platformy Windows (dla Linuxa - odmiany UNIX-a przeznaczonej dla

komputerów osobistych - stworzono nawet pakiet bardzo przypominający Microsoft

Office. Nazywa się StarOffice, jest bezpłatny dla użytkowników indywidualnych i w

wersji 5.0 zawiera edytor tekstów pozwalający na zapis w formacie edytora Word,

arkusz kalkulacyjny, narzędzia graficzne, do obsługi poczty oraz tworzenia stron

WWW).

UNIX to po prostu taka platforma, jak każda inna. Działające na nim systemy

okienkowe dostarczane są zazwyczaj z całymi pakietami programów, zawierającymi

m.in.: menedżery plików, edytory tekstowe, programy pocztowe, zegary,

kalendarze, kalkulatory itd. Dostępny jest także bogaty wybór programów

multimedialnych, jak: odgrywarki plików filmowych, odtwarzacze płyt CD audio,

programy do cyfrowej rejestracji dźwięków i obrazów, aplikacje do korzystania z

poczty multimedialnej i wiele innych przydatnych i nieprzydatnych drobiazgów. W

zasadzie każdy program, o jakim jesteśmy w stanie pomyśleć napisano także dla

UNIX-a.

UNIX a bezpieczeństwo internetowe

Zabezpieczenia UNIX-a to złożony temat. Mówi się, że system ten „kłóci się’ sam

ze sobą ponieważ cechy, które czynią go tak atrakcyjną platformą dla serwerów,

jednocześnie sprawiają, iż jest podatny na ataki. Został on zaprojektowany jako w

pełni sieciowy system operacyjny, pozwalający na wykonywanie niemal wszystkich

poleceń zdalnie - na odległym o tysiące kilometrów komputerze można pracować

tak, jakby znajdował się przed nami używając drugiego, połączonego z nim

systemu. Dlatego też standardowo skonfigurowane usługi zdalne UNIX-a będą

akceptowały połączenia z którejkolwiek części świata.

Ponadto UNIX jest systemem otwartym, jego kod źródłowy jest udostępniony

publicznie. Stąd też luki w systemie znajdowane są nie tylko przez

specjalizowanych programistów pracujących nad rozwojem UNIXa, ale także przez

komputerowych przestępców, krakerów i innych tego pokroju ludzi. Tym niemniej

docsity.com

10

jest to także system bardzo dojrzały i przez lata dokonano wielu ulepszeń w jego

zabezpieczeniach. Ulepszenia te,z których wiele wprowadzono już we wczesnych

latach rozwoju systemu, to:6

 szyfrowane hasła

 restrykcyjna kontrola dostępu do plików i katalogów · procedury

uwierzytelniające

 wyszukane funkcje prowadzenia pliku dziennika

UNIX używany jest więc w zastosowaniach wymagających dużego bez-

pieczeństwa. Dostępnych jest wiele narzędzi jeszcze bardziej wzmacniających

zabezpieczenia tego systemu; niejedno z nich można darmowo ściągnąć z

Internetu. Narzędzia takie możemy podzielić na trzy podstawowe grupy:

 narzędzia do kontroli zabezpieczeń

 systemowe programy do obsługi plików dziennika (logów)

 programy wykrywające ingerencję z zewnątrz

Narzędzia do kontroli zabezpieczeń automatycznie wyszukują znane słabe miejsca

systemu i błędy w konfiguracji mogące doprowadzić do naruszenia bezpieczeństwa.

Są zaprojektowane do pracy w środowisku sieciowym, dlatego można ich używać

do kontroli - jeśli zajdzie potrzeba - nawet tysięcy komputerów w sieci. Stanowią

duże ułatwienie, ale stanowią też groźne narzędzie w rękach włamywaczy, którzy

przecież tak samo łatwo mogą wejść w ich posiadanie.

Programy do obsługi plików dziennika (w których rejestrowane są poszczególne

zdarzenia w systemie) wspomagają kontrolę czynności wykonywanych przez

użytkowników oraz przeglądanie komunikatów systemowych. Wszystkie te

zdarzenia rejestrowane są w plikach tekstowych albo automatycznie przekształcane

na format którejś z popularnych baz danych. Programy do obsługi plików dziennika

to podstawowe narzędzie każdego administratora systemu UNIX, a generowane

przez nie pliki mogą stanowić podstawę do wytoczenia sprawy przeciwko

włamywaczowi. Należy jednak pamiętać, że zaawansowane funkcje rejestrujące

6 Tadeusz Kifner :Polityka bezpieczeństwa i ochrony informcacji,Wydawnictwo Helion,Gliwice 1999, str.9

docsity.com

11

powodują szybkie zmniejszanie się ilości miejsca na dyskach i mogą spowodować

ogólny spadek wydajności.

Wreszcie, programy wykrywające ingerencję to w pewnym sensie inteligentny

rodzaj opisanych powyżej programów do obsługi plików dziennika. Różnica polega

na tym, że tym razem dzienniki są analizowane w czasie rzeczywistym i

przeszukiwane pod względem ciągów wskazujących na pojawienie się intruza - po

której to analizie może nastąpić określona reakcja programu.

Czym jest TCP/IP

Mianem TCP/IP określa się dwa protokoły sieciowe(inaczej mówiąc metody

przesyłania danych) używane w internecie. Protokół kontroli transmisji TCP (ang.

Transmission Control Protocol) i protokół internetowy IP (ang.Internet Protocol).7

Protokoły TCP I IP należą do większej grupy tzw suite TCP/IP.W grupie tej

znajdują się protokoły zapewniające przesyłanie danych w obrębie wszystkich usług

dostępnych dla współczesnego internauty,wśród których najważniejsze to :

 Poczta elektroniczna

 Przesyłanie plików (FTP)

 Grupy dyskusyjne(Usenet)

 Word Wide Web (www)

Istnieją dwa rodzaje protokołów TCP/IP:

 Protokoły działające na poziomie sieci

 Protokoły działające na poziomie aplikacji

PROTOKOŁY DZIAŁAJAĄCE NA POZIOMIE SIECI

Protokoły działające na poziomie sieci obsługują niejawny proces przesyłania

danych. Użytkownik nie jest świadomy ich działania. Na przykład protokół IP służy

do przesyłania danych między komputerem użytkownika, a komputerem zdalnym.

7

docsity.com

12

Dzięki protokołowi IP gwarantowane jest , że informacja dotrze do właściwego

komputera.

PROTOKÓŁ DZIAŁAJĄCE NA POZIOMIE APLIKACJI.

Protokoły działające na poziomie aplikacji są natomiast widoczne dla użytkownika.

Przykładowym protokołem działającym na poziomie aplikacji jest protokół

FTP(ang. File Transfer Protocol) – jest on protokołem interaktywnym, czyli

widziany jest efekt jego pracy(widzimy jakie pliki wysyłamy/odbieramy , widzimy

komunikaty o błedach etc. )

HISTORIA TCP/IP

W 1969 roku jeden z organów rządowych do spraw ochrony, Defense Advanced

Research Projects Agency (DARPA) zlecił swoim instytutom badawczym

opracowanie sieci, która przetrwałaby atak nuklearny Związku Radzieckiego i

mogła dalej funkcjonować nawet bez kontroli centrali głównej. Prototypem tego

systemu został ARPANET, oparty w dużej mierze na badaniach prowadzonych w

latach 1962-63.

Pierwotny ARPANET działał dość dobrze, lecz rozbudowa takiej sieci niosła ze

sobą kosztowne metody. Rozpoczęto więc szukania bardziej niezawodnego

standardu, które zakończyły się w połowie lat siedemdziesiątych opracowaniem

protokołu TCP/IP.

TCP/IP miał znaczną przewagę nad innymi protokołami. Miał nieznaczne

wymagania i stosunkowo niski koszt implementacji. W związku z tym szybko

zyskał popularność. Do roku 1983 został zbudowany w dystrybucji UNIX. Wkrótce

też stał się internetowym standardem i tak pozostało do dnia dzisiejszego.8

Obecnie protokół TCP/IP stosowany jest nie tylko w internecie, ale również w

sieciach lokalnych. Protokół TCP/IP ma wiele zalet i oferuje dużo więcej niż inne

protokoły sieciowe. Jedną z takich zalet jest fakt, iż współpracuje z różnorakim

sprzętem i oprogramowaniem i systemami operacyjnymi. Dzięki temu przy pomocy

docsity.com

13

tego protokoły można stworzyć sieć łączącą różne komputery i systemy operacyjne

(np. składające się Maców, Pc-tów, komputerów Sun etc. )Komunikowanie się tych

komputerów będzie się odbywało dzięki protokołowi TCP/IP.

Protokół ten obsługiwany jest przez większość platform, lecz w różnym zakresie.

Prawie wszystkie współczesne systemy operacyjne zawierają w sobie protokół

TCP/IP. Poniżej przedstawię systemu operacyjne, które korzystają z protokołu

TCP/IP:

Platforma Obsługa TCP/IP

UNIX Wbudowana(w większości dystrybucji)

DOS Nie wbudowana. Potrzebny program

Piper/IP

Windows 3. 11 Nie wbudowana. Potrzebny program

TCPMAN

Windows 95 Wbudowana

Windows NT Wbudowana

Macintosh Nie wbudowana. Potrzebny program

MacTCP

OS/2 Wbudowana

AS/400 OS/400 Wbudowana

Źródło: Opracowanie własne

Na platformach , które nie mają wbudowanego protokołu TCP/IP możliwa jest jego

implementacjia dzięki specjalnym programom jak TCPMAN, czy Piper/IP.

8 Serwery sieciowe Linuksa: Przekład z języka angielskiego Jacek Sokulski, Wydawnictwo MIKOM, Warszawa 2000, str.12

docsity.com

14

JAK DZIAŁA TCP/IP

9

Działanie protokołu TCP/IP oparte jest na zasadzie stosu protokołów. Stos ten jest

zbiorem wszystkich protokołów koniecznych do przesyłania danych pomiędzy

dwoma komputerami. Stos ten składa się z pięciu warstw.

9 Novell Education: Novell Technologies, Wydawnictwo Novell Education, USA 2000, str.29

Warstwa fizyczna przyjmuje lub wysyła dane poprzez odpowiednie medium transmicyjne.

W tym miejscu przeprowadzana jest kontrola błędów

Tutaj dodawane są numery IP nadawcy i odbiorcy w celu poprawnego routingu

Po inicjacji transferu przez użytkownika warstwa ta przekazuje żądanie do warstwy transportu.

W warstwie tej dołączany jest nagłówek i całość przekazywana jest do warstwy sieciowej

Warstwa aplikacji

Warstwa transportowa

Warstwa sieciowa

Warstwa łącza danych

Warstwa fizyczna

Serwer

docsity.com

15

Po przejściu porcji danych przez proces pokazany na rysunku dane są wysyłane do

odbiorcy- innego komputera lub sieci, gdzie odbywa się proces odwrotny do

pokazanego na rysunku. Procesom tym towarzyszą złożone procecy kontroli

błędów.

W skład protokołu TCP/IP wchodzą protokoły działające na poziomie sieci.

Protokoły te zaangażowane są w niejawny proces przesyłania danych-pozostają

niewidoczne dla użytkownika, chyba że skorzysta się z tak zwanych snifferów.

Najważniejsze protokoły działające na poziomie sieci to:

 Protokół rozróżniania adresów (ARP)

 Protokół komunikacji sterownia siecią Internet (ICMP)

 Protokół internetowy (IP)

 Protokół kontroli transmisji (TCP)

Protokół rozróżniania adresów (ARP) Protokół rozróżniania adresów ARO (Address Resolution Protocol służy do zamiany

adresów internetowych na adresy fizyczne, zaangażowany jest więc w kluczowy

proces w trasowaniu (routingu) informacji przez łącza internetowe. Dane przed

wysłaniem są dzielone na pakiety (bloki) sformatowane tak, by mogły zostać

przesłane siecią. Pakiety te zawierają numeryczny adres internetowy IP (adres IP to

cztery liczby z zakresu 255 oddzielone kropkami, np. 192.204.1.34) zarówno

komputera wysyłającego, jak i odbierającego. Pozostaje tylko określić adres

sprzętowy komputera docelowego - i tu właśnie wkracza ARP.

Żądanie wysłane przez protokół ARP dostarczane jest do komputera docelowego,

który odpowiada swoim adresem sprzętowym. Ten przechwytywany jest przez

komputer wysyłający i od tej chwili może już się rozpocząć proces wymiany

danych.

W konstrukcji ARP ciekawym elementem jest pamięć podręczna. Aby przybliżyć

sobie to pojęcie, przyjrzyjmy się konstrukcji przeglądarek WWW (np. Netscape

Nawigator, czy Microsoft Internet Explorer): wszystkie one używają pamięci

docsity.com

16

podręcznej. Pamięć podręczna to (w przypadku przeglądarek) miejsce na dysku,

gdzie przechowywane są elementy często odwiedzanych stron WWW (czyli same

strony, przyciski, grafika, itd.) - dzięki temu podczas kolejnych odwiedzin na danej

stronie ściągnięte będą jedynie fragmenty, które uległy zmianie od czasu ostatniej

wizyty, a całkowity czas ładowania będzie dużo krótszy.

Podobnie w pamięci podręcznej protokołu ARP „zapamiętane" są adresy sprzętowe

komputerów i nie ma konieczności ponownego wysyłania zapytania o ten sam adres,

co stanowi oszczędność czasu i zasobów sieciowych.

Łatwo zgadnąć, jakie ryzyko związane jest z pamięcią podręczną w ARP.

Buforowanie (czyli tymczasowe przechowywanie w pamięci podręcznej) adresów -

nie tylko zresztą w ARP - stanowi unikalny rodzaj zagrożenia: korzystając z niego

łatwiej jest włamywaczowi upozorować połączenie z innego komputera podając

jako swój jeden z buforowanych adresów.10

Protokół komunikacyjny sterowania siecią Internet (ICMP) Protokół komunikacyjny sterowania siecią Internat - ICMP (Internet Control

Message Protocol służy do obsługi informacji kontrolnych oraz komunikatów o

błędach przekazywanych pomiędzy dwoma (lub więcej) komputerami w procesie

przesyłania danych. Dzięki niemu o komunikatach tych „wiedzą" wszystkie hosty

biorące udział w połączeniu. Dlatego też ICMP ma zasadnicze znaczenie przy

diagnozowaniu problemów sieciowych. Informacje diagnostyczne dostarczane przez

ten protokół mówią nam:

 kiedy host jest nieczynny

 przeciążeniu bądź awarii bramki

 innych awariach sieci

10 http://info.internet.isi.edu:80/in-notes/rfc/files/rfc826.txt

docsity.com

17

Najbardziej znanym zastosowaniem protokołu ICMP jest narzędzie sieciowe ping.

Program ten służy do sprawdzania czy zdalny komputer działa poprawnie, a także

do pomiaru czasu przesyłania pakietów. Metoda jego działania jest prosta: kiedy

użytkownik „pinguje° zdalny komputer, w kierunku badanego hosta wysyłana jest

seria pakietów, które „odbijane' są do miejsca nadania. Jeśli komputer użytkownika

nie otrzymuje odbitych pakietów, program powiadamia o błędzie, co zazwyczaj

oznacza awarię zdalnego komputera.11

Czytelnikom zainteresowanym szczegółowymi informacjami o protokole ICMP

polecam przestudiowanie dokumentu RFC 792. (http://info.internet.isi.edu:80/in

Protokół internatowy (IP) Protokół internetowy - IP (Internet Protocol należy do warstwy sieciowej i dostarcza

bloki danych wszystkim protokołom w pakiecie TCP/IP. IP stanowi więc serce

całego fascynującego procesu przemieszczania się danych po łączach internetowych.

Aby ten proces zrozumieć, przyjrzyjmy się modelowi datagramu IP.

Jak widać na ilustracji, datagram IP składa się z kilku części. Pierwsza z nich,

naglówek, zawiera rozmaite informacje, w tym adres z którego pakiet jest wysyłany

oraz adres docelowy. Pozostała część datagramu zawiera właściwe dane przesyłane

przez sieć.

Niezwykłą cechą protokołu internetowego jest fakt, że datagramy mogą ulec

fragmentacji podczas podróży - po osiągnięciu miejsca przeznaczenia są ponownie

łączone, nawet jeśli nie przybyły w takiej kolejności, w jakiej zostały wysłane.

11 http://info.internet.isi.edu:80/in-notes/rfc/files/rfc792.txt

docsity.com

18

Różne informacje

nagłówkowe

Adresy IP

pochodzenia

pakietu

Adresy IP

przeznaczenia

pakietu

Dane

12

Wiele rodzajów pakietów posiada określony tzw. „czas życia pakietu”. Czas życia

pakietu jest wartością numeryczną, która nieustannie zmniejsza się i po osiągnięciu

wartości zero powoduje wygaśnięcie pakietu.

Protokół IP polega na dostarczaniu pakietów poprzez Internet. 13

PROTOKÓŁ TRANSMISJI (tcp)

Protokół (TCP) jest jednym z głównych protokołów obsługujących wymianę danych

w Internecie. Odpowiada on za istotne procesy jak transfer plików czy sesje zdalne.

Poza tym protokół (TCP) posiada wbudowaną funkcję zwaną gwarantowanym

przesłaniem danych, co umożliwia aby dane dotarły do odbiorcy w takim samym

stanie w jakim zostały wysłane.

Działanie TCP polega na utworzeniu wirtualnego obwodu pomiędzy komputerem ,

który wysyła i odbiera informacje. Obwód ten ustalany jest poprzez trzyczęściowy

proces zwanym procesem „potwierdzaniem trzyetapowym”.

12 Novell Education: Network Technologies, Wydawnictwo Novell Education, USA 2000, str.58 13 http://info.internet.isi.edu:80/in-notes/rfc/files/rfc760.txt

Kolor szary oznacza nagłówek protokołu IP. Są to informacje wymagane i powiązanie ze sobą adresów nadawcy i odbiorcy w sieci.

Kolor biały oznacza właściwe przesyłanie danych

docsity.com

19

Po ustaleniu obwodu dane mogą się przemieszczać w obu kierunkach co nazywa się

transmisją pełnodupleksową(ang. Full-duplex). W razie wykrycia błędu dany pakiet

wysyłany jest ponownie. Oznacza to , że TCP wyposażony jest w kontrolę błędów.

Komputer wysyłający(klient) wysyła żądanie połączenia, podając port komputera zdalnego(serwera)

Serwer odpowiada potwierdzeniem odbioru oraz ustawia nasze żądanie w kolejce oczekujących na połączenie

Klient również potwierdza odbiór i wirtualny obwód zostaje ustalony

docsity.com

20

PORTY

Na zdalnym komputerze mogą być uruchomione różne programy korzystające z

protokoły TCP/IP. Większość z nich oparta jest na strukturze działania client-

serwer. Każda działająca aplikacja posiada unikalny adres zwany portem. Kiedy do

tego portu zostaje wysłane żądanie połączenia, wtedy dana aplikacja zostaje

uruchomiona. Na większości serwerów działa tysiące portów. Istnieją jednak tzw.

Porty standardowe do których przypisane są dane już aplikacje- chociaż ustawienia

te można zmieniać. Niektóre porty i odpowiadające im aplikacje przedstawiłem w

tabeli.

Usługa lub aplikacja Port

Protokół przesyłania plików (FTP) Port 21 TCP

Telnet Port 23 TCP

Protokół przesyłania poczty

elektronicznej (SMTP)

Port 25 TCP

Gopher Port 70 TCp

Finger Port 79 TCP

Protokół HTTP obsługujący www Port 80 TCP

Źródło: Opracowanie własne

Pokrótce postaram się pokrótce opisać najważniejsze z tych aplikacji i usługi.

TELNET

Najlepszy opis usługi TELNET znajduje się w specyfikacji RFC-854:

„Zadaniem protokołu Telnet jest zapewnienie komunikacji wielozadaniowej,

dwukierunkowej, ośmiobitowej i zorientowanej bajtowo. Umożliwia połączenie ze

sobą urządzenia terminalowego i procesu pozwalającego na jego obsługę”

docsity.com

21

Telnet pozwala nie tylko na logowanie się na zdalnym komputerze , ale również

wykonywanie na nim operacji. Poprzez usługę telnet użytkownik może odczytywać

pocztę elektroniczną, dlatego też jest wciąż bardzo popularną aplikacją.

Telnet uruchaminy jest poleceniem

# telnet nazwa hosta/numer IP

Po uruchomieniu polecenia uruchamiana jest sesja telnetowa. 14

FTP

FTP –protokół przesyłania danych (ang. File Transfer Protocol), jest standardowym

protokołem służącym do przesyłania plików z jednego systemu na drugi. Jego

zadania określono w specyfikacji RFC 0765:

1. Udostępnienie plików(programów bądź danych)

2. umożliwienie niebezpośredniego korzystania z komputerów zdalnych (przy

użyciu programów)

3. ujednolicenie sposobów korzystania z różnych nośników danych na

komputerze zdalnym

4. niezawodne przesyłanie plików

Prace nad metodą przesyłania plików trwały ponad 20 lat. W ciągu tego czasu

protokół FTP zyskał wiele ulepszeń.

Przesyłanie plików przez FTP odbywa się w środowisku client-serwer. Użytkownik

uruchamiając jednego z klientów FTP powoduje wysłanie żądania do serwera

plików , zazwyczasj do portu 21.

FTPD

FTPD jest standardowym demonem serwera FTP. Jego zadaniem jest odpowiadanie

na żądania połączenia clienta FTP. Demon ten znajduje się w większości dystrybucji

systemów UNIX.

14 Opracowanie własne

docsity.com

22

FTPD oczekuje na żądanie połączenia. Po jego otrzymaniu pyta się o login i hasło.

Istnieje również możliwość zalogowania się anonimowo (anonymous login)-jeśli

serwer dopuszcza taką możliwość. 15

Protokół przesyłania poczty elektronicznej (SMTP)

Zadania protokołu przesyłania poczty elektronicznej (SMTP-Simple Mail Transfer

Protocol) najzwięźlej opisuje specyfikacja RFC 821::

„Protokół przesyłania poczty elektronicznej SMTP służy do wydajnego i

niezawodnego przesyłania poczty elektronicznej (e-mail)”

Protokół SMTP w bardzo małym stopniu wykorzystuje zasoby systemowe.

Użytkownik, korzystając z dowolnego klienta SMTP, przekazuje żądanie do serwera

SMTP. Następnie uruchamiane jest dwukierunkowe połączenie. Klient wysyła

komendę MAIL oznaczającą, że chce wysłać wiadomość. Jeśli SMTP pozwala na

wykonanie takiej operacji, wysyła potwierdzenie. Sesja zostaje rozpoczęta. Klient

może już wysłać nazwę odbiorcy, jego adres IP oraz samą wiadomość (tekstową).

Pomimo tak prostej zasady działania protokołu, usługi pocztowe to źródło

niezliczonych luk w bezpieczeństwie. Przyczyną tego może być m.in. duża liczba

dostępnych opcji - częstym powodem powstawania luk jest zła konfiguracja SMTP.

Protokół przesyłania hipertekstu (HTTP) Protokół przesyłania hipertekstu (H'TTP Hypertext TransferProtocol jest chyba

najbardziej rozpowszechnionym z protokołów. To właśnie dzięki niemu możemy

„surfować" po sieci WWW. Według dokumentu RFC 1945, HTTP to:

szybki i niewymagający protokół poziomu aplikacji obsługujący rozproszone

systemy informacji połiczonych hiperłączami. jest zorientowany obiektowo i ma

wiele zastosowań - m.in. w serwerach nazw, systemach rozproszonych - dzięki

rozszerzonym funkcjom wysyłanie żądań.

15 Opracowanie własne

docsity.com

23

Nowsza specyfikacja protokołu HTTP, RFC 2068 dostępna jest pod adre-

sem: http://finfo.internet.isi.edu:80/in-notes/rfc/files/rfc2068.txt.

Protokół ten na zawsze zmienił oblicze Internetu. Udostępnił go przeciętnemu

człowiekowi. HTTP przypomina nieco usługę Gopher. Jego działanie także oparte

jest na wymianie żądań i odpowiedzi. To istotna cecha: Gopher i HTTP nie

wymagają, tak jak Telnet, logowania - po którym w ciągu całej sesji

wykorzystywane są zasoby systemowe. W HTTP klient korzysta z tych zasobów

tylko wtedy, kiedy wysyła żądanie bądź otrzymuje dane.

Proces ten możemy zaobserwować podczas korzystania z którejś ze znanych

przeglądarek WWW - Netscape Nawigator czy Internet Explorer. Przy ściąganiu

każdego z elementów strony (tekstu, grafiki, dźwięku), przeglądarka jeden raz

skontaktuje się z serwerem. Przyjrzyjmy się informacjom wyświetlanym na pasku

stanu w lewym dolnym rogu. Widać tam dokładnie, kiedy przeglądarka łączy się z

serwerem, otrzymuje odpowiedź, ściąga dane.

Nie ma specjalnego znaczenia, jakie dane ściągamy. Na stronach WWW autorzy

umieszczają najrozmaitsze pliki multimedialne. W tabeli 4.7 wymienione zostały

najpopularniejsze programy do obsługi HTTP.

Protokół przesyłania wiadomości w sieci USENET (NNTP)

Protokół przesyłania wiadomości w sieci USENET (NNTP - Network News Transfer

Protocol to jeden z częściej używanych protokołów. Dzięki niemu uzyskujemy

wygodny dostęp do grup dyskusyjnych, czyli ogólnie mówiąc USENET-u.

Założenia protokołu określono w RFC 977:

NNTP słupy do dystrybucji, ścigania oraz wysyłania artykułów news transmisją

strumieniową. Artykuły przechowywane są w centralnej bazie danych. NNTP

pozwala wybierać tylko interesujące nas tematy. System pozwala na

indeksowanie, budowę odsylaczyorazkasowanie wygasłych wiadomości.

NNTP zawiera zarówno elementy protokołu SMTP jak i TCP. Z tym pierwszym

wiąże go możliwość wydawania poleceń w trybie tekstowym, zaś z drugim

transmisja strumieniowa. Grupy dyskusyjne USENET-u - miejsca w Internecie

poświęcone wymianie zdań na różne tematy - skupiają wokół siebie wiele osób,

docsity.com

24

także w Polsce. Tematy obejmują w zasadzie każdą dziedzinę życia: od typowo

komputerowych, np. pl.comp.security czy też pl. comp.os. linux, aż po zupełnie nie

związane z informatyką, jak np. pl. rec.zwierzaki, a nawet pl.hum.poezja.

docsity.com

komentarze (0)
Brak komentarzy
Bądź autorem pierwszego komentarza!
To jest jedynie podgląd.
Zobacz i pobierz cały dokument.
Docsity is not optimized for the browser you're using. In order to have a better experience we suggest you to use Internet Explorer 9+, Chrome, Firefox or Safari! Download Google Chrome