Oliheň

Aktuální verze stránky ještě nebyla zkontrolována zkušenými přispěvateli a může se výrazně lišit od verze recenzované 13. května 2021; kontroly vyžadují 9 úprav .
Oliheň

Logo chobotnice
Typ proxy server
Vývojář Squid Software Foundation [d]
Zapsáno v C++
Operační systém GNU/Linux [3] , BSD a Microsoft Windows
První vydání července 1996
Hardwarová platforma Microsoft Windows
Nejnovější verze 5.7 [1] [2] ( 5. září 2022 )
Licence GNU GPL 2+ [3]
webová stránka squid-cache.org

Squid  ( anglicky  squid  - "chobotnice") je softwarový balík , který implementuje funkci mezipaměti proxy serveru pro protokoly HTTP , FTP , Gopher a (pokud jsou vhodně nakonfigurovány) HTTPS . Vyvinutý komunitou jako open source program (distribuovaný pod GNU GPL ). Všechny požadavky jsou zpracovávány jako jeden neblokující I/O proces .

Používá se v systémech podobných UNIX a v OS rodiny Windows NT . Má schopnost interagovat s Active Directory Windows Server pomocí ověřování prostřednictvím LDAP , což vám umožňuje používat řízení přístupu k internetovým zdrojům pro uživatele, kteří mají účty na Windows Server, a také vám umožňuje organizovat „omezování“ internetového provozu pro různé uživatele.

Používá se ve spojení s nástroji Mediawiki na hostitelích wiki. Použití mezipaměti proxy serveru pro stránky se stává ziskovým od přibližně 2000 návštěvníků denně.

Kompatibilita

Server Squid byl vyvíjen mnoho let. Poskytuje kompatibilitu s nejdůležitějšími internetovými protokoly a také s operačními systémy:

Squid je také používán systémem Wikimedia . [5]

Popis architektury

Seznamy řízení přístupu

Přístupové seznamy [6] ( access control list , acl) se používají ke kontrole přístupu ke zdrojům a určují řadu akcí .  Každý ACL se může skládat z několika kritérií (ale pouze jednoho typu):

Identifikace

Squid podporuje několik typů ověřování uživatelů:

Pro identifikaci pomocí loginu/hesla je možné použít:

Omezení přístupu pro skupiny

Přesměrovače

Squid má schopnost přepsat požadované adresy URL. Squid lze nakonfigurovat tak, aby předával příchozí adresy URL přes proces přesměrování běžící jako externí proces (podobně jako dnsserver), který vrací novou adresu URL nebo prázdný řetězec indikující žádnou změnu.

Přesměrovač není standardní součástí balíčku Squid. Přesměrovač poskytuje správci kontrolu nad pohyby uživatelů. Použití přesměrovače v kombinaci s transparentní proxy poskytuje jednoduchou, ale účinnou kontrolu nad přístupem k nechtěným zdrojům (například zábavní zdroje a sociální sítě v podnikové síti , pornografie ). Přesměrovač by měl číst adresy URL (jedna na řádek) ze standardního vstupu a zapisovat změněné adresy URL nebo prázdné řádky na standardní výstup. Je třeba poznamenat, že program přesměrovače nemůže používat I/O s vyrovnávací pamětí. Squid připojí za URL další informace, které může přesměrovač použít k rozhodnutí.

SAMS (SQUID Account Management System) je softwarový nástroj pro správu uživatelského přístupu k proxy serveru Squid.

V současné době SAMS konfiguruje práci přesměrovačů:

Typy přesměrovačů:

Přesměrovač SAMS

Napsáno speciálně pro SQUID, přímo využívá informace obsažené v databázi. Umožňuje uživatelům povolit různé přesměrování požadavků (upraveno uživatelskými šablonami). SAMS Redirector poskytuje:

Přesměrovač SquidGuard

Výkonný přesměrovač se skvělými funkcemi. Přesměrovač obsahuje seznamy bannerových, pornografických a dalších domén. SAMS přidá do konfiguračního souboru SquidGuard nastavení squidguard.conf pro seznamy blokovaných domén a přesměrování přístupu SAMS. Nastavení pro seznamy dodávané se SquidGuardem se nezmění ani neodstraní.

Při použití přesměrovače SquidGuard se acls zadávají do souboru squid.conf, což umožňuje všem uživatelům přístup k SQUID. Omezení přístupu uživatele je organizováno pomocí přesměrovače.

Standardní SQUID

Tento přesměrovač je popsán v dokumentaci SQUID. Napsáno v perlu. Přesměrovač je vytvořen po vydání příkazu k překonfigurování SQUID na základě seznamů pro předávání požadavků. Rychlý a lehký přesměrovač, ale nerozlišuje mezi uživateli.

Při použití tohoto přesměrovače je omezení přístupu uživatelů seznamy odmítnutí organizováno pomocí ACL SQUID. Při použití přesměrovače SQUID nebo pokud se přesměrovač vůbec nepoužívá, existuje možnost, že když jsou uživatelé odpojeni z důvodu překročení provozu, budou mít stále přístup k adresám URL a IP uvedeným v seznamu „Místní domény“.

Maximální rychlost připojení

Omezení maximální rychlosti příjmu uživatelem (uživateli) v squidu je realizováno pomocí anglického mechanismu.  delay pools (doslova - "delay pools"). Mechanismus omezování rychlosti funguje na principu poolu (odtud název pool (pool)), do kterého informace „tečou“ a „vytékají“. Samostatné paměťové oblasti konfigurované tímto způsobem se nazývají anglicky.  vědro (kyblík). Kbelík má parametry: "kapacita", "rychlost plnění". Pokud uživatel (uživatelé) dostávají informace nižší rychlostí, než je „rychlost plnění“, je kbelík vždy plný. Pokud uživatel krátce zvýší rychlost příjmu informace nad rychlost plnění, tak do okamžiku, kdy je kbelík prázdný, není v rychlosti omezen, jakmile se kbelík vyprázdní, klient obdrží informaci o rychlosti naplnění kbelíku . Jsou-li k dispozici skupinové a individuální kbelíky, zapínají se postupně.

Existují tři typy (třídy) fondů zpoždění [7] :

Pro každý kbelík jsou specifikovány dva parametry: kapacita a rychlost plnění. −1 znamená „bez omezení“.

Zásah uživatelů v jednom nebo druhém segmentu je určován přístupovými seznamy k segmentům, jsou prohlíženy v pořadí, v jakém jsou uvedeny v konfiguračním souboru až do první shody. Uživatelé, kteří nespadnou do žádného z kyblíků, nejsou nijak omezeni v rychlosti.

Zpětné ukládání do mezipaměti

Jednou z funkcí chobotnice je schopnost pracovat v reverzním proxy režimu , známém také jako „akcelerátor“ („HTTP akcelerátor“). V tomto případě se namísto ukládání požadavků od více uživatelů na více webů do mezipaměti ukládají požadavky od více uživatelů na více webů. V tomto režimu se u přijatého požadavku kontroluje „dynamický“ (zda je nutné požadavek pokaždé zpracovat od začátku) a „stáří“ (zda jsou data stále relevantní). Pokud jsou data stále relevantní a nezměnila se, pak se požadavek neodešle na server, ale vrátí se z mezipaměti olihní. Zatížení serverů je tedy výrazně sníženo (například na Wikipedii jsou požadavky na stránky ukládány do mezipaměti, protože jejich obsah se při prohlížení nemění, zatímco zatížení serverů je mnohem menší - zpracování požadavku do mezipaměti je mnohem jednodušší než zpracování požadavku na SQL databázi , zpracování wiki značení a generování webové stránky ).

Kromě toho je „reverzní proxy“ schopen distribuovat požadavky mezi několik serverů, vyvažovat zátěž a/nebo poskytovat odolnost proti chybám, to znamená, že ve skutečnosti poskytuje funkce podobné clusteru .

Transparentní režim proxy

V kombinaci s některými firewally a routery může squid pracovat v transparentním proxy režimu .  V tomto režimu namísto přímého předávání požadavků HTTP uživatele na internetový server HTTP je směrovač předává na server proxy, který může běžet na samostatném hostiteli nebo na samotném směrovači. Proxy server požadavek zpracuje (s možným vrácením obsahu z cache), tento obsah je odeslán žádajícímu uživateli, pro kterého to vypadá jako „odpověď“ serveru, kterému byl požadavek adresován. Uživatel tedy nemusí ani vědět, že všechny požadavky a odpovědi prošly přes proxy.

S tímto přístupem proxy není autentizace poskytována, protože to znamená transparentnost proxy.

Výhody
  • Transparentní správce proxy nemusí konfigurovat každý klientský počítač tak, aby používal proxy.
Nevýhody
  • V režimu transparentnosti nejsou požadavky FTP a HTTPS zastoupeny proxy [8] .

Aby bylo možné používat proxy v transparentním režimu, musí být požadavky HTTPS zkompilovány s podporou SslBump [9] .

Poznámky

  1. Squid verze 5 .
  2. Poznámky k vydání Squid 5.7 .
  3. 12 Adresář svobodného softwaru
  4. Paul Smedley. Unixové porty pro OS/2 a  ArcaOS . Unixové porty pro OS/2 a ArcaOS od Paula Smedleyho . Získáno 13. května 2021. Archivováno z originálu dne 13. května 2021.
  5. Wikimedia servery - Meta . Získáno 21. září 2010. Archivováno z originálu 10. ledna 2010.
  6. Popis ACL v manuálu . Získáno 10. 5. 2008. Archivováno z originálu 1. 3. 2017.
  7. http://www.squid-cache.org/Versions/v2/2.6/cfgman/delay_class.html Archivováno 1. března 2017 na Wayback Machine Popis možnosti delay_class
  8. Transparentní proxy s Linuxem a Squid mini-HOWTO . Získáno 20. března 2011. Archivováno z originálu 18. března 2011.
  9. Chobotnice uprostřed SSL Bump . Staženo 22. března 2018. Archivováno z originálu 17. února 2018.

Odkazy