B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
Bryk
Konfiguracji Apacha
Wydanie 1
Bryk z Apacha napisałem dla
Bartosza Wieczorka www.kursphp.rar.pl
z którym współpracuję.
Autor: Piotr Bujakowski
email:
www:
http://piotrbujakowski.w.interia.pl/
25 Luty 2006 r.
1
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
Spis treści
Rozdział 1: Inst alacja Apacha.......................................................3
Rozdział 2: Konf iguracja.................................................................4
D o p i e s z c z a n i e A p a c h a : .....................................................................................................5
A t a k t y p u D O S ( D e n i a l O f S e r v i c e ) ..............................................................................................6
G r u p y u ż y t k o w n i k ó w .................................................................................................................................7
Rozdział 3: Ur uchamianie Apacha.............................................11
Rozdział 4: Apache z PHP.............................................................12
Rozdział 5: Linki...............................................................................13
D y s t r y b u c j e L i n u x a : ...............................................................................................................................1 3
P r o d u c e n c i s p r z ę t u : .................................................................................................................................1 3
A u d i o / W i d e o : ...............................................................................................................................................1 3
P r o g r a m y A n t y w i r u s o w e ( L i n u x / W i n d o w s ) : ..........................................................................1 3
P r y w a t n e s t r o n y o L i n u x : ....................................................................................................................1 3
B e z p i e c z e ń s t w o p o d L i n u x : ...............................................................................................................14
O p r o g r a m o w a n i e d l a L i n u x a : ............................................................................................................14
H o w To : ..............................................................................................................................................................14
S t r o n y Z n a j o m y c h : ....................................................................................................................................14
R ó ż n e : ...............................................................................................................................................................1 5
2
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
Rozdział 1: Instalacja Apacha
W trakcie przymiarek do instalcji może być trochę problemów ponieważ może się
okazać, że nasza dystrybucja w repozytoriach nie posiada apacha. Wtedy trzeba będzie go
ściągnąć samemu ze strony: http://www.apache.org/.
Natomiast jeśli nasza dystrybucja posiada w repozytoriach apacha to polecam
program yum. Dzięki yumowi zainstalujemy najnowszą wersje.
yum install httpd
Tak zaczniemy proces wstępny instalcji obsługi stron internetowych na naszym
małym domowym serwerku.
Napiszę przy okazji parę wyjaśnień. Apache jest demonemy czyli programem
wykonującym sie w tle. Program jest uruchomiony, ale jest tylko w wykazie procesów. Nie
ma automatycznie przy starcie graficznego interfesju ze statusem. Jeśli chcemy się
dowiedzieć co sie dzieje z naszym programem musimy wydać specialną komendę
(komendy opisane są dalej).
Najpierw program pobierze informacje o plikach wraz zależnościami po czym zapyta
się czy ma zainstalować składniki.
3
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
Rozdział 2: Konfiguracja
Konfiguracja na pierwszy rzut oka jest dość skomplikowana. Zawiera Ona masę
poleceń które na początku trudno ogarnąć, ale tylko na początku. Jednym z ważniejszych
rzeczy na które trzeba zwrócić uwagę to jaki posiadany sprzęt komputerowy i łącze
internetowe. Ponieważ będziemy musieli ustalić obciążenie sewera dzięki czemu strony
internetowe na nim mieszczące będą sie zawsze szybko ładować, a użytkownicy
nadwyżkowi będą czekali na zwolnienie się miejsc. Standardowo przyjęto 150
użytkowników:
Całość konfiguracji obecnie znajduje się w pliku /etc/httpd/conf/httpd.conf
<IfModule prefork.c>
StartServers 8
MinSpareServers 5
MaxSpareServers 20
MaxClients 150
MaxRequestsPerChild 100
</IfModule>
MaxClients określa nam naszą ilość użytkowników. Możemy ja zmieniać dowolnie.
Podanie liczby 0 będzie sie równało z nieograniczona liczbą.
Koleją ważną rzeczom jest ustawienie kodowania w jakim będzie pracował nasz
serwer służy do tego opcja:
AddDefaultCharset ISO-8859-2
W Polsce używa się kodowania znaków ISO88592 będziemy mieli dzięki temu
standardowo polskie znaki po załadowaniu sie strony. W przypadku innego kodownia na
stronie lub serwerze zamiast „ą, ć, ę, ź, ż” pojawią się krzaczki.
Teraz trzeba apachowi pokazać gdzie ma stronę przodującą czyli ta którą załaduje
jako domyślną:
DocumentRoot "/var/www/html/strona_www"
4
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
W naszym przypadku przyjmujemy, że nasz katalog główny będzie nosił nazwę
strona_www. Po dokonaniu tego wpisu musimy skopiować tam nasza stronę. Na początek
wystarczy sam index.html lub index.php.
Jeśli chcemy sprawdzić czy wszystko działa to w przeglądarce internetowej należy
wpisać localhost. Jeśli zobaczymy naszą stronę to znaczy, ze wszystko gra jeśli zobaczymy
stronę testową apacha to znaczy, ze cos zrobiliśmy nie tak ze ścieżką:
Dopieszczanie Apacha:
Teraz musimy się zająć paroma ważnymi rzeczami jakimi są ostrożność i
bezpieczeństwo:
• Atak typu DOS (Denial Of Service)
• Grupy użytkowników
5
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
At a k ty p u D O S ( D e n i a l O f S e r v i c e )
Atak tego typu DOS ma przeciążyć system na skutek czego ma sie on wysypać.
Poniżej zamieszczam fragment logu który liczy sobie 7 stron formatu A4:
x.x.x.x - - [19/Feb/2006:16:19:27 +0100] "SEARCH
/\x90\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\
xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc
9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\
xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc
9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9\xc9
[...]
\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x
90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90
\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x
90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90
\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90\x90"
414 384 "-" "-"
Na skutek tego typu ataku procesor zaczyna pracować na 100% swojej mocy
obliczeniowej. Dostaje on w krótkim czasie bardzo dużą operacje do wykonania.
Zabezpieczamy się w prosty sposób:
TimeOut 300
MaxKeepAliveRequests 100
KeepAliveTimeout 15
T i m e O u t – p o j a k i m c z a s i e m a z o s t a ć p r z e r w a n e n i e a k t y w n e
p o ł ą c z e n i e .
M a x K e e p A l i ve R e q u e s t s – c z a s p o d t r z y m y w a n i a n i e a k t y w n e g o
p o ł ą c z e n i a
K e e p A l i v e T i m e o u t – p o d t r z y m y w a n i e a k t y w n e g o p o ł ą c z e n i a
6
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
G r upy uż y tkow ni k ó w
Jednym ze sposobów ograniczania dostępu są grupy i użytkownicy do których
przydzielamy poszczególne osoby i programy. Zajmiemy się dwiema grupami i jednym
użytkownikiem którymi są:
• grupa trusted
• grupa untrusted
• użytkownik apacha
Komendy:
• chown – przydzielanie użytkownika plikom i katalog.
• chgrp – przydzielanie grupy plikom i katalogom
• chmod – nadawanie praw plikom i katalogom
Nadając odpowiednie grupy i przydzielając użytkowników możemy w prosty sposób
jednym zablokować dostęp do plików i katalogów, a innym utrudnić włamanie się do
naszego serwera (tyczy się też zwykłych grup roboczych).
Nadajemy ów uprawnienia w taki sposób:
chwon -R apache /var/www/html/strona_www
chgrp -R trusted /var/www/html/strona_www
chmod -R 766 /var/www/html/strona_www
Pozostaje nam jeszcze przypisanie każdego użytkownika do grupy trusted i untrusted.
Wykonujemy to już z trybu graficznego: menu => środowisko => ustawienia sieciowe =>
Grupy i użytkownicy:
7
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
Podgląd użytkowników:
Pogląd grup:
8
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
Dodawanie użytkownika:
Dodawanie grupy:
9
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
Przydzielanie użytkownika do grupy:
Łączenie grupy z innymi grupami:
1 0
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
Rozdział 3: Uruchamianie Apacha
Uruchomienie Apacha jest bardzo proste i szybkie. W przypadku Fedory Core 4
działającej w trybie graficznym (Gnome) dajemy menu => środowisko => narzędzia
systemowe => ustawienia serwera => usługi. Po czym szukamy w lewym menu httpd i
start/restart:
Natomiast z trybu tekstowego będzie to wyglądać tak:
service httpd start/restart/stop/status:
[root@darkangle ~]# service httpd start
Uruchamianie httpd: [ OK ]
[root@darkangle ~]# service httpd restart
Zatrzymywanie httpd: [ OK ]
Uruchamianie httpd: [ OK ]
[root@darkangle ~]#
11
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
Rozdział 4: Apache z PHP
1 2
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
Rozdział 5: Linki
D yst r y b u c j e L i n u xa :
http://www.aurox.org/
http://www.turox.org/
http://www.dug.net.pl/
http://www.linuxiso.org/
P ro du c e nc i s p r z ę t u :
http://www.hp.com/
http://www.intel.com/
Au d i o / Wi d e o :
http://www.divx.pl/
http://www.xinehq.de/
P ro g ra my A n t y w i r u s owe ( L in u x / Wi n d ows ) :
http://www.avast.com/
http://www.symantec.com/
P r y wa t n e st ro ny o L in u x :
http://zlobek.tcz.wroclaw.pl/
http://linux.skr yptoteka.pl/
http://linux4u.w.inter ia.pl/
1 3
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
B e z p i e c z e ń s two po d L i n u x :
http://secur ity.linux.pl/
http://www.openwall.com/
http://www.tekla.neostrada.pl/slack/f irewall.html
http://www.g rsecur ity.org/
O p ro g ra m owa ni e dl a L i n u x a :
http://r pm.pbone.net/
http://www.rootkit.nl/
http://linux.cudeso.be/linuxdoc/por tsentr y.php
http://www.linuxkat alog.pl/
http://www.r wo.org.pl/zamienniki.html
http://ux.pl/
H ow To :
http://www.tldp.org/
http://newbie.linux.pl/
Stro ny Z n ajo mych:
http://linuxtux.us/
http://republika.pl/b_komar/
http://st achu_c.w.inter ia.pl/
http://www.skawinka.tk/
http://obigl.host.sk/
http://www.emilidolls.blog.pl/
http://www.bar ylov.republika.pl/
www.k ursphp.rar.pl
14
B r y k K o n f i g u r a c j i A p a c h a W y d a n i e 1
D o k u m e n t n a l i c e n c j i G P L
R ó ż n e :
http://dobczyce.homeip.net/
http://www.profesja.edu.pl/
1 5