Proxy

Z Jabber.cz Wiki
Přejít na: navigace, hledání

Proxy server je jakýsi prostředník, který se ptá za vás, a potom vám dá vědět s výsledkem.

K čemu je dobré?

V dávných dobách internetu (řekněme kolem roku 1997) byly dva druhy připojení k internetu. Prvním bylo přímé připojení s veřejnou IP adresou. Internet tenkrát nebyl zdaleka masovou záležitostí, spíše jenom na akademické půdě. IP adres bylo dost, viry šířící se po internetu prakticky nebyly, firewally nebyly moc potřeba. Prostě jste byli vystaveni přímo do internetu. Pokud se měly stroje provozovat na privátních IP adresách, ať už z jakýchkoliv důvodů, byly potřeba proxy servery. Proxy server měl jako jeden z mála přístup přímo do sítě a měl veřejnou IP adresu. Ptal se serverů na internetu, a potom tuto informaci předal dál těm, kdo se na ni ptali. Tedy obvykle strojům s privátní IP adresou v jeho síti.

Možnosti proxy serverů byly omezené. Navíc program sám musel podporovat komunikaci s proxy. To nebylo úplně časté, protože proxy serverů je více druhů.

Proxy server se také kdysi používal jako forma zabezpečení. Jediná ochrana, kterou nabízí, je odfiltrování pomocí firewallu na vlastním proxy serveru nebo routeru. Slouží taky jako částečný anonymizér, kde není vidět zdrojová adresa skutečného žadatele. Pokud ovšem není povolena #hlavička Via, která však obvykle povolena je.


Typy proxy

HTTP proxy

HTTP proxy má kromě podivného předávání jednu celkem zásadní schopnost, díky které se používá dodnes. Když si klient (žadatel) požádá o nějakou stránku, proxy server si ji stahuje k sobě, a pošle ji cílovému klientovi. Co když se ale zeptá jiný klient na tu stejnou stránku? Proxy server si obvykle stažené stránky uchovává nějakou dobu, a takovému dalšímu klientovi pošle ihned stránku, kterou stáhl předtím s tím, že pravděpodobně se na ní nic nezměnilo. Tímto způsobem lze ušetřit značnou část konektivity do internetu, a využít rychlejší vnitřní sítě. Takový server lze potom nazývat Cachující proxy server. V dnešní době těžko potkáte proxy server, který by toto nedělal. Postrádal by smysl. Práce s webem se potom jeví jako rychlejší, protože se neptáte pořád na internetu, ale pouze poprvé.

Problém nastává s příchodem dynamických stránek, v případě, že jejich autoři práci s cachí neřeší. Potom proxy server neví, jak dlouho může uchovat uloženou stránku, aniž by zastarala. V takovém případě musí vždy stáhnout stránku znovu, aby klientovi zajistil vždy aktuální stránku a ne týden staré "aktuality". V takovém případě místo úspory a zrychlení dojde k mírnému zpomalení, protože na stažení se podílí další server.

Proxy server se také může používat kvůli záznamu provozu na internetu, co kdo dělal. Proxy server jakožto prostředník zná celé URL, a může je tedy zaznamenávat do logů.

Díky metodě CONNECT může umět navázat i běžné TCP spojení.

SOCKS proxy

HTTP proxy má jedno celkem zásadní omezení. Je navrženo pro protokol HTTP a jiné protokoly obvykle neumí (dnes už nemusí být vždy pravda). Co ale dělat, pokud se chci připojit na IRC, Jabber, nebo jiný protokol využívající TCP/IP? K tomu je navržena SOCKS proxy. Umí předat jakékoliv TCP spojení, nejen požadavky na WEB. Takže najendou bylo z privátní sítě možné používat i další internetové programy, jako ICQ, mail, IRC, a všechny další, které ovšem musely umět SOCKS proxy.

Nevýhoda SOCKS je, že oproti HTTP proxy nemůže z principu cachovat, protože přenášeným datům nerozumí ani to nemá v popisu práce. Proto SOCKS dnes již není natolik rozšířená. Nejčastěji ji používají různí podvratní živlové, kteří z různých důvodů potřebují mít jinou zdrojovou IP, než jejich vlastní.

Intercepting proxy

Postupem času se také vymyslela proxy, která se nemusí nastavovat. Jejím účelem je čistě cachování, tedy zrychlení a odlehčení pomalé linky do internetu. Její princip funguje tak, že na routeru se váš požadavek odchytí a místo cílovému serveru pošle proxy serveru, který se zeptá za vás. Potom si zase uloži odpověď pro vás na delší dobu i pro případné ostatní zájemce. Takové chování se často chybně označuje jako transparentní proxy, viz [1].

Potřebuji proxy?

Tohle otázku za vás obvykle zodpoví administrátor sítě a taky se obvykle nehodlá na tohle téma vůbec bavit. Prostě rozhoduje on. HTTP proxy má svůj smysl a přínos. I v době, kdy je většina stránek dynamických, se nepoužívají dynamické obrázky (někdy ano, ale ne moc často). Obrázky také mívají větší velikost než vlastní text, a proto se vyplatí je cachovat. Každý prohlížeč si udržuje vlastní cache (i když kvalitní proxy server to často umí lépe), takže mít svůj osobní proxy server jenom pro jeden počítač nemá moc smysl.

