BI-AWD. Administrace Webového a Databázového serveru Konfigurace webového serveru Apache httpd

Podobné dokumenty
BI-VWS. Vybrané partie z administrace Webového Serveru Kompilace a instalace a konfigurace webového serveru Apache httpd

BI-AWD. Administrace Webového a Databázového serveru Rozšiřující moduly serveru Apache httpd

v. 2425a Jak si na PC vypěstovat HTTP (WWW, Web) server a jak ho používat (snadno a rychle) by: Ing. Jan Steringa

BI-VWS. Vybrané partie z administrace Webového Serveru Autetizace, autorizace a kontrola přístupu Apache httpd

Užitečné odkazy:

BI-AWD. Administrace Webového a Databázového serveru Instalace webového serveru Apache httpd

BI-VWS. Vybrané partie z administrace Webového Serveru Přesměrování (redirect/rewrite) uvnitř Apache httpd

Popište rozdíly HTTP/1.0 a 1.1 "Host" hlavicka pro name-based vhosty keepalive chunked encoding. (chce to malinko rozvést).

A p a c h e h t t p d Lukáš Zapletal lukas.zapletal@liberix.cz

ISA seminární práce. Zadání č. 4 Konfigurace www serveru ISP

Webový server Apache. Linuxový víkend. Linux is like a teepee, no Windows, no Gates, and Apache inside. Ondřej Čečák <ondrej.cecak@linuxsoft.

Hlavička dokumentu obsahuje metadata, která se vztahují k celému dokumentu. Definují např. název

Instalační a uživatelská příručka aplikace PSImulator2 Obsah

Příloha 1 - Konfigurační direktivy webového serveru Apache

Instalace a konfigurace web serveru. WA1 Martin Klíma

DNS. Počítačové sítě. 11. cvičení

BI-AWD. Administrace Webového a Databázového serveru Virtualizace HTTP serveru

http.conf (hlavní konfigurační soubor) Mime.type (svázání typu přípon s mime typem) Magic (odhadnutí MIME typu pomocí pár úvodních bytů souboru)

1 Webový server, instalace PHP a MySQL 13

Příprava prostředí pro výuku PHP a MySQL

Střední odborná škola a Střední odborné učiliště, Hořovice

APS Administrator.OP

Podpora šifrovaného spojení HTTPS

Semestrální projekt do předmětu SPS

Střední odborná škola a Střední odborné učiliště, Hořovice

Téma 5-řešení s obrázky

Webový server Apache 2

Správa Web serveru Cvičení 3

Obsah. KELOC CS, s.r.o... v ý v o j a p r o d e j e k o n o m i c k é h o s o f t w a re

Administrace Unixu a sítí

Návod pro připojení k síti VŠPJ prostřednictvím VPN Vysoká škola polytechnická Jihlava

APS Administrator.ST

Počítačové sítě I LS 2004/2005 Návrh a konstrukce sítě zadání

Y36SPS Semestrální práce. Linux based webhosting. Jan Matoušek

Webový server lapache

Registr práv a povinností

Počítačové sítě Systém pro přenos souborů protokol FTP

2N NetSpeaker. IP Audio Systém. Manuál 1.4

Platforma.NET 11.NET Framework 11 Visual Basic.NET Základní principy a syntaxe 13

Příručka rychlého nastavení snímání do u

Pro označení disku se používají písmena velké abecedy, za nimiž následuje dvojtečka.

Správa linuxového serveru: Zprovoznění Ruby aplikací s RVM, Thin a Nginx

PŘÍRUČKA SÍŤOVÝCH APLIKACÍ

Střední odborná škola a Střední odborné učiliště, Hořovice

Překlad jmen, instalace AD. Šimon Suchomel

1. Webový server, instalace PHP a MySQL 13

VZDÁLENÉ PŘIPOJENÍ - OpenVPN. Popis a vlastnosti služby

Uživatelský modul. Transparent Mode

HTTPS na virtuálních web serverech

Nastavení DCOM. Uživatelský manuál

2015 GEOVAP, spol. s r. o. Všechna práva vyhrazena.

Formuláře a oblíbené položky

Versiondog Lukáš Rejfek, Pantek (CS) s.r.o. 7/2014

2N NetSpeaker. IP Audio Systém. Manuál 1.4

Registr práv a povinností

Instalace a první spuštění Programu Job Abacus Pro

APS Web Panel. Rozšiřující webový modul pro APS Administrator. Webové rozhraní pro vybrané funkce programového balíku APS Administrator

Serverové systémy Microsoft Windows

VComNet uživatelská příručka. VComNet. Uživatelská příručka Úvod. Vlastnosti aplikace. Blokové schéma. «library» MetelCom LAN

Site - Zapich. Varianta 1

Střední odborná škola a Střední odborné učiliště, Hořovice

Instalační manuál aplikace

Praktikum Směrování Linux

Připojení k eduroam.cz: Nastavení síťových komponent Meraki a konfigurace ISE

DOCHÁZKA. Webový prohlížeč docházky. Osoby

Téma 8: Konfigurace počítačů se systémem Windows 7 IV

Uživatelský modul. Modem Bonding

Telefonní adaptér SIPURA SPA-2100 Stručný průvodce instalací a konfigurací

Střední odborná škola a Střední odborné učiliště, Hořovice

Téma 3 - řešení s obrázky

Úvod, jednoduché příkazy

Téma 2 - DNS a DHCP-řešení

IP kamery Relicam. Verze 2 UŽIVATELSKÝ MANUÁL

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Windows Server 2003 Active Directory GPO Zásady zabezpečení

ADMINISTRACE UNIXU A SÍTÍ - AUS Metodický list č. 1

Konfigurace sítě s WLAN controllerem

Úvodem 9. Zpětná vazba od čtenářů 10 Zdrojové kódy ke knize 10 Errata 10. Než začneme 11

Laboratorní práce: SNMP - Linux snmputils

Přednáška 2. Systémy souborů OS UNIX. Nástroje pro práci se souborovým systémem. Úvod do Operačních Systémů Přednáška 2

Protokol TELNET. Schéma funkčních modulů komunikace protokolem TELNET. Telnet klient. login shell. Telnet server TCP/IP.

V okně Network nastavte požadované parametry IP. IP adresa musí být z rozsahu sítě, kde GNOME485 budete provozovat. Totéž se týká masky a brány.

IntraVUE Co je nového

B Series Waterproof Model. IP Kamera. Uživatelský manuál

Instalace a aktivace 3E pluginů pro SketchUp 2015 Rychlý průvodce instalací a aktivací pluginů: 3E Parametrické tvary, 3E Doors&Windows a 3E Katalog.

mod_rewrite Martin Bartušek Petr Šťastný MFF UK, 2008

Instalace. Bezdrátový přístupový bod NETGEAR ac WAC120. Obsah balení. NETGEAR, Inc. 350 East Plumeria Drive San Jose, CA USA.

Dokumentace k produktu IceWarp Notifikační nástroj

Administrace Unixu (Nastavení firewallu)

TMservice. Služba operačního systému Windows pro měření teploty čidlem TM

Příručka rychlého nastavení připojení sítě

Instalace produktu Ontopia. ver (open-source verze)

Nginx v roli web serveru

Téma 6 - řešení s obrázky

ezkouška požadavky na IT

IP adaptér Linksys SPA-1001 (SIP) Stručný průvodce instalací a konfigurací

Příručka nastavení funkcí snímání

Příklad instalace IP audio systému Dexon NetSpeaker v obchodním řetězci: menší obchody, supermarkety, hypermarkety, obchodní centra

Nastavení propojení s eshopem

Transkript:

BI-AWD Administrace Webového a Databázového serveru Konfigurace webového serveru Apache httpd Příprava studijního programu Informatika je podporována projektem financovaným z Evropského sociálního fondu a rozpočtu hlavního města Prahy. Praha & EU: Investujeme do vaší budoucnosti 1

Obsah Struktura konfiguračních souborů Syntaxe Webspace Filesystem Konfigurační minimum Další možnosti konfigurace Konfigurace virtual hosts 2

Struktura konfiguračních souborů 3

Syntaxe Jedna direktiva na řádce Při rozdělení direktivy na více řádků poslední znak \ Direktivy case insensitive, jejich parametry (např. cesty) mohou být case sensitive Komentář řádek začínající znakem # Komentáře by neměly být spolu s direktivami Prázdné řádky a bílé znaky před direktivami ignorovány 4

Webspace Filesystem 5

Platnost direktiv (scope) Direktivy mimo kontejner platí pro celý server Platnost direktivy lze omezit vložením do sekcí (kontejnerů), které omezí jejich platnost na Část souborového systému (cesty): <Directory> <DirectoryMatch> <Files> <FilesMatch> Zdroje (URL): <Location> <LocationMatch> <Proxy> Website (pokud je server s podporou virtual hostingu): <VirtualHost> Některé direktivy nemají smysl v některých sekcí (např. nastavení obsluhy požadavků, vytváření vláken/procesů) Je nutné dodržovat kontext direktiv (podle dokumentace) 6

Soubor.htaccess Umístění v adresářích exportovaných na web Konfigurace platí pro daný adresář a jeho podadresáře Stejné direktivy použitelné v kontejneru (např. <Directory>) Vyhodnocování při každém požadavku do adresáře Nastavení použití.htaccess souborů direktiva AccessFileName (kontext: celý server, vhost) Default:.htaccess direktiva AllowOverride (kontext: <Directory> apod.) None, All, Typ_direktivy... Soubory se načítají postupně od / (pokud to není zakázáno) 7

Kontejnery podmínek Omezují platnost direktiv Vyhodnocují se při re/startu <IfDefine název>... </IfDefine> Při definici názvu pomocí přepínače -D název Povoluje / zakazuje vlastnosti serveru <IfModule jméno_modulu>... </IfModule> Při načtení modulu do serveru <IfVersion [<>=]x.y.z>... </IfVersion> Podle verze serveru 8

Kontejnery Directory, DirectoryMatch 1.Všechny kontejnery <Directory vzor> v pořadí od nejkratší shody po nejdelší Např. pro adresář /home/*/public_html 1. / 2. /home 3. /home/user 4. /home/user/public_html 2.Soubory.htaccess 3.Všechny kontejnery <Directory ~ ERE> a <DirectoryMatch ERE> v pořadí podle uvedení v konfiguraci Kontejner <Directory /> je povolen po všechny Dostupný je tudíž celý filesystem. Obvykle je nutno přístup do / zakázat! 9

Kontejnery Files, FilesMatch, Location 1.Po zpracování kontejnerů <Directory...> 2.Všechny kontejnery <Files...> v pořadí podle uvedení v konfiguraci <Files vzor> <Files ~ ERE> <FilesMatch ERE> Může být součástí kontejneru <Directory> 3.Aplikuje v případně shody vzoru (ERE) s URL <Location vzor> <Location ~ ERE> <LocationMatch ERE> 10

Vzory, výrazy,... Vzory wildcards (shellové)?, *, [] Znak / se nenahrazuje, musí bý explicitně uveden Výrazy extended regular expressions.,?, *, +,, ^, $,... Cesty obsahující znaky // mohou, ale nemusejí být shodné s / /adr1//adr2 /adr1/adr2 //adr!~ ^/adr 11

Kompilace dynamického (.so) modulu I :: LAB 1. Zkonfigurujte kompilaci tak, aby se modul mod_info kompiloval jako dynamicky načítaný modul (.so) Nápověda: --enable...=shared 2. Otestujte existenci statického modulu 3. Nastavte načítání modulu při definici INFO Nápověda: Pomocí kontejneru IfDefine a -D INFO 4. Nastavte konfiguraci modulu pouze při jeho načtení Nápověda: Pomocí kontejneru IfModule 12

Kompilace dynamického (.so) modulu II :: LAB 5. Změňte adresu výstupu modulu na /info Nápověda: Pomocí kontejneru Location 6. Otestujte načítání dynamického modulu 7. Otestujte konfiguraci serveru 8. Restartujte server 9. Ověřte funkčnost v prohlížeči 10. Povolte přístup k modulu pouze z konkrétní IP adresy 11. Ověřte funkčnost v prohlížeči Nápověda: wget --bind-address=ip 13

Možnosti Options Povoluje / zakazuje možnosti v určených adresářích Syntaxe: Options [+ -]option... + přidává, odebírá Bez znaménka nastavuje pouze uvedené vlastnosti Vlastnosti se/bez znaménka se nesmí kombinovat Default: Options All Kontext: server, virtual host, directory,.htaccess 14

Konfigurační minimum ServerRoot (core) Kořenový adresář s instalací serveru (--prefix) ServerRoot "/usr/lib64/apache2" Listen (mpm) IP adresa/jméno, TCP port serveru (je možno použít vícekrát) Listen 80 ServerName (core) Jméno serveru pro odpovědi (např. při přesměrování) ServerName www.example.com User / Group (mpm) Indetita uživatele / skupiny pro běh serveru v případě, že je server spuštěn rootem User apache Group apache DocumentRoot (core) mapování kořene webu na filesystém DocumentRoot "/var/www/localhost/htdocs" 15

Další možnosti konfigurace I Načítání modulů (mod_so) LoadModule dir_module modules/mod_dir.so Výchozí stránka (mod_dir) DirectoryIndex index.html index.htm Automaticky generovaný index (mod_autoindex) Options +Indexes IndexOptions FoldersFirst IgnoreCase IndexIgnore README.htaccess *.bak *~ AddIcon (IMG,/icons/image.xbm).gif.jpg.xbm 16

Další možnosti konfigurace II Nastavení znakové sady a jazyků (core) AddDefaultCharset utf-8 Logování (core) ErrorLog /var/log/apache2/error_log LogLevel error HostnameLookups off Logování vlastní (mod_log_config) LogFormat "%h %l %u %t \"%r\" %>s %b" common CustomLog logs/access_log common 17

Další možnosti konfigurace III Autorizace (mod_authz_host) Order Deny, Allow Určuje pořadí zákazů a povolení Allow From... Deny From... Určuje, který klient je resp. není autorizován IP adresa - 147.32.80.90 část IP adresy - 147.32.80 síť (CIDR) - 10.0.0.0/8 doménové jméno - mypc.example.org část doménového jména - example.org.net všichni - vyhrazeno slovo all 18

Základní konfigurace I :: LAB 1. Upravte konfiguraci serveru tak, aby poslouchal pouze na rozhraních v sítích 127.0.0.0/8, 10.0.0.0/8 a TCP portech 80 a 8080 Nápověda: pro ověření použijte příkaz netstat 2. Adresář /var/www/main bude přístupný jako kořen webu 3. V adresáři nastavte AddDefaultCharset na hodnotu UTF-8 4. Pokud se stránka zobrazí špatně, použijte dokumentaci k direktivě a telnet pro diagnostikování a odstranění problému 19

Základní konfigurace II :: LAB 5. Přístup do adresáře /var/www/main/private zakažte v konfiguraci webserveru 6. V adresáři /var/www/main/users povolte vypsání obsahu adresáře, pokud není k dispozici index 7. V případě chyby 404 Not Found zkontrolujte, zda není potřeba načíst nějaký rozšiřující modul 8. Pro všechny podadresáře tuto vlastnost zakažte! 9. Ve všech podadresářích /var/www/main/users/ povolte použítí.htaccess souborů a přenastavení Options a Limit 20

Základní konfigurace III :: LAB 10. Povolte výpis obsahu adresáře /var/www/main/users/franta/data pomocí souboru.htaccess 11. Zakažte zobrazení všech souborů s příponou bak nebo txt 12. Pokuste se zobrazit textový soubor v http://localhost/users/franta/data/tohle_byste_videt_meli.txt 13. Nechte si vypsat obsah adresáře http://localhost/users/franta/data/ 14. Načtěte do serveru modul alias LoadModule alias_module modules/mod_alias.so 21

Základní konfigurace IV :: LAB 15. Namapujte do struktury webu z předchozího příkladu na URL /vhosts adresář /var/www/vhosts 16. Povolte k němu přístup 17. Povolte jeho výpis, pokud není k dispozici index 18. Zjistěte, kam server loguje chybová hlášení 19. Požádejte pomocí prohlížeče server o neexistující zdroj http://localhost/neexistuje 20. Zvyšte úroveň logování alespoň o 2 úrovně 21. Server restartujte a prostudujte obsah logu 22

Konfigurace virtual hosts Kontejner <VirtualHost> IP-based virtual hosting ServerName ServerAlias DocumentRoot pokud nebude nalezen odpovídající ip-vh, použije se _default_, pokud není ani ten, použije se nastavení hlavního serveru Name-based virtual hosting nutno dopředu definovat IP adresy použité pro name-based vh NameVirtualHost IP[:port] je nutné specifikovat jméno serveru jinak shodné s ip-vh 23

Výběr virtuálního hostitele 24

Nastavení síťových rozhraní :: LAB 1. Vytvořte síťové rozhraní eth0:1 eth0:3 s IP adresami 10.0.-X-.1 až 10.0.-X-.3 Značka -X- v IP adrese musí odpovídat 4. oktetu IP adresy rozhraní eth0 na konkrétním PC. ip=`ifconfig eth0 grep inet \ cut -d: -f2 cut -d' ' -f1 cut -d. -f4` for n in {1..3} do ifconfig eth0:$n 10.0.$ip.$n netmask 255.255.0.0 done 25

Konfigurace lokálního překladu IP/DN :: LAB 2. Zkontrolujte, zda soubor /etc/hosts obsahuje následujcící záznamy, značka -X- v IP adrese musí odpovídat 3. oktetu IP adresy rozhraní eth0:n na konkrétním PC 10.0.-X-.1 10.0.-X-.1 10.0.-X-.2 10.0.-X-.2 10.0.-X-.2 10.0.-X-.3 www.mycorp.em www.aliascorp.em www.othercorp1.em www.othercorp2.em www.othercorp3.em www.nocorp.em vi /etc/hosts 26

IP-based virtual hosting I :: LAB 3. Pro konfiguraci IP-based virtual hostingu si vytvořte samostatný soubor, pomocí direktivy Include jej načtěte do hlavního konfiguračního souboru 4. IP adresu 10.0.-X-.1 vyhraďte pro server se jménem www.mycorp.em a aliasem www.aliascorp.em 5. Kořen tohoto webu nastavte na /var/www/vhosts/mycorp 6. Chybová hlášení z tohoto virtuálního hostitele směrujte do /var/log/apache2/mycorp_error_log 27

IP-based virtual hosting II :: LAB 7. Vyzkoušejte požadavek na http://www.mycorp.em http://www.mycorp.em/neexistuje http://www.nocorp.em http://www.nocorp.em/neexistuje 8. Pokuste se vysvětlit chování serveru 9. Zjistěte, kam byly zalogovány požadavky na neexistující zdroje 10. Definujte výchozího IP-based virtuálního hostitele 11. Nastavte pro něj DocumentRoot na /var/www/vhosts/default 28

IP-based virtual hosting III :: LAB 12. Vyzkoušejte požadavek na http://www.mycorp.em http://www.mycorp.em/neexistuje http://www.nocorp.em http://www.nocorp.em/neexistuje 13. Pokuste se vysvětlit chování serveru 14. Zjistěte, kam byly zalogovány požadavky na neexistující zdroje 29

Name-based virtual hosting I :: LAB 15. Pro tuto část se ujistěte, že nenačítáte konfiguraci pro IP-based virtual hosting (neměla by žádný vliv) 16. Pro konfiguraci name-based virtual hostingu si vytvořte samostatný soubor, pomocí direktivy Include ho načtěte do hlavního konfiguračního souboru 17. Vyhraďte všechny IP adresy, na kterých server poslouchá, pro name-based virtual hosting 18. Nastavte výchozího virtuálního hostitele: Jméno serveru je www.othercorp1.em DocumentRoot je /var/www/vhosts/othercorp1 30

Name-based virtual hosting II :: LAB 19.Nastavte dalšího virtuálního hostitele na: Jméno serveru je www.othercorp2.em DocumentRoot je /var/www/vhosts/othercorp2 20. Vyzkoušejte požadavky na http://www.othercorp1.em http://www.othercorp2.em http://www.othercorp3.em 31

Mixed virtual hosting I :: LAB 21.Pro tuto část se ujistěte, že načítáte konfiguraci pro IP-based virtual hosting 22.Pro konfiguraci name-based virtual hostingu si vytvořte samostatný soubor, pomocí direktivy Include ho načtěte do hlavního konfiguračního souboru 23.Vyhraďte IP adresu 10.0.-X-.2 pro namebased virtual hosting 24.Definujte virtuální hostitele: Jméno serveru je www.othercorp1.em DocumentRoot je /var/www/vhosts/othercorp1 Jméno serveru je www.othercorp2.em DocumentRoot je /var/www/vhosts/othercorp2 32

Mixed virtual hosting II :: LAB 21.Vyzkoušejte požadavky na http://www.mycorp.em http://www.aliascorp.em http://www.othercorp1.em http://www.othercorp2.em http://www.othercorp2.em http://www.othercorp3.em http://www.nocorp.em 33