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