Course #: Title
Download
Report
Transcript Course #: Title
Serwery WWW
Michał Kuciapski
Uniwersytet Gdański
Wyższa Szkoła Bankowa
Wstęp
Celem wykładu jest przedstawienie tematyki serwerów
WWW wraz z zagadnieniami praktycznymi z zakresu
administrowania popularnymi serwerami WWW,
szczególnie w ujęciu przygotowania jako serwerów
aplikacji internetowych.
W ramach wykładu pokazane zostaną praktyczne aspekty
administrowania serwerami WWW IIS jako serwer
aplikacyjny ASP .NET oraz Apache jako serwer
aplikacji PHP.
Tematyka
Temat 1: Podstawowe zagadnienia sieciowe związane z serwerami
WWW
Temat 2: Podstawowe zagadnienia serwerów WWW
Temat 3: Administrowanie serwerem IIS
Temat 4: Administrowanie serwerem Apache
Temat 5: Wdrożenie dedykowanego serwera WWW
Temat 6: Zintegrowane serwery WWW
Temat 7: Testowanie wydajności serwera WWW
Serwery WWW
Temat 1: Podstawowe zagadnienia sieciowe
związane z serwerami WWW
Tematyka
Podstawowe pojęcia sieci komputerowych
Komunikacja sieciowa - pakiety
Standardy komunikacyjne
Podział sieci komputerowych
TCP / IP
Adresowanie
Porty
Temat 1 - Podstawowe pojęcia sieci komputerowych
Podstawowe pojęcia z zakresu sieci komputerowych
bit – najmniejszą jednostką pomiaru informacji, reprezentuje
wartość 0 lub 1
bajt - zbiór ośmiu bitów
sieć komputerowa – system wzajemnie połączonych
autonomicznych komputerów
host – urządzanie korzystające z sieci (np. ruter, komputer)
architektura klient-serwer:
–
serwer – system wykonujący usługi na rzecz innych
użytkowników
(klientów) sieci; dotyczy programu a nie
komputera
–
klient – host korzystający z usług
Temat 1 - Podstawowe pojęcia sieci komputerowych
Podstawowe pojęcia z zakresu sieci komputerowych
protokół – zbiór reguł i zaleceń dotyczących wymiany danych
pomiędzy dwoma urządzeniami
protokół sieciowy – ustalone zasady porozumiewania się
komputerów w sieci
karta sieciowa – urządzenie łączące hosta z siecią
DTE – Data Terminal Equipment, czyli urządzenia końcowe,
np. komputery, routery
DCE – Data Communication Equipment, czyli urządzenia
pośredniczące w transmisji, np. switche, modemy, huby
Temat 1 - Podstawowe pojęcia sieci komputerowych
Podstawowe pojęcia z zakresu sieci komputerowych
pakiet – porcja informacji przesłana siecią
ruter – urządzenie sterujące ruchem pakietów w sieci
ruting (trasowanie) – wybór drogi przez ruter
transmisja danych - od jednej maszyny do drugiej polega na
przesyłaniu ciągu bitów przez nośniki sieci za pomocą prądu
elektrycznego, fal radiowych lub światła (satelity, mikrofale,
światło laserowe, podczerwień)
Temat 1 - Podstawowe pojęcia sieci komputerowych
Komunikacja sieciowa - pakiety
Komputery przesyłają dane małymi porcjami zwanymi pakietami, które są
wysyłane niezależnie od pozostałych. Działanie sieci komputerowych opiera się na
przesyłaniu pakietów.
System sieciowy pozwalający programowi na wyłączny dostęp do dzielonych
zasobów, blokuje działanie innych komputerów na niedopuszczalnie długi czas.
Plik 10 MB, przesyłanie z prędkością 56000 bitów/s to czas wysyłki ok. 24 minut.
Jeżeli dokonamy podziału na pakiety o rozmiarze 1000 bajtów (8000 bitów) to
pakiet można wysłać w 0,143 s. Tyle wynosi czas oczekiwania przez inny host na
rozpoczęcie wysyłania danych.
Dla koordynacji nadawania i odbierania oraz sprawnego i szybkiego dostępu do
dzielonego zasobu, sieci komputerowe dzielą dane na pakiety. Komputery na
przemian wysyłają pakiety przez dzielone łącze. Każdy pakiet jest a tyle mały, że
żaden komputer nie musi długo czekać na dostęp do łącza.
Każda technologia sieciowa (protokół) definiuje format przesyłanych pakietów
przesyłanych przez sprzęt sieciowy.
Temat 1 - Podstawowe pojęcia sieci komputerowych
Standardy komunikacyjne
Wymagania dotyczące standaryzacji sprzętu komputerowego są publikowane
w dokumentach nazwanych standardami, opracowanymi przez
organizacje, takie jak:
ISO
- International Organization for Standardization,
IEEE - Institute of Electronic and Electronic Engineers Grupa 802
zajmuje się standaryzacją sieci lokalnych
IETF
ITU-T - International Telecommunication Union - Telecommunications
Sector
TIA/EIA - Telecommunications Industry Associations / Electronics Industry
Associations – zajmuje się określaniem norm dotyczących okablowania
- Internet Engineering Task Force - standardy na poziomie TCP/IP
Temat 1 - Podstawowe pojęcia sieci komputerowych
Sieci komputerowe – podział
Sieci rozległe WAN (Wide Area Network) ZSK (zdalne sieci
komputerowe) – łączą sieci lokalne – przykładem jest globalna
sieć Internet
Sieci lokalne LAN (Local Area Network) LSK (lokalne sieci
komputerowe ) – biura, uczelnie, fabryki
Sieci miejskie MAN (Metropolitan Area Network) MSK (miejskie
sieci komputerowe) – do łączenia sieci lokalnych
Sieci personalne PAN (Personal Area Network)
Sieci VPN (Virtual Private Network) WSP (Wirtualne sieci
prywatne) – wirtualne sieci prywatne tworzone w ramach
publicznej architektury
Temat 1 - Podstawowe pojęcia sieci komputerowych
Sieci komputerowe – podział
Temat 1 - Podstawowe pojęcia sieci komputerowych
TCP / IP
TCP / IP – Transmition Control Protocol / Internet Protocol
Nazywany protokołem, tak naprawdę jest stosem protokołów
1975 – przetestowany Stanford and University College
London (UCL)
Marzec 1982 – protokół TCP/IP przyjęty jako standard
komunikacji sieciowej przez Departament Obrony Stanów
Zjednoczonych
01.01.1983 – migracja ARPANET na TCP/IP
Temat 1 - Podstawowe pojęcia sieci komputerowych
TCP / IP - model
Aplikacji
Aplikacji
Transportowa
Transportowa
Sieciowa
Sieciowa
Fizyczna
Temat 1 - Podstawowe pojęcia sieci komputerowych
TCP / IP - warstwy
Application
DNS, TFTP, TLS/SSL, FTP, Gopher, HTTP, IMAP, IRC, NNTP,
POP3, SIP, SMTP, SMPP, SNMP, SSH, Telnet, Echo, RTP, PNRP,
rlogin, ENRP
Routing protocols like BGP and RIP which run over TCP/UDP, may
also be considered part of the Internet Layer.
Transport
TCP, UDP, DCCP, SCTP, IL, RUDP, RSVP
IP (IPv4, IPv6), ICMP, IGMP, and ICMPv6
Internet
Link
OSPF for IPv4 was initially considered IP layer protocol since it
runs per IP-subnet, but has been placed on the Link since RFC
2740
ARP, RARP, OSPF (IPv4/IPv6), IS-IS, NDP
Temat 1 - Podstawowe pojęcia sieci komputerowych
Adresowanie – adresy IPv4 i IPv6
IPv4
Każdy host w sieci ma przypisany adres IP który jest unikalny przynajmniej w
ramach sieci lokalnej
Adres IP składa się z 4 oktetów, z których każdy jest cyfrą z zakresu od 0 do
255
Adresy z puli adresów prywatnych:
–
Klasa A – 10.x.x.x
–
Klasa B – 172.16.x.x – 172.31.x.x
–
Klasa C – 192.168.x.x
Pula adresów dla testowania – 127.0.x.x
IPv6
Rozmiar adresu wynosi 128 bitów (4 x IP4)
8 bloków 16-bitowych
Przykład https://[2001:0db8:85a3:08d3:1319:8a2e:0370:7344]:443
Temat 1 - Podstawowe pojęcia sieci komputerowych
Adresowanie przyjazne
Przypisywane adresom IP przy wykorzystaniu systemu DNS
FQDN – system jednoznacznego identyfikowania hostów w
oparciu o hierarchiczną strukturę DNS – np. wsb.pl
Temat 1 - Podstawowe pojęcia sieci komputerowych
Porty
Umożliwiają wykonywanie wielu zadań „równocześnie”
Są elementem abstrakcyjnym – uchwytem do strumienia
wejściowego i (lub) wyjściowego
Mogą być przydzielone konkretnej usłudze
Każdy port jest identyfikowalny liczbą z zakresu od 1 do 65 535
Zarezerwowane dla znanych usług – 1-1023
Temat 1 - Podstawowe pojęcia sieci komputerowych
Porty
Nazwa
Numer portu
Typ
echo
7
TCP/UDP
daytime
13
TCP/UDP
ftp-data
20
TCP
FTP
21
TCP
Telnet
23
TCP
SMTP
25
TCP
finger
79
TCP
HTTP
80
TCP
POP3
120
TCP
NNTP
119
TCP
SSL
443
TCP
Serwery WWW
Temat 2: Podstawowe zagadnienia serwerów
WWW
Tematyka
Serwer internetowy
Serwer WWW
Serwer aplikacyjny
Aplikacyjny Serwer Webowy
Udział w rynku serwerów aplikacyjnych
Porównanie serwerów WWW
Przeciążenia serwerów WWW
Protokół HTTP/1.1
HTML
Diagnozowanie połączeń z serwerami WWW
Temat 2 - Podstawowe zagadnienia serwerów WWW
Serwer Internetowy (Sieciowy)
Serwer Internetowy jest serwerem z uruchomionymi
specjalistycznymi usługami internetowymi (sieciowymi),
takimi jak:
HTTP – Hypertext Transfer Protocol
FTP – File Transfer Protocol
SMTP – Simple Mail Transfer Protocol
DNS – Domain Name System
DHCP – Dynamic Host Transfer Protocol
Routing
VPN – Virtual Private Network (L2TP, PPP)
Temat 2 - Podstawowe zagadnienia serwerów WWW
Serwer WWW
Serwer WWW wg Wikipedii jest programem działającym
na serwerze internetowym, obsługujący żądania
protokołu HTTP.
Z serwerem WWW łączą się przeglądarki internetowe
dla wczytania wskazanej przez użytkownika strony
internetowej oraz inne aplikacje pobierające dane.
Serwer WWW może pośredniczyć w realizacji innych
usług, przede wszystkim przekazywania wywoływania
aplikacji internetowych, jak PHP.
Temat 2 - Podstawowe zagadnienia serwerów WWW
Historia
1989 – Tim Berners-Lee zaproponował pracodawcy, organizacji
CERN (European Organization for Nuclear Research) projekt
wymiany danych pomiędzy naukowcami jako hypertekstu
1990 – wynikiem projektu zapoczątkowanego w roku 1989 były
dwa programy:
– przeglądarka WorldWideWeb;
– serwer webowy CERN httpd
1994 – powstanie World Wide Web Consortium (W3C)
standaryzowania i rozwijania technologii web-owych (http, html,
xml, …)
Temat 2 - Podstawowe zagadnienia serwerów WWW
Serwer Aplikacyjny
Serwer aplikacyjny to zintegrowane środowisko do
opracowania i osadzania aplikacji, umożliwiające
integrację w sieci takich usług jak:
Uruchamianie aplikacji
Zarządzanie dostępem i uprawieniami
Optymalizacja działania
Pracę w ramach klastrów
Temat 2 - Podstawowe zagadnienia serwerów WWW
Korzyści serwerów Aplikacyjnych
Integracja kodu i danych
Centralizacja konfiguracji
Bezpieczeństwo
Wydajność
Total Cost of Ownership (TCO)
Wspieranie transakcji
Temat 2 - Podstawowe zagadnienia serwerów WWW
Serwer Aplikacyjny
Popularne technologie serwerów aplikacyjnych:
Java:
–
–
.NET Framework
–
COM+
Inne platformy
–
–
–
Apache Geronimo
WebSphere Application Server
Appaserver
Zope
Spring Framework
XML Web Services (SOAP)
Temat 2 - Podstawowe zagadnienia serwerów WWW
Aplikacyjny Serwer Webowy
Aplikacyjny serwer webowy jest
zintegrowanym środowisko do osadzania i
uruchamiania aplikacji webowych.
Do popularnych technologii obsługiwanych przez
aplikacyjne serwery webowe należy zaliczyć:
PHP
ASP
JSP
CGI
Temat 2 - Podstawowe zagadnienia serwerów WWW
Aplikacyjny Serwer Webowy / Serwer WWW
Do popularnych serwerów WWW należy zaliczyć:
Apache - PHP, CGI
IIS - ASP .NET, PHP
Tomcat – JSP, Java Serverlet
Zend platform - PHP
Zintegrowane serwery WWW (obsługa PHP i MySQL):
–
–
–
EasyPHP
WebSrv
Krasnal
Webowe serwery aplikacyjne:
–
–
–
–
–
WebObjects - Apple
Sapphire/Web - Bluestone Software
HatSite - Hat Software Tango – Pervasive
Netscape Application Server
Oracle Application Server
Temat 2 - Podstawowe zagadnienia serwerów WWW
Udział w rynku poszczególnych serwerów WWW –
stan 01.2010, Netcraft survey
Producent
Aplikacja
Ilość
hostowanych
stron (mln)
Udział w rynku
Apache
Apache
111
54%
Microsoft
IIS
50
24%
Igor Sysoev
nginx
16
8%
Google
GWS
15
7%
lighttpd
lighttpd
1
0,46%
Temat 2 - Podstawowe zagadnienia serwerów WWW
Udział w rynku poszczególnych serwerów WWW –
dynamika zmian, Netcraft survey
Temat 2 - Podstawowe zagadnienia serwerów WWW
Porównanie serwerów WWW
http://en.wikipedia.org/wiki/Comparison_of_web_
server_software
Temat 2 - Podstawowe zagadnienia serwerów WWW
Przyczyny przeciążenia serwera
Zbyt mocno obciążona komunikacja sieciowa
względem przepustowości
Zbyt duża ilość połączeń
Ataki DDOS (DDoS)
Robaki, wirusy
Boty
Błędy w oprogramowaniu / sprzętowe
Temat 2 - Podstawowe zagadnienia serwerów WWW
Symptomy przeciążenia serwera
Długi czas obsługi zdarzeń
Błędy http: 500 (Internal Server Error), 502 (Bad
Gateway), 503 (Service Unavailable), 504 (Gateway
Timeout)
Połączenia TCP / IP są odrzucane lub resetowane
Częściowe wyświetlenie zawartości
Temat 2 - Podstawowe zagadnienia serwerów WWW
Zabezpieczanie serwera przed przeciążeniem
Firewalle
Menadżery ruchu HTTP
Cache – stron, obiektów
Różne nazwy domenowe
Stosowanie wielu serwerów WWW (programowo) – różne pracują na
różnych kartach sieciowych (adresach IP)
Stosowanie wielu serwerów WWW (sprzętowo) – Farmy Webowe
Zwiększanie parametrów serwera (RAM, CPU)
Optymalizacja kodu aplikacji webowych
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
URI, URL, URN
URI, czyli Uniform Resource Identifier
URL, czyli Uniform Resource Locator
URN, czyli Uniform Resource Name
Spojrzenie
Klasyczne (URI = [URL lub URN])
Obecne (URI = URL)
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Składnia URI
<scheme>://<authority><path>?<query>
Przykłady typowych schematów
http://localhost:80/index.php?z1=w1&z2=w2
ftp://user:[email protected]:21/dokument.txt
mailto:[email protected]
news://pl.comp.os.linux/
telnet://156.17.4.4/
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Przykład schematu http
http://my.host.pl:8080/index.php?z1=w1&z2=w2
http: – schemat, rodzaj protokołu
//my.host.pl – autoryzacja, nazwa hosta
8080 – nr portu
/index.php – ścieżka do zasobu
z1=w1&z2=w2 – zapytanie
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Metody protokołu HTTP:
GET – pobiera zasoby
HEAD – działa tak samo jak GET, ale zwraca tylko
sam nagłówek bez treści dokumentu
POST – przesłanie danych do serwera
DELETE - żąda, aby serwer usunął zasób
OPTIONS – pozwala klientowi ustalić opcje i/lub
wymagania związane z danym zasobem (np. listę
dostępnych metod)
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Nagłówki ogólnego przeznaczenia:
Cache-Control:
–
żądanie: no-cache|no-store – warunki buforowania
–
odpowiedź: public|private – określa rodzaj cache’a
(wspólny, prywatny)
Connection: keep-alive|close – typ połączenia
Date: HTTP-date – data utworzenia
Pragma: no-cache – informacje dla serwerów
pośredniczących
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Nagłówki klienta:
Accept: typ/podtyp – akceptowane typy danych
Accept-Charset: alfabet – akceptowany zestaw
znaków
Accept-Encoding: compress | gzip | deflate –
metoda kodowania
Accept-Language: język – akceptowany język
Host: nazwa-hosta[:port]
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Nagłówki klienta:
If-Modified-Since: HTTP-date – jeśli dokument
został zmodyfikowany od data
Range: bytes=początek-koniec – wybieramy
fragment dokumentu
Referer: URI – adres URL dokumentu
zawierającego odwołanie do adresu żądanego
dokumentu
User-Agent: nazwa – informacje o kliencie
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Nagłówki serwera:
Accept-Ranges: bytes | none – czy serwer
akceptuje żądania cześci dokumentu
Location: URI – nowy adres zasobu
Retry-After: HTTP-date | delta-miliseconds –
informuje po jakim czasie należy ponownie pobrać
zasób (razem z kodem 5xx lub 3xx)
Server: product – informacje o sofcie po stronie
serwera
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Pola zawartości:
Allow: GET, HEAD – dozwolone metody
Content-Encoding: gzip – rodzaj kodowania
Content-Language: en - język
Content-Length: liczba – wielkość dokumentu
Content-Range: początek-koniec/rozmiar –
pobrano bajty od początek do koniec, a całość ma
rozmiar
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Pola zawartości:
Content-Type: text/html; charset=ISO-8859-2 –
typ zawartości dokumentu
Expires: HTTP-date – moment, po którym
dokument jest już nieaktualny
Last-Modified: HTTP-date – data ostatniej
modyfikacji dokumentu
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Kody odpowiedzi:
1xx – informacyjne, żądanie zostało przyjęte
2xx – pomyślne, żądanie zostały poprawnie
przetworzone
3xx – przeadresowanie, w celu zakończenia
czynności trzeba podjąć dalsze kroki
4xx – błędny URL lub inny błąd występujący po
stronie klienta
5xx – błąd w pracy serwera
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Przykładowa komunikacja
Żądanie:
swiatowit:pawel:~> telnet www.ii.uni.wroc.pl 80
Trying 156.17.4.1...
Connected to swiatowit.ii.uni.wroc.pl.
Escape character is '^]'.
GET /~pawel/index.html HTTP/1.1
Host: www.ii.uni.wroc.pl
Connection: keep-alive
Temat 2 - Podstawowe zagadnienia serwerów WWW
Protokół HTTP/1.1
Przykładowa komunikacja c.d.
I odpowiedź:
HTTP/1.1 200 OK
Date: Sat, 21 Feb 2004 19:34:11 GMT
Server: Apache/1.3.28 (Unix) mod_ssl/2.8.15
OpenSSL/0.9.6h PHP/4.3.4
Last-Modified: Tue, 08 Oct 2002 16:48:55 GMT
ETag: "bc6b-339-3da30c77"
Accept-Ranges: bytes
Content-Length: 825
Keep-Alive: timeout=15, max=100
Connection: Keep-Alive
Content-Type: text/html
<!-- Treść dokumentu -->
Temat 2 - Podstawowe zagadnienia serwerów WWW
HTML
Typy dokumentów HTML
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<!DOCTYPE HTML PUBLIC
"-//W3C//DTD HTML 4.01 Frameset//EN"
"http://www.w3.org/TR/html4/frameset.dtd">
Temat 2 - Podstawowe zagadnienia serwerów WWW
HTML
Struktura dokumentu
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<HTML>
<HEAD>
<!–- Nagłówek dokumentu -->
</HEAD>
<BODY>
<!-- Treść dokumentu -->
</BODY>
</HTML>
Temat 2 - Podstawowe zagadnienia serwerów WWW
HTML
Nagłówek, czyli znacznik HEAD:
TITLE – tytuł dokumentu wyświetlany w pasku
przyglądarki
META – metainformacje
LINK – wzajemne relacje między dokumentami
BASE – adres bazowy dla relatywnych odwołań ze
strony
Temat 2 - Podstawowe zagadnienia serwerów WWW
HTML
Nagłówek, META
name, content – atrybuty zawierające dodatkowe
informacje o dokumencie
http-equiv, content – atrybuty zawierające nagłówki
serwera protokołu HTTP
lang – określa język wartości atrybutu content
scheme – określa dodatkowy kontekst, który ułatwia
interpretację zawartości content
Temat 2 - Podstawowe zagadnienia serwerów WWW
HTML
Nagłówek, META, przykłady
<META name="Author" content="Paweł Rajba">
<META name="Keywords"
content="Rajba,Paweł,java,jsp">
<META name="Description" content="Strona domowa">
<META name="Generator" content="Dreamweaver MX
2004">
<META name="Revisit-After" content="14 days">
<META name="Robots" content="">
Ogólna składnia content dla Robots
content = "ALL" | "NONE" | directives
directives = directive ["," directives]
direcitve = INDEX,NOINDEX,FOLLOW,NOFOLLOW
Temat 2 - Podstawowe zagadnienia serwerów WWW
Narzędzia diagnostyczne stosowane do
testowania połączeń internetowych
Dokument RFC1147 (Request for Comments): Tools for Monitoring and
Debugging PCP/IP Internets and Interconnected Devices przedstawia
narzędzia służące do monitorowania i diagnozowania połączeń w sieci
Internet. Należą do nich:
•
•
•
•
ping - wskazuje czy można połączyć się ze zdalnym komputerem, ping
wyświetla także statystyki na temat zagubionych i dostarczonych pakietów
kontrolnych,
nslookup - narzędzie przekazujące informacje na temat serwisu nazw
(DNS),
dig - udostępnia także informacje na temat serwisu nazw, jest funkcjonalnie
podobny do nslookup,
traceroute - wskazuje drogę przesyłania pakietów od Twojego komputera do
komputera zdalnego, wyświetla informacje na temat każdego pośredniego
rutera.
Temat 2 - Podstawowe zagadnienia serwerów WWW
Polecenie ping
Gdy użytkownik wywołuje program ping, musi podać argument
określający nazwę względnie adres numeryczny (IP) odległego
komputera, np.:
ping zsk.p.lodz.pl
Ping wysyła komunikat ICMP (internet Control Message Protocol)
prośba o echo/odpowiedź z echem. Podstawowa składnia komendy
ping jest następująca:
ping komputer [rozmiar pakietu][licznik]
–
komputer - nazwa lub adres IP testowanego komputera,
–
rozmiar pakietu - określa w bajtach rozmiar pakietów testowych, pole to
wykorzystywane jest tylko w połączeniu z polem licznik, domyślny rozmiar
pakietu to 56 bajtów,
–
licznik - liczba pakietów, która ma być wysłana w teście.
Temat 2 - Podstawowe zagadnienia serwerów WWW
Polecenie ping
Kluczowymi statystykami są:
kolejność nadchodzenia wysłanych pakietów,
wyświetlana jako sekwencyjny numer ICMP
(icmp_seq) dla każdego pakietu,
czas drogi pakietu tam i z powrotem wyświetlany
w milisekundach po napisie time=,
procent utraconych pakietów, wyświetlany w
podsumowaniu na końcu wydruku polecenia ping.
Temat 2 - Podstawowe zagadnienia serwerów WWW
Polecenie ping - przykłady
Temat 2 - Podstawowe zagadnienia serwerów WWW
Traceroute
Program traceroute umożliwia określenie komputerów pośredniczących (ruterów) na trasie do
odległego odbiorcy. Należy podać argument, który określa adres lub nazwę odległego
komputera.
Traceroute śledzi drogi pakietów UDP (User Datagram Protocol) z komputera lokalnego do
komputera zdalnego i drukuje nazwy i adresy IP wszystkich ruterów znajdujących się na drodze
do komputera zdalnego.
Do śledzena pakietów wykorzystuje dwie techniki: małe wartości ttl (time-to-live) i błędny numer
portu. Program wysyła ciąg datagramów i czeka na odpowiedzi dotyczące każdego z nich.
Czas życia pierwszego datagramu jest ustalony na 1. Pierwszy ruter otrzymując ten datagram
zmniejsza wartość ttl, porzuca datagram i wysyła do nadawcy komunikat ICMP o przekroczeniu
terminu. Komunikaty ICMP wędrują w datagramach IP, zatem program traceroute zna adres IP
nadawcy komunikatu i podaje go jako adres pierwszego na trasie.
Następnie traceroute wysyła komunikaty z ttl=2. Pierwszy ruter zmniejsza wartość ttl o 1 i
przekazuje go dalej. Drugi ruter zmniejsza wartość ttl, porzuca datagram i odsyła komunikat
ICMP informujący o błędzie.
Po otrzymaniu odpowiedzi od rutera odległego o 2 etapy traceroute wysyła pakiety z ttl=3,
potem 4 itd.
Temat 2 - Podstawowe zagadnienia serwerów WWW
Traceroute
Gdy komputer docelowy otrzyma pakiet, zwraca komunikat ICMP „Unreachable
Port”. Traceroute celowo wykorzystuje zły numer portu (wysyła komunikat UDP
do nieistniejącego programu na docelowym komputerze), po odebraniu tego
komunikatu adresat odsyła komunikat ICMP o nieosiągalności odbiorcy.
Datagramy mogą ginąć, być duplikowane lub docierać w zaburzonej kolejności
(traceroute musi obsługiwać zduplikowane odpowiedzi oraz retransmitować
zagubione datagramy). Kolejny pakiet może wędrować trasą dłuższą lub
krótszą (dynamiczna zmiana tras). Używanie traceroute ma sens w sieciach, w
których trasy zmieniają się rzadko.
Traceroute drukuje (*), gdy odpowiedź nie nadchodzi. Najważniejsze informacje
udostępniane przez traceroute to:
–
Czy pakiet dotarł do punktu przeznaczenia?
–
Jeśli nie, to gdzie się zatrzymał?
–
W jakiej odległości jest maszyna docelowa od nadawcy (ile etapów)?
Temat 2 - Podstawowe zagadnienia serwerów WWW
Traceroute
- przykłady
Serwery WWW
Temat 3: Administrowanie serwerem IIS
Temat 3 - Administrowanie serwerem IIS
Dane podstawowe
Pełna nazwa: Internetowe Usługi Informacyjne (ang. Internet
Information Services)
Producent: Microsoft
Udział w rynku: 35% (2008 rok) - od tego momentu spadek
Funkcje serwera: FTP, HTTP, HTTPS, NNTP oraz SMTP
Systemy operacyjne: Windows XP i Vista, Windows Server NT,
2000, 2003, 2008, Linux (Mono)
Preferowana technologia aplikacyjna: ASP .NET
(Active Server Pages)
Zarządzanie: graficzny interfejs
http://news.netcraft.com/archives/2008/09/30/september_2008_web_server_s
urvey.html
Temat 3 - Administrowanie serwerem IIS
Czynności administracyjne
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
Instalacja
Definiowanie witryny
Konfiguracja witryny
Instalowanie usługi serwera aplikacji ASP .NET
Definiowanie puli aplikacyjnej
Rejestrowanie usługi ASP .NET
Definiowanie wielu witryn
Szyfrowanie
Dodawanie katalogów wirtualnych
Zabezpieczanie komunikacji i dostępu
Administracja poprzez witrynę WWW
Instalowanie i konfiguracja serwera FTP
Serwery WWW
Temat 3: Administrowanie serwerem
Apache
Temat 4 - Administrowanie serwerem Apache
Dane podstawowe
Pełna nazwa: Apache
Producent: Apache Software Foundation
Udział w rynku: 47% (2008 rok) – od tego momentu
wzrost
Funkcje serwera: HTTP
Systemy operacyjne: UNIX, GNU/Linux, BSD,
Microsoft Windows
Preferowana technologia aplikacyjna: różne – PHP,
CGI, ASP
http://news.netcraft.com/archives/2008/09/30/september_2008_web_server_s
urvey.html
Temat 4 - Administrowanie serwerem Apache
Czynności administracyjne
1.
2.
3.
4.
5.
6.
7.
8.
Instalacja i definiowanie witryny
Konfiguracja witryny
Instalowanie usługi PHP
Konfigurowanie usługi PHP
Definiowanie aliasów
Wirtualne hosty
Szyfrowanie
Uwierzytelnianie