Blæksprutte

Den aktuelle version af siden er endnu ikke blevet gennemgået af erfarne bidragydere og kan afvige væsentligt fra den version , der blev gennemgået den 13. maj 2021; checks kræver 9 redigeringer .
Blæksprutte

Squid logo
Type proxyserver
Udvikler Squid Software Foundation [d]
Skrevet i C++
Operativ system GNU/Linux [3] , BSD og Microsoft Windows
Første udgave juli 1996
Hardware platform Microsoft Windows
nyeste version 5.7 [1] [2] ( 5. september 2022 )
Licens GNU GPL 2+ [3]
Internet side squid-cache.org

Squid  ( engelsk  squid  - "squid") er en softwarepakke, der implementerer funktionen af ​​en caching -proxyserver til HTTP , FTP , Gopher og (hvis passende konfigureret) HTTPS-protokoller . Udviklet af fællesskabet som et open source-program (distribueret under GNU GPL ). Alle anmodninger behandles som en enkelt ikke-blokerende I/O -proces .

Det bruges i UNIX-lignende systemer og i OS i Windows NT -familien . Den har evnen til at interagere med Active Directory Windows Server ved godkendelse gennem LDAP , som giver dig mulighed for at bruge adgangskontrol til internetressourcer for brugere, der har konti på Windows Server, og giver dig også mulighed for at organisere "skære" internettrafik for forskellige brugere.

Anvendes i forbindelse med Mediawiki- motorer på wiki-hosting. Brug af en caching proxyserver til websteder bliver rentabel fra omkring 2000 besøgende om dagen.

Kompatibilitet

Squid-serveren har været under udvikling i mange år. Giver kompatibilitet med de vigtigste internetprotokoller såvel som med operativsystemer:

Squid bruges også af Wikimedia -systemet . [5]

Beskrivelse af arkitektur

Adgangskontrollister

Adgangskontrollister [6] ( adgangskontrolliste , acl) bruges til at kontrollere adgangen til ressourcer og bestemme en række handlinger . Hver ACL kan bestå af flere kriterier (men kun én type):  

Identifikation

Squid understøtter flere typer brugergodkendelse:

Til identifikation ved login/adgangskode er det muligt at bruge:

Begrænsning af adgang for grupper

Omdirigerere

Squid har evnen til at omskrive anmodede URL'er. Squid kan konfigureres til at sende indgående URL'er gennem en omdirigeringsproces, der kører som en ekstern proces (svarende til dnsserver), der returnerer en ny URL eller en tom streng, der indikerer ingen ændring.

Omdirigeringen er ikke en standard del af Squid-pakken. Redirectoren giver administratoren kontrol over brugernes bevægelser. Brugen af ​​en omdirigering i kombination med gennemsigtig proxying giver enkel, men effektiv kontrol over adgangen til uønskede ressourcer (for eksempel underholdningsressourcer og sociale netværk på et virksomhedsnetværk , pornografi ). Redirectoren skal læse URL'er (én pr. linje) fra standardinput og skrive ændrede URL'er eller tomme linjer til standardoutput. Det skal bemærkes, at omdirigeringsprogrammet ikke kan bruge bufferet I/O. Squid tilføjer yderligere oplysninger efter URL'en, som omdirigeren kan bruge til at træffe en beslutning.

SAMS (SQUID Account Management System) er et softwareværktøj til at administrere brugeradgang til Squid-proxyserveren.

I øjeblikket konfigurerer SAMS omdirigerernes arbejde:

Typer af omdirigerere:

SAMS omdirigering

Skrevet specifikt til SQUID, bruger direkte oplysningerne i databasen. Giver dig mulighed for at aktivere anden anmodningsomdirigering for brugere (justeret af brugerskabeloner). SAMS Redirector giver:

SquidGuard Redirector

Kraftig omdirigering med fantastiske funktioner. Redirectoren inkluderer lister over banner-, porno- og andre domæner. SAMS tilføjer til SquidGuard- konfigurationsfilen squidguard.conf-indstillinger for blokerede domænelister og SAMS-adgangsomdirigering. Indstillinger for lister, der følger med SquidGuard, ændres eller slettes ikke.

Når du bruger SquidGuard redirector, indtastes acls i squid.conf filen, hvilket giver alle brugere adgang til SQUID. Begrænsning af brugeradgang organiseres ved hjælp af omdirigeringen.

Standard Blæksprutte

Denne omdirigering er beskrevet i SQUID-dokumentationen. Skrevet i perl. En omdirigerer oprettes, efter at der er udstedt en kommando for at rekonfigurere SQUID'en baseret på listerne for videresendelse af anmodninger. Hurtig og let redirector, men skelner ikke mellem brugere.

Når du bruger denne omdirigering, organiseres begrænsningen af ​​brugeradgang ved afvisningslister ved hjælp af ACL SQUID. Når du bruger SQUID-omdirigeren, eller hvis redirectoren slet ikke bruges, så er der mulighed for, at når brugere afbrydes på grund af overskridende trafik, har de stadig adgang til de URL- og IP-adresser, der er angivet på listen "Lokale domæner".

Maksimal grænse for forbindelseshastighed

Begrænsning af den maksimale hastighed for modtagelse af brugeren (brugerne) i blæksprutte er implementeret ved hjælp af den engelske mekanisme.  forsinkelsespuljer (bogstaveligt talt - "forsinkelsespuljer"). Den hastighedsbegrænsende mekanisme fungerer efter princippet om en pool (deraf navnet pool (pool)), hvori information "flyder" og "flyder ud". Separate hukommelsesområder konfigureret på denne måde kaldes engelsk.  spand (spand). Skovlen har parametre: "kapacitet", "påfyldningshastighed". Hvis brugeren/brugerne modtager information med en hastighed, der er lavere end "fyldningshastigheden", så er spanden altid fuld. Hvis brugeren kortvarigt hæver hastigheden for at modtage information over påfyldningshastigheden, så indtil det øjeblik, hvor spanden er tom, er han ikke begrænset i hastighed, så snart spanden bliver tom, modtager klienten information med den hastighed, hvormed spanden fyldes . Hvis der er gruppe- og individuelle buckets, aktiveres de sekventielt.

Der er tre typer (klasser) af forsinkelsespuljer [7] :

For hver spand er to parametre angivet: kapacitet og påfyldningshastighed. −1 betyder "ingen grænse".

Hittet af brugere i en eller anden bucket bestemmes af adgangslister til buckets, de ses i den rækkefølge, de er nævnt i konfigurationsfilen indtil den første match. Brugere, der ikke falder i nogen af ​​spandene, er ikke begrænset i hastighed.

Omvendt caching

En af funktionerne ved blæksprutte er evnen til at arbejde i omvendt proxy -tilstand , også kendt som en "accelerator" ("HTTP-accelerator"). I dette tilfælde, i stedet for at cache anmodninger fra flere brugere til flere websteder, cachelagres anmodninger fra flere brugere til flere websteder. I denne tilstand kontrolleres den modtagne anmodning for "dynamisk" (om det er nødvendigt at behandle anmodningen fra bunden hver gang) og "alder" (om dataene stadig er relevante). Hvis dataene stadig er relevante og ikke har ændret sig, sendes anmodningen ikke til serveren, men returneres fra blækspruttecachen. Således reduceres belastningen på serverne betydeligt (for eksempel på Wikipedia cachelagres sideanmodninger, da deres indhold ikke ændres fra visning, mens belastningen på serverne er meget mindre - behandling af en anmodning til cachen er meget lettere end at behandle en anmodning til SQL -databasen , behandle wiki -markering og generering af websider ).

Derudover er en "omvendt proxy" i stand til at distribuere anmodninger mellem flere servere, afbalancere belastningen og/eller give fejltolerance, dvs. faktisk giver funktionalitet svarende til en klynge .

Gennemsigtig proxy-tilstand

I kombination med nogle firewalls og routere kan blæksprutte fungere i transparent proxy -tilstand .  I denne tilstand, i stedet for direkte at videresende brugerens HTTP-anmodninger til en Internet HTTP-server , videresender routeren dem til en proxyserver, der kan køre på en separat vært eller på selve routeren. Proxyserveren behandler anmodningen (med eventuel returnering af indhold fra cachen), dette indhold sendes til den anmodende bruger, for hvem det ligner et "svar" fra den server, som anmodningen er adresseret til. Således ved brugeren muligvis ikke engang, at alle anmodninger og svar er gået gennem proxyen.

Med denne fremgangsmåde til fuldmagt gives der ikke autentificering, da gennemsigtigheden af ​​fuldmagt indebærer dette.

Fordele
  • Den gennemsigtige proxyadministrator behøver ikke at konfigurere hver klientmaskine for at bruge proxyen.
Ulemper
  • I gennemsigtighedstilstand sendes FTP- og HTTPS -anmodninger ikke som proxy [8] .

For at kunne proxy i transparent tilstand skal HTTPS - anmodninger kompileres med understøttelse af SslBump [9] .

Noter

  1. Squid version 5 .
  2. Squid 5.7 release notes .
  3. 12 Gratis softwarekatalog
  4. Paul Smedley. Unix-porte til OS/2 og  ArcaOS . Unix-porte til OS/2 & ArcaOS af Paul Smedley . Hentet 13. maj 2021. Arkiveret fra originalen 13. maj 2021.
  5. Wikimedia-servere - Meta . Hentet 21. september 2010. Arkiveret fra originalen 10. januar 2010.
  6. ACL-beskrivelse i manualen . Hentet 10. maj 2008. Arkiveret fra originalen 1. marts 2017.
  7. http://www.squid-cache.org/Versions/v2/2.6/cfgman/delay_class.html Arkiveret 1. marts 2017 på Wayback Machine Beskrivelse af muligheden for delay_class
  8. Gennemsigtig proxy med Linux og Squid mini-HOWTO . Hentet 20. marts 2011. Arkiveret fra originalen 18. marts 2011.
  9. Blæksprutte i midten SSL Bump . Hentet 22. marts 2018. Arkiveret fra originalen 17. februar 2018.

Links