I datornätverk är en proxyserver en server (dator) som klienter (personer eller datorer) använder för att komma åt andra datorer eller tjänster. Namnet kommer från att proxyservern fungerar som en proxy — en ställföreträdare — och agerar på uppdrag av en klients dator. När en klient ansluter till proxyservern begär den en tjänst, till exempel en fil, en anslutning eller en webbsida, som finns på en annan server. Proxyservern går då vidare till den andra servern och hämtar det klienten efterfrågar.
En proxyserver som vidarebefordrar information utan att ändra den brukar kallas för en gateway eller ibland för tunnelsektorproxy. En proxyserver kan dessutom ändra, filtrera eller logga den information som passerar igenom den.
Var kan proxyservern placeras?
En proxyserver kan placeras var som helst mellan klienten och servern: som programvara på klientdatorn (lokal proxy), som en nätverksappliance i företagets interna nätverk eller som en tjänst hos en extern leverantör. Valet påverkar prestanda, säkerhet och kontrollmöjligheter.
Vanliga funktioner
- Vidarebefordran — tar emot klientens förfrågan och skickar den till den externa servern.
- Caching — lagrar ofta begärda resurser för att minska svarstider och trafikmängd.
- Filtrering och åtkomstkontroll — blockerar, begränsar eller tillåter åtkomst baserat på regler (URL, innehåll, användare).
- Autentisering — kräver inloggning för att använda proxyen, vilket ger kontroll över vem som surfar.
- Loggning och övervakning — sparar loggar för felsökning, revision och säkerhetsanalys.
- Säkerhetstjänster — virus-/malwareskanning, intrångsdetektion eller TLS-terminering.
- Lastbalansering — särskilt vid reverse proxy, fördela trafik mellan flera backend-servrar.
Cachelagring — hur och varför
En proxyserver kan använda en cache för att lagra kopior av tidigare begärda resurser. Om samma information används ofta eller av många klienter kan en cache ge avsevärt snabbare svarstider och minska belastningen på ursprungsservern.
Viktiga tekniska aspekter av caching:
- Cache-hit — när proxyservern har den efterfrågade resursen i cachen och kan leverera den direkt.
- Cache-miss — när resursen inte finns i cachen och måste hämtas från ursprungsservern.
- Tidsgränser och validering — cachelagrade objekt har oftast en TTL (time-to-live). Proxyservern kan också göra revalidation via HTTP-headers som If-Modified-Since eller ETag.
- Evictionsstrategier — när cachen är full används ofta algoritmer som LRU (least recently used) för att ta bort gamla objekt.
- Friskhet och stale-policy — hantering av utdaterat innehåll (t.ex. stale-if-error) för att ge tillförlitliga svar även om ursprungsservern är otillgänglig.
- Säkerhetsrisker — felkonfigurerade cacher kan leda till cache-poisoning eller exponering av känsliga uppgifter om inte rätt headers och regler tillämpas.
Säkerhet och sekretess
Säkerhet är en central fråga när man använder proxyservrar. Några viktiga punkter är:
- Vissa proxyservrar använder SSL (Secure Sockets Layer) för att säkra anslutningen mellan klienten och fjärrservern. Detta säkerhetslager hjälper till att se till att inga andra datorer kan läsa eller förstå vad klienten begär av servern. (Notera att dagens standard är TLS, som är efterföljaren till SSL.)
- TLS-terminering och inspektion — en proxy kan terminera TLS-anslutningar för att inspektera innehåll och därefter upprätta en ny TLS-anslutning mot ursprungsservern. Det ger möjligheter till säkerhetsskanning men innebär också att proxyn får åtkomst till klartextdata, vilket ställer höga krav på förtroende och skydd av nycklar.
- Autentisering och åtkomstkontroller — användare kan krävas logga in och tilldelas olika rättigheter, ofta med hjälp av ACL:er (access control lists).
- Loggning och integritet — proxyservrar loggar ofta all trafik. Dessa loggar kan innehålla känslig information och måste hanteras enligt gällande lagar och policyer (t.ex. GDPR).
- Risk för öppna eller illasinnade proxies — offentliga öppna proxies kan användas för skadliga ändamål eller läcka data. Använd endast betrodda eller egenägda proxytjänster för känslig trafik.
Typer av proxyservrar
- Forward proxy — agerar på uppdrag av klienter i interna nätverk för att nå internet.
- Reverse proxy — fungerar som en ingångspunkt mot en eller flera backend-servrar; används för caching, lastbalansering och säkerhet.
- Transparent proxy — kräver ingen klientkonfiguration; klienten känner ofta inte till att en proxy används.
- Anonyma och hög-anonyma proxies — döljer klientens IP till varierande grad; hög-anonyma ("elite") proxies gömmer att en proxy används.
- SOCKS vs HTTP-proxy — SOCKS fungerar på lägre nivå (t.ex. TCP) och kan hantera annan trafik än HTTP, medan HTTP-proxy är specialiserad för webbförfrågningar.
- Gateway (gateway/tunneling) — vissa proxylösningar fungerar som gateway/tunnel för att vidarebefordra okrypterad eller krypterad trafik.
Användningsområden
- Förbättrad prestanda genom caching och minskad bandbreddsanvändning.
- Kontroll och övervakning i företagsnätverk — t.ex. blockering av vissa webbplatser eller loggning av användarbeteende.
- Säkerhetstjänster — antivirus-/malwareskanning, brandväggsfunktioner och DDoS-skydd i kombination med reverse proxies.
- Privacy och anonymitet — dölja klientens identitet gentemot externa tjänster (med reservation för loggning på proxyservern).
- CDN-liknande funktioner — geografiskt distribuerade proxys/cacher för snabbare leverans av innehåll.
Bästa praxis och överväganden vid drift
- Håll proxyprogramvara uppdaterad för att minska sårbarheter.
- Använd kryptering (TLS) för att skydda känslig kommunikation; hantera nycklar och certifikat säkert.
- Begränsa åtkomst med autentisering och ACL:er, och separera administratörsgränssnitt från användartrafik.
- Planera cache-storlek och eviction-policy efter trafikmönster.
- Säkra och begränsa loggar, anonymisera eller radera dem enligt policy och lagkrav.
- Undvik att använda osäkra öppna proxies för känslig trafik.
Sammanfattningsvis är proxyservrar mångsidiga verktyg som kan förbättra prestanda, öka säkerheten och ge kontroll över nätverkstrafik, men de kräver noggrann konfiguration och löpande underhåll för att undvika integritets- eller säkerhetsrisker.