Dost často se blokuje běžný provoz do internetu kromě proxy serveru. To správci umožňuje především lepší dohled a také to má odradit zaměstnance dělat v pracovní době úplně něco jiného, než by měli. Doma se obvykle takové nastavení nedělá, zato ve firmách a ve škole je běžné. Je nutné vám připomenou, že obvykle řešíte jak nastavit proxy z toho důvodu, že chcete dělat něco, co máte zakázané.


Proxy a Jabber

Jaký typ zvolit?

Nejjednodušší je obvykle používat Jabber bez jakékoliv proxy. U obvyklých připojení k internetu to funguje bez problému. Buď budete připojení přímo do internetu s veřejnou IP, nebo pomocí NATu. Pokud vám to funguje, nepoužívejte proxy vůbec - není k tomu důvod.

Pokud vám to bez proxy nejede a máte předepsanou proxy, zkuste SOCKS proxy, nebo HTTP proxy. Pokud nejste omezeni paranoidním firewallem a nastavením sítě, bude to fungovat. Použijte tedy tohle nastavení.

Pokud nic nezbývá, použijte buď HTTP polling nebo přímo webového klienta (například JWChat na netlabu). Tento režim by měl jet i v krajních situacích, pokud fungují alespoň běžné internetové stránky. Nicméně není tak spolehlivý a je víc náchylný k problémům.

Jestli se připojení ani potom nedaří, buď to máte špatně nastavené, nebo váš správce sítě skutečně nechce, aby jste něco takového dělali. Ověřte jestli se vůbec dostanete někam na internet. Pravděpodobně už vám ale nezbude nic jiného, než připojit se jinak přes jiného poskytovatele, nebo se nepřipojit vůbec. Je také možné, že nejede buď server, nebo polling proxy.

Nastavení proxy

Proxy server se musí nastavit vždy do speciálního políčka v programu. Pokud program vůbec takové políčko nemá, tak pravděpodobně proxy server nepodporuje a neumí se přes proxy připojit. Pokud tedy nenajdete to správné políčko, nesnažte se to napsat někam jinam - nebude to fungovat. Obvykle najdete nastavení sítě ve Vlastnostech připojení. Někdy vyžaduje proxy server i ověření jménem a heslem. Problém může nastat v případě ISA serveru od Microsoftu, který může vyžadovat speciální autorizaci do domény. Ne každý klient ji podporuje, takže v takovém případě máte značně zůžený výběr.

Nastavení v Mirandě

  1. V menu vyberte Options, a v nich najděte strom Network (Síť).
  2. Klikněte přímo na ten nápis a vedle se objeví nastavení proxy serveru.
  3. Doporučuju nastavit proxy server pro všechny protokoly společně (All connections).
  4. Vyberte typ vaší proxy, a zadejte IP adresu (nebo název počítače s proxy, pokud bude fungovat), a nezapomeňte na port. Obvyklé porty jsou 3128 nebo 8080, můžou se ale lišit...

Nastavení v Psi

  • V Nastavení účtu na záložce Připojení si můžete vybrat ze seznamu definovaných proxy.
  • Tlačítkem Úpravy můžete měnit nastavení jednotlivých proxy serverů či přidávat nové.
  • Vzhled okna pro nastavení proxy je uveden v článku HTTP polling.

Nastavení v JAJCi

  • V JAJCi se proxy server nastavuje v Menu -> Účet -> Setup, záložka Proxy.

Další proxy v jabberu

Filetransfer proxy

V jabberu se pojem proxy může vyskytovat častěji, což může být zdrojem zmatení uživatelů. Například filetransfer proxy nemá za úkol vám umožnit připojení do internetu, ani na Jabber server. Umožňuje propojení dvou uživatelů za účelem přenosu souboru. Pokud totiž ani jeden z účastníků nemá veřejnou IP adresu (používají NAT), nemůže klient navázat datové spojení pro přenos souboru.

K překlenutí problému je vymyšleno znovupoužití konceptu SOCKS proxy, tentokrát ve službách Jabberu, jak definuje JEP-0065. Následně i klienti, kteří nemají možnost přímého spojení se mohou spojit přes prostředníka. Tento prostředník je služba na internetu s veřejnou adresou, na kterou se mohou oba připojit. Tato služba zatěžuje přenosem souborů svou vlastní linku, což může při častém využití znamenat problém. Proto je výhodnější, když alespoň jeden z klientů má veřejnou IP adresu a mohou si vytvořit přímý kanál bez potřeby filetransfer proxy.

Polling proxy

Klasická HTTP proxy není schopná spolupracovat s Jabberem. Je určena na protokol HTTP, a tedy web. I když to většina umožní, někdy to umět nemusí, nebo to může mít administrativně zakázané. Pro navázání spojení přes HTTP proxy se použije metoda CONNECT. Pokud není dostupná, nefunguje napodobení přímého spojení pres proxy server. Potom zbývá použít polling proxy, která i toto dokáže obejít za cenu horší efektivity. Pokud máte na výběr, použijte běžnou HTTP proxy nebo žádnou proxy. Polling proxy použijte až všechno ostatní selže.

Viz také