Jak na Internet server ? (9)
Proxy server Nejprve je nutnΘ si uv∞domit, co je to proxy server (nebo tΘ₧ proxy gateway). Proxy server je jakßsi roura (kterß m∙₧e nap°φklad vΘst skrze protipo₧ßrnφ ze∩ vaÜφ sφt∞...), p°es nφ₧ prochßzejφ p°φstupy k urΦit²m slu₧bßm jinde, v naÜem p°φpad∞ vn∞ naÜφ sφt∞ - na Internetu. V praxi jsou nejznßm∞jÜφ proxy pro WWW (resp. pro http), dßle znßme tΘ₧ ftp proxy, Gopher proxy a WAIS proxy. Pokud to celΘ p°itßhneme pon∞kud za vlasy, m∙₧e existovat tΘ₧ telnet proxy, mail proxy atd. Proxy server se jevφ obvykle u₧ivateli jako naprosto transparentnφ. UrΦitou v²hodou WWW proxy je to, ₧e sprßvce serveru na druhΘ stran∞ spojenφ neznß IP adresu a jmΘno u₧ivatelskΘ pracovnφ stanice, ale jen adresu proxy. Ve chvφli, kdy se objevila prvnφ WWW proxy gateway, napadlo jejφ autory, ₧e by mohla fungovat takΘ jako cache (uklßdß dokumenty, je₧ putujφ p°es nφ, na sv∙j lokßlnφ disk), Φφm₧ je mo₧nΘ snφ₧it traffic na vaÜφ p°φpojce k Internetu a samoz°ejm∞ takΘ na Internetu samotnΘm a tΘ₧ zrychlit p°φstup u₧ivatel∙m k dokument∙m, kterΘ ji₧ tahal n∞kdo p°ed nimi a z∙staly v cache. Cel² systΘm se naz²vß proxy cache a samoz°ejm∞, Φφm mß k dispozici vφce diskovΘho prostoru na HTML dokumenty, tφm pracuje lΘpe. UrΦitou nev²hodou proxy cache je vÜak to, ₧e n∞kterΘ strßnky b²vajφ pravideln∞ aktualizovßny a proxy server si toho prost∞ nevÜimne (zde vÜak pom∙₧e funkce reload vaÜeho prohlφ₧eΦe), tuto chybu se vÜak mj. sna₧φ odstranit inovace protokolu http ve verzi 1.1. Kdy₧ pak byla hotova i proxy cache, kohosi z t²mu vyvφjejφcφho proxy cache znßmou jako Harvest napadlo, ₧e by se mohlo propojit vφce proxy cache server∙ do sφt∞ za sebou, Φφm₧ bude mo₧nΘ takΘ zrychlit p°φstup k dokument∙m a podstatn∞ ulehΦit internetov²m linkßm. A tak se jeden proxy server ptß dalÜφch, zda n∞jak² dokument nemajφ, pokud ano, tak si jej vezmou od nich a pokud nikoli, postupujφ p°es tyto proxy servery dßle (aby si danΘ strßnky mohli stßhnout i dalÜφ u₧ivatelΘ). Tak₧e spojenφ p°es sφ¥ proxy server∙ m∙₧e vypadat i takto:
V praxi to pak m∙₧e b²t nap°. (pokud jste p°ipojeni na CESNET) takto: vaÜe PC -> firemnφ proxy cache -> cache.cesnet.cz -> cache.ecrc.net (N∞mecko) -> cache.ans.net (U.S.A.) -> www.software.ibm.com. PoΦet u₧ivatel∙, kte°φ tak budou moci vyu₧φt strßnku sta₧enou na vaÜi ₧ßdost, nar∙stß geometrickou °adou. Jen dodßm, ₧e u nßs je sφ¥ proxy server∙ pom∞rn∞ hustß. Krom∞ cache.cesnet.cz je to tΘ₧ nap°. vultur.vslib.cz, na Video-On-Line proxy.vol.cz a i na sφt∞ n∞kter²ch dalÜφch provider∙, nap°. Datac, jsou p°ipojeny soukromΘ poΦφtaΦe, kterΘ nevlastnφ provider, a kterΘ proxy cache provozujφ. Jejich jmΘna vÜak jaksi zrovna nepat°φ mezi ta uve°ej≥ovanß). A te∩ ale pozor. Jestli si myslφte, ₧e sφ¥ovou proxy cache umo₧≥uje provozovat proxy z Apache httpd, CERN httpd, nebo t°eba proxy z komerΦnφho Netscape Proxy serveru, pak si to nemyslete, nenφ tomu tak. Sφ¥ovou proxy zatφm umo₧≥uje provozovat jen jeden jedin² produkt a je jφm Squid, pokraΦovatel a nßsledovnφk programu Harvest (vyvφjen² dokonce t²m₧ t²mem). Squid pat°φ mezi freeware, k dispozici jsou i zdrojovΘ k≤dy, kterΘ umo₧≥ujφ jeho implementaci pod tΘm∞° jakoukoli platformu, zatφm Squid b∞₧φ na celΘ °ad∞ unixov²ch systΘm∙ vΦetn∞ Linuxu a pod operaΦnφm systΘmem OS/2. TakΘ se vßm zdß, ₧e to nenφ nßhoda, ₧e pod OS/2 existuje portace tΘm∞° jakΘhokoli unixovΘho programu, kde₧to pod Windows NT nikoli... ? Tak₧e jak Squid zφskat ? Zkuste op∞t osv∞dΦenou metodu - nejv∞tÜφ ΦeskΘ ftp servery, pop°. Nosey Parkera, pokud nejste p°ipojeni k CESNETu, EUnetu, SpiNetu, CzechNetu Φi NetForce, zkuste rad∞ji ftp server sunsite.unc.edu (pop°. ftp.funet.fi), nebo si vezm∞te na pomoc AltaVistu a hledejte Squid. Poslednφ verze Squida mß v dob∞ vydßnφ tohoto p°φsp∞vku Φφslo 1.1.2, Φast∞ji se vÜak setkßte s pou₧φvßnφm starÜφ sΘrie (a na rozdφl od sΘrie 1.1.x takΘ neexperimentßlnφ) 1.0.x, kde je poslednφ verze 1.0.20. Op∞t nßs Φekß rozbalenφ programem Tar (pop°. tΘ₧ Gzip,) a konfigurace. KonfiguraΦnφ soubor Squidu se jmenuje squid.conf a nalΘzß se (p°i instalaci Squidu na /usr/local/squid) obvykle v /usr/local/squid/etc. U konfigurace Squidu je pot°eba ji₧ o n∞co vφce p°em²Ület, nenφ to ji₧ tak jednoduchΘ jako nakonfigurovat Apache. P°φklad konfigurace Squid pro naÜφ ukßzkovou sφ¥ je zde (jen pro dopln∞nφ uvedu, ₧e program Squid umφ jeÜt∞ °adu dalÜφch v∞cφ, jako t°eba omezenφ p°φstup∙ k server∙m atp., kterΘ pro jednoduchost vynechßvßm):
http_port 3128
cache_host vultur.vslib.cz parent 3128 3130
inside_firewall domena.cz
single_parent_bypass off
neighbor_timeout 4
cache_dir /var/squid
cache_access_log /var/log/squid/access.log
cache_ftp_program /usr/local/squid/bin/ftpget
cache_dns_program /usr/local/squid/bin/dnsserver
http_stop /cgi-bin/
gopher 4 4320
request_size 300
ttl_pattern ^http:// 1440 20% 43200quick_abort off negative_ttl 5 positive_dns_ttl 360 negative_dns_ttl 5
connect_timeout 120
acl manager proto cache_object
acl SSL_ports port 443 563
http_access deny manager !localhost
cache_mgr root
append_domain .domena.cz
Nejprve si musφme uv∞domit, kde chceme mφt cache s HTML dokumenty. Jß jsem pro tento ·Φel zvolil adresß° /var/squid. Pomocφ prom∞nn²ch 'cache_mem' a 'cache_swap' lze urΦit, kolik pam∞ti a mφsta na disku smφ Squid nejvφce vyu₧φvat. DalÜφ proxy servery, na n∞₧ se nßÜ proxy server mß obracet s dotazy, jsou definovßny pomocφ prom∞nnΘ 'cache_host'. Pomocφ neuvedenΘ prom∞nnΘ 'cache_host_domain' lze i urΦit, kter² proxy server se mß vyu₧φvat pro kterou domΘnu. Konfigurace koncovΘho proxy serveru je jeÜt∞ docela jednoduchß, ale p°edstavte si nap°. stovky cache_host a cache_hsot_domain polo₧ek v konfiguraci centrßlnφch proxy server∙ n∞kterΘ velkΘ ve°ejnΘ sφt∞. DalÜφ v²znamnΘ prom∞nnΘ 'inside_firewall', 'local_domain' a 'local_ip' definujφ, na kterΘ systΘmy mß nßÜ proxy server p°istupovat p°φmo. Pokud tohle bude nakonfigurovanΘ Üpatn∞, nemusφ proxy server p°φstup k dokument∙m zrychlit, ale naopak znaΦn∞ zpomalit, a to platφ vΦetn∞ lokßlnφch dokument∙. DalÜφ prom∞nnΘ nastavujφ jmΘno systΘmu, jmΘno a skupinu u₧ivatele, s jeho₧ UID a GID Squid b∞₧φ. NedoporuΦuji m∞nit ty prom∞nnΘ, kterΘ nastavujφ ΦasovΘ prodlevy, prßci s DNS, porty jednotliv²ch slu₧eb atp., pokud naprosto p°esn∞ nevφte, co d∞lßte. V²Üe uvedenß konfigurace Squid je relativn∞ chodivß a odzkouÜenß, tak₧e si u₧ijte proxy cache v provozu a p°φÜt∞ se sejdeme nad firewallem. Zbyn∞k Pospφchal
|