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.
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]
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):
Squid understøtter flere typer brugergodkendelse:
Til identifikation ved login/adgangskode er det muligt at bruge:
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 omdirigeringSkrevet specifikt til SQUID, bruger direkte oplysningerne i databasen. Giver dig mulighed for at aktivere anden anmodningsomdirigering for brugere (justeret af brugerskabeloner). SAMS Redirector giver:
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æksprutteDenne 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".
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.
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 .
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.
FordeleFor at kunne proxy i transparent tilstand skal HTTPS - anmodninger kompileres med understøttelse af SslBump [9] .