Prezentacja programu PowerPoint

Download Report

Transcript Prezentacja programu PowerPoint

Informatyka M1T1 sem.2
Wykład 3
Bezpieczeństwo sieci
Linux
HTML
Bezpieczeństwo w sieci
Zagrożenia:
- dostęp do przechowywanych danych (odtajnienie,
podmiana-fałszerstwo, utrata)
- dostęp do transmitowanych danych – odtajnienie,
podszycie
Wykorzystywane przez hackerów
- wady protokołu TCP/IP i innych
- błędy systemu – oprogramowania
- zaniechania administratora
Phishing – podszywanie się pod inną osobę lub instytucję, w celu
wyłudzenia informacji (np. haseł, szczegółów karty kredytowej)
Sniffing (podsłuch transmisji danych) np. sesje TELNET czy FTP,
można przechwycić hasło wymagane przy logowaniu
Spoofing - podszywanie się pod inny składnik sieci, np. fałszowanie
nagłówka strony internetowej lub nadawcy maila
Cracking - łamanie haseł metodą słownikową (czyli bardzo dużo
prób) - "brut force"
Hijacking (przechwytywanie zdalnej sesji legalnego użytkownika
systemu), Keyloger - program przechwytujący wszelkie kombinacje
znaków wprowadzonych z klawiatury (np. kawiarenki internetowe)
Metody przeciwdziałania
Skuteczne metody autoryzacji (autentykacji) – silne
hasła, autentykacja wielopoziomowa (np.. hasła główne
i dodatkowe, karta magnetyczna i PIN)
Firewalle – ściany ogniowe –
oprogramowanie blokujące niechciane programy,
niepożądane operacje, niebezpieczne porty transmisyjne.
Dobre oprogramowanie antywirusowe
Szyfrowanie przesyłanych danych – kryptografia (np.
szyfrowanie asymetryczne RSA, certyfikaty, podpis
elektroniczny), protokół SSL – strony https (banki!)
Ręczne urządzenia uwierzytelniające
Uwierzytelnianie silne: uwierzytelnianie oparte na tym, co
użytkownik posiada, a nie na tym co wie (lub nie wyłącznie na
tym).
Ręczne urządzenia uwierzytelniające (ang. Handhold
Authentication Devices): przenośne urządzenia (zwykle formatu
karty kredytowej), które maja możliwość lokalnego
przechowywania i przetwarzania informacji.
Stosują one rozmaite techniki wytwarzania unikalnych haseł
jednorazowych
Zaliczamy tu:
 tokeny
 karty kodów jednorazowych
 karty chipowe
 karty magnetyczne
Prawdopodobieństwo złamania systemu
zabezpieczonego jedynie hasłem jest znacznie
większe niż prawdopodobieństwo złamania
systemu opartego na tokenie i haśle.
Zabezpieczenia dostępu, transmisji
(np. e-biznes, bankowość itp.)
•
•
•
•
•
hasła
karty magnetyczne
kody jednorazowe (SMS)
firewall (programowy, sprzętowy)
transmisja szyfrowana (protokół SSL
ze 128-bitową długością klucza) – strony https
• wykorzystanie zaufanej trzeciej strony w
transakcjach
• szyfrowanie symetryczne i asymetryczne (klucz
prywatny i publiczny) - podpis cyfrowy
Modele architektury komunikacyjnej
klient-serwer – scentralizowany komputer
świadczący usługi dla innych – rozdzielenie funkcji
komputera żądającego i komputera świadczącego
usługi
P2P (od ang. peer-to-peer – równy z równym) –
model komunikacji bezpośredniej komputerów –
kążdy może pełnić rolę klienta lub serwera
Klient/serwer – asymetryczna architektura
oprogramowania w celu zwiększenia elastyczności, ułatwienia
wprowadzania zmian w każdej z części. Serwer zapewnia
usługi dla klientów, którzy mogą komunikować się z serwerem
wysyłając żądanie (request). Np. serwer pocztowy, serwer
WWW, serwer plików, serwer aplikacji. Z usług jednego
serwera może zazwyczaj korzystać wielu klientów, jeden klient
może korzystać jednocześnie z usług wielu serwerów.
P2P- gwarantuje obydwu stronom równorzędne prawa.
Każdy komputer może jednocześnie pełnić zarówno funkcję
klienta jak i serwera.
Implementacje modelu P2P: jaką są programy do wymiany
plików w Internecie (Napster, eDonkey, eMule – czasem
serwery katalogują pliki do wymiany), także Skype (protokół
UDP), IRC
Uwaga: Ochrona praw autorskich przy wymianie plików
Typy architektury klient/serwer:
• architektura dwuwarstwowa – przetwarzanie i
składowanie danych odbywa się w jednym module
np. przeglądarka klienta (1 warstwa), żąda strony statycznej od
serwera HTTP (2 warstwa)
• architektura trójwarstwowa – przetwarzanie i
składowanie danych następuje w dwóch osobnych
modułach
np. przeglądarka klienta (1 warstwa), żąda od serwera HTTP
(2 warstwa) , a ten współpracuje z bazą danych SQL (3
warstwa) – czyli serwer HTTP jest jednocześnie klientem
serwera SQL
• architektura wielowarstwowa – przetwarzanie,
składowanie i inne operacje na danych odbywają się
w wielu osobnych modułach.
Architektura klient/serwer
Zalety
• wszystkie informacje przechowywane są na
serwerze - bezpieczeństwo danych.
• serwer może decydować kto ma prawo do
odczytywania i zmiany danych.
Wady
• przepustowość (duża liczba klientów)
• awaria serwera odcina wszystkich klientów
PODSTAWOWE SYSTEMY SIECIOWE
Unix system operacyjny napisany w 1969 r. w Bell Labs
Linux – rodzina uniksopodobnych systemów operacyjnych
opartych o jądro systemu Linux.
Linux jest jednym z przykładów wolnego i otwartego
oprogramowania.
Posiada wersje – tzw. dystrybucje: RedHat, Debian,
Ubuntu, Fedora i inne
wielozadaniowość i wieloużytkownikowość
Struktura katalogów hierarchiczna (drzewiasta) jak w Windows
Nie ma literowych oznaczeń dysków (pamięci trwałe mogą być
osobnymi katalogami)
W ścieżce do katalogu oddzielamy katalogi znakiem /
/home/wbmil/kowalski
Nazwy plików i katalogów - nie ma takiej roli
rozszerzeń nazw jak w Windows – ważne duże i małe
litery
Powłoki
Powłoka (ang. shell) jest interfejsem między użytkownikiem a systemem
operacyjnym. Jej podstawową funkcją jest interpretacja i wykonanie poleceń
użytkownika.
• powłoka Bourne'a (sh)
• powłoka Korna (ksh)
• powłoka C (csh)
Języki powłoki
Polecenia
• wpisujemy ręcznie
• albo tworzymy pliki z ciągiem poleceń w osobnych
wierszach, a potem wykonanie pliku
Strumienie – kierowanie wejściem i wyjściem <z
> do
Potoki – polecenie może przekazać dane do innego polecenia
W systemie wielodostępnym potrzebne jest narzędzie,
które zapewnić powinno organizację i ochronę dostępu do
danych.
W Linuksie (UNIX-ie) wyróżniamy trzy rodzaje praw
dostępu do pliku/katalogu:
• prawo czytania (r - read)
• prawo pisania (w - write)
• prawo wykonywania (x - execute)
Powyższe prawa w stosunku każdego pliku (katalogu) są
niezależnie nadawane w trzech kategoriach:
• prawa właściciela pliku
• prawa użytkowników należących do określonej grupy
• prawa pozostałych użytkowników
Każdy plik (katalog) ma swojego właściciela
indywidualnego (najczęściej jest to użytkownik, który
utworzył plik) oraz właściciela zbiorowego (grupę).
Właściciel pliku jest automatycznie członkiem grupy
(czasami jest to grupa jednoosobowa).
Pozostałym użytkownikom, również mogą być przypisane
określone prawa do danego pliku.
Wyjątkowym użytkownikiem jest root, który posiada
wszystkie prawa dostępu do każdego pliku - może je
zawsze zmienić, nawet gdy nie jest właścicielem pliku.
W odniesieniu do konkretnego pliku(katalogu) określony
użytkownik może posiadać dane prawo dostępu lub też nie.
Posiadanie prawa dla pliku:
* czytania - umożliwia otwieranie pliku i przeglądanie jego
zawartości
* pisania - umożliwia otwieranie pliku i modyfikację jego
zawartości
* wykonywania - umożliwia wykonywanie programu (jeżeli
jest to plik binarny) lub skryptu powłoki
Dla katalogu:
* prawo czytania umożliwia listowanie zawartości
katalogu,
* prawo wykonywania daje dostęp do zawartości
katalogu
Programy do zdalnej pracy na odległym
komputerze: telnet, putty
ekran po zalogowaniu
polecenie:
ls –l
informacja o
zawartości katalogu
Login: LOGIN
Password: HASŁO
ewa% tu piszemy polecenia
zgłoszenie
powłoki
prawa
dostępu
właściciel
i grupa
rozmiar
- bajty
data
nazwa
pliku
lub
foldera
Polecenia systemowe
Składnia:
polecenie [–opcje] [obiekty]
co ma robić
w jaki sposób
czym się
zajmuje
[ ] opcjonalne – nie zawsze wymagane
Podstawowe polecenia
pwd - podaj nazwę katalogu bieżącego
ls
- wypisanie spisu elementów w katalogu
bieżącym
ls ścieżka
ls –l
- zawartość katalogu wg ścieżki
- zawartość z opcją dokładnych danych
polecenie
właściciel
grupa rozmiar
nazwa
% ls -l
--rw-r--r--
1
tbajorek wbmil 12
Oct 16 00:57
2.t.nowy
d-wxr-xr-x
2
tbajorek wbmil 4096
Mar 14 22:41
pliki
-rw-r--r--
1
tbajorek wbmil 7
Jan 7 20:31
b.t
-rw-------
1
tbajorek wbmil 302
Dec 17 2007
dead.letter
d katalog
prawa
-
plik
cd - zmiana katalogu bieżącego
cd kat1
do podrzędnego o nazwie
cd ..
do nadrzędnego
cd
do domowego
cd /
do głównego
mkdir - tworzenie katalogu
tworzy katalog podrzędny
mkdir nazwa
rmdir – usuniecie katalogu (pustego)
usuwa podrzędny
rmdir nazwa
rm – usunięcie plików lub katalogu niepustego (rm –r)
rm plik lub wzorzec
rm *.*
-wszystkie w katalogu
rm a*
-rozpoczynające się od litery a
rm –r katalog
-usunięcie katalogu niepustego
mv – zmiana nazwy lub przeniesienie
mv stara_nazwa nowa_nazwa
cp – kopiowanie
cp plik(lub wzorzec) cel
cp plik ..
do nadrzędnego
cp plik ../nowa_nazwa
zmiana nazwy kopii
cp * nowy
do podrzędnego
wzorzec zawiera: * - dowolny ciąg znaków ? – 1 znak
ważne czy pliki (-i) są w katalogu bieżącym
jeśli nie to podajemy jego położenie
- ścieżka bezwzględna (od kat. głównego) /kat1/kat2/plik
- ścieżka względna, np.
../../plik
- 2 poziomy wyżej
cat albo touch – tworzenie pliku
Utworzenie pustego pliku
touch plik
Utworzenie nowego pliku z tekstem
cat > nazwa_pliku
(przykład strumienia > do pliku)
treść pliku
^D
CTRL+D (wstawia znak końca pliku)
Wyświetlenie treści pliku ! domyślnie na ekran
cat nazwa_pliku
edycja pliku
EDYTOR VI (vi-aj) trudny!
chmod – ustawianie praw dostępu
chmod u+r plik
chmod g-x
nadanie prawa czytania u=user
odebranie prawa wykonywania g=grupie
u – user (użytkownik)
g – grupa
o – other (inni)
r – prawo czytania
w – prawo zapisu
x – prawo wykonania
Inne polecenia
ps – lista procesów
find – wyszukiwanie plików (ma wiele opcji)
cmp – porównywanie plików
grep – wyszukiwanie plików wg treści
HTML
HTML (ang. HyperText Markup Language, pol.
hipertekstowy język znaczników) – język wykorzystywany
do tworzenia stron internetowych
HTML – kod źródłowy języka, można bezpośrednio
pisać korzystając z edytora tekstu nieformatowanego
(ASCII) np. Notatnik – zapis w pliku z rozszerzeniem
htm lub html
HTML
• zdefiniowanie sposobu wizualnej prezentacji
dokumentu w przeglądarce internetowej,
• osadzanie ciągów instrukcji języków skryptowych,
wpływających na zachowanie przeglądarek lub innych
parserów HTML.
Strony WWW (World Wide Web)
przeglądarki
Mosaic – pierwsza przeglądarka 1993 r
Internet Explorer (95)
Firefox(Mozilla) – wcześniej Netscape Navigator (94)
Opera
Safari
Chrome(Google)
Pierwsza dostępna specyfikacja języka HTML, nazwana HTML
Tags (znaczniki HTML) została opublikowana przez:
Berners'a-Lee 1991r.
Zawiera 22 znaczniki
Wersje późniejsze:
HTML 3.0,
do
HTML 5 – 2008 r. - szkic
próba standaryzacji – usuwanie starych elementów
Dynamiczny HTML lub DHTML (ang. Dynamic
HyperText Markup Language, dynamiczny hipertekstowy
język znaczników)
•
techniki służące do dynamicznej zmiany treści,
wyglądu, zachowania dokumentu HTML
•
umożliwiających interakcję strony www z
użytkownikiem i stosowanie efektów wizualnych
•
określa format dokumentów tekstowych (ASCII)
przechowywanych na serwerze – możemy je
sami tworzyć (np. Notatnikiem) – rozszerzenie
.htm albo .html
Przeglądarki internetowe
1989-90 Berners-Lee – www, protokół http
Mosaic – pierwsza przeglądarka
1994 PHP – Rasmus Lerdorf stworzył zbiór narzędzi do obsługi
swojej strony domowej – mechanizm interpretacji zestawu makr; np.:
książka gości, licznik odwiedzin (PHP – Personal Home Pages) –
włączenie baz danych
INTERAKCJA UŻYTKOWNIKÓW
problemy i wojny przeglądarek- Microsoft, Netscape
Narzędzia "webmasterskie"
MS Word oraz MS FrontPage
Pajączek 3.0 Light
ACE HTML
FREE HTML
Macromedia Dreamweaver
Visual Studio .NET
Znaczniki (tagi)
<znacznik atrybuty> zawartość </znacznik>
STRUKTURA dokumentu HTML
<HTML>
<HEAD>
<TITLE> Tytuł w nagłówku okna </TITLE>
</HEAD>
<BODY>
Tu będą elementy pojawiające się na
stronie
</BODY>
</HTML>
zapisane w pliku tekstowym o rozszerzeniu html (jako
typ UTF8) – duże/małe litery bez znaczenia
Przykładowy znacznik hiperłącza (odnośnika):
<A href="http://www.onet.pl"> Onet </A>
atrybut
znacznik hiperłącza
(otwierający)
znacznik zamykający
zawartość (może być inny znacznik)
Podział znaczników
Strukturalne, np.
P – akapit, TABLE – tabela, IMG - obraz
DIV, SPAN - grupujące
Prezentacyjne, np.
B – pogrubienie
I – italic
Hiperłącza (kotwice)
A
stosowane tylko
dla małych
fragmentów tekstu
Zagnieżdżanie znaczników
<P> Tekst1<B><I> Tekst2 </I> Tekst 3</B></P>
Tekst1
Tekst2
Tekst3
domyślnie elementy wewnętrzne dziedziczą
cechy elementu zewnętrznego
Znaczniki elementów pustych
<TAG />
przykładowo:
<BR /> znacznik zmiany wiersza w akapicie
<IMG /> <INPUT /> <HR/>
można pisać:
lub
<BR> </BR>
<BR/>
lecz zgodnie z XHTML powinno być
<BR />
(ze spacją)
Wybrane znaczniki
<P>
Akapit - znacznik
Przykłady:
<P align="center"> Tytuł </P>
<P align="left"> Tytuł2 </P>
Akapity specjalne – nagłówkowe (zdefiniowane style)
<H1> Nagłówek pierwszy </H1>
<H2> Nagłówek drugi </H2>
<H3> Nagłówek trzeci </H3>
<H4> Nagłówek czwarty</H4>
<H5> Nagłówek piąty</H5>
<H6> Nagłówek szósty</H6>
Linie poziome:
<HR style="opis stylu"/>
Kolory
white aqua silver gray blue
fuchsia lime red teal olive yellow maroon navy
Oprócz nazw angielskich można podawać poprzedzone
znakiem # 3 dwupozycyjne liczby w układzie szesnastkowym
(cyfry 0123456789ABCDEF), określające nasycenie
składowych RGB (red, green, blue)
od 00 (minimum) do FF (maksimum = 25510)
np.
#17AACF
R G B
czyli np. #00FF00 to zielony
Style czcionki
<B> </B>
pogrubiona
<I> </I>
kursywa
<U> </U>
podkreślona
<FONT size= "6"> <FONT> rozmiar
ale tak się już pisze rzadko – lepiej jest stosować atrybut style dla
poszczególnych znaczników
Kolor tła strony
można tak:
<BODY BGCOLOR="red">
ale lepiej
<BODY style="background-color: red">
atrybut style = suma cech – zastąpił stare atrybuty
Tabele
<TABLE>
</TABLE>
<TR> znacznik wiersza
<TD> znacznik kolumny
Przykład:
<TABLE>
<TR> <TD> AA </TD> <TD> AB </TD></TR>
<TR> <TD> BA </TD> <TD> BB </TD> </TR>
<TR> <TD> CA </TD> <TD> CB </TD> </TR>
</TABLE>
Tabela o rozmiarze 3 wiesze x 2 kolumny
Lista wypunktowana <UL>
<UL>
<LI> tekst punktu pierwszego </LI>
<LI> tekst punktu drugiego </LI>
<LI> tekst punktu trzeciego </LI>
</UL>
Lista numerowana <OL>
<OL>
<LI> tekst punktu pierwszego </LI>
<LI> tekst punktu drugiego </LI>
<LI> tekst punktu trzeciego </LI>
</OL>
Grafika
znacznik <IMG SRC=…… /> (bez treści)
lokalizacja grafiki to atrybut SRC
<IMG SRC="ścieżka\plik_graficzny" />
<IMG border="0" src="email_7.gif" width="55" height="45" />
albo poprawniej
<IMG SRC="plik.jpg" style="width:55px;height:45px" />
Odsyłacze (linki, hiperłącza)
Odsyłaczem jest konstrukcja, która wskazuje pewne miejsce w Internecie i pozwala
skoczyć do niego za pomocą kliknięcia na niej myszką. Jej konstrukcję można
przedstawić w postaci:
<A HREF= "adres strony " > Tekst (lub obrazek), który należy kliknąć </A>
Np.
hiperłącze do URL
<A HREF= " http://www.wp.pl" > Wirtualna Polska </A>
hiperłączem jest obrazek
<A HREF="./reklama.htm"> <IMG SRC="reklama.jpg" /> </A>
hiperłącze do klienta poczty
<A HREF=mailto:imię nazwisko@adres> Napisz do autorów tej strony</A>
hiperłącze do nazwanej zakładki
<A HREF="#zakladka1"> Skocz do rozdziału 1</A>
definicja zakładki
<P id="zakladka1">Rozdział 1</P>
lub
<A name="zakladka1"> Rozdział 1</P>
Formularze
<FORM>
<SELECT name="Typy" multiple="multiple">
<OPTION selected="selected">Rock and roll</OPTION>
<OPTION>Jazz</OPTION>
<OPTION>Blues</OPTION>
</SELECT>
<INPUT type="text" name="T1" size="20"/>
<INPUT type="submit" value="OK" name="B1"/>
<INPUT type="reset" value="Reset" name="B2"/>
</FORM>
Bloki grupujące <DIV> i <SPAN>
<DIV> wnętrze </DIV>
<SPAN> wnętrze </SPAN>
Fragment dokumentu wydzielony za pomocą bloku.
DIV z elementami poprzedzającymi i następującymi
wyświetlany jest w pionowo, a SPAN w jednym wierszu.
np:
1<DIV> wnętrze div </DIV>1 <BR />
2<SPAN> wnętrze span</SPAN>2