Android

Hvordan installere og konfigurere blekksprutproxy på debian 10 linux

Backports: Newer software and kernel in Debian/Ubuntu-based distros!

Backports: Newer software and kernel in Debian/Ubuntu-based distros!

Innholdsfortegnelse:

Anonim

Squid er en fullverdig cache-proxy som støtter populære nettverksprotokoller som HTTP, HTTPS, FTP og mer. Den kan brukes til å forbedre webserverens ytelse ved å buffe gjentatte forespørsler, filtrere webtrafikk og få tilgang til geobegrenset innhold.

I denne opplæringen skal vi forklare hvordan du setter opp en blekksprutproxy på Debian Buster. Vi vil også vise deg hvordan du konfigurerer Firefox og Google Chrome nettlesere til å bruke den.

Installere blekksprut på Debian

Blekksprutpakken er inkludert i standarden på Debian 10-lagringene. Kjør følgende kommandoer som sudo-bruker for å installere Squid:

sudo apt update sudo apt install squid

Når installasjonen er fullført, starter blekksprut-tjenesten automatisk.

Kontroller at installasjonen var vellykket og at blekksprut-tjenesten kjører ved å sjekke statusen til blekksprut-tjenesten:

sudo systemctl status squid

● squid.service - LSB: Squid HTTP Proxy version 3.x Loaded: loaded (/etc/init.d/squid; generated) Active: active (running) since Sat 2019-08-03 08:52:47 PDT; 3s ago…

Konfigurere blekksprut

Blekksprut kan konfigureres ved å redigere konfigurasjonsfilen /etc/squid/squid.conf . Separate konfigurasjonsfiler kan inkluderes ved å bruke “include” -direktivet.

Konfigurasjonsfilen squid.conf inneholder kommentarer som beskriver hva hvert konfigurasjonsalternativ gjør.

Før du gjør endringer, er det alltid en god idé å sikkerhetskopiere den originale filen:

sudo cp /etc/squid/squid.conf{,.orginal}

Hvis du vil endre konfigurasjonen, åpner du filen i tekstredigeringsprogrammet:

sudo nano /etc/squid/squid.conf

Som standard lytter Squid på port 3128 på alle nettverksgrensesnitt.

/etc/squid/squid.conf

# Squid normally listens to port 3128 http_port IP_ADDR:PORT

Å kjøre blekksprut på alle grensesnitt og på standardport skal være bra for de fleste brukere.

Tilgangskontrollistene (ACL-er) lar deg kontrollere hvordan klientene kan få tilgang til nettressurser. Som standard tillater Squid bare tilgang fra localhost.

Hvis alle klientene som vil bruke proxy, har en statisk IP-adresse, er det enkleste alternativet å opprette en ACL som inkluderer de tillatte IP-ene.

I stedet for å legge til IP-adressene i hovedkonfigurasjonsfilen, oppretter vi en ny inkluderingsfil som lagrer IP-adressene:

/etc/squid/allowed_ips.txt

192.168.33.1 # All other allowed IPs

Når du er ferdig, åpner du hovedkonfigurasjonsfilen og oppretter en ny ACL som heter allowed_ips (første uthevede linje) og gir tilgang til den ACL ved hjelp av http_access direktivet (andre uthevede linje):

/etc/squid/squid.conf

#… acl allowed_ips src "/etc/squid/allowed_ips.txt" #… #http_access allow localnet http_access allow localhost http_access allow allowed_ips # And finally deny all other access to this proxy http_access deny all

Rekkefølgen på http_access reglene er viktig. Forsikre deg om at du legger til linjen før http_access deny all .

http_access direktivet fungerer på samme måte som brannmuren regler. Blekksprut leser reglene fra topp til bunn, og når en regel samsvarer, blir ikke reglene nedenfor behandlet.

Hver gang du gjør endringer i konfigurasjonsfilen, må du starte Squid-tjenesten på nytt for at endringene skal tre i kraft:

sudo systemctl restart squid

Godkjenning for blekksprut

Blekksprut kan bruke forskjellige bakenden, inkludert Samba, LDAP og HTTP grunnleggende autorisasjon til autentiserte brukere.

I dette eksemplet konfigurerer vi blekksprut til å bruke grunnleggende autorisasjon. Det er en enkel autentiseringsmetode innebygd i

Vi bruker openssl verktøyet til å generere passordene og legge til username:password til /etc/squid/htpasswd filen med tee kommandoen som vist nedenfor:

printf "USERNAME:$(openssl passwd -crypt PASSWORD)\n" | sudo tee -a /etc/squid/htpasswd

La oss opprette en bruker som heter "buster" med passord " Sz$Zdg69 ":

printf "buster:$(openssl passwd -crypt 'Sz$Zdg69')\n" | sudo tee -a /etc/squid/htpasswd

buster:RrvgO7NxY86VM

Neste trinn er å aktivere HTTP-grunnleggende godkjenning. Åpne hovedkonfigurasjonen og legg til følgende:

/etc/squid/squid.conf

#… auth_param basic program /usr/lib/squid3/basic_ncsa_auth /etc/squid/htpasswd auth_param basic realm proxy acl authenticated proxy_auth REQUIRED #… #http_access allow localnet http_access allow localhost http_access allow authenticated # And finally deny all other access to this proxy http_access deny all

De tre første uthevede linjene oppretter en ny ACL-navn som er authenticated og den siste uthevede linjen gir tilgang til autentiserte brukere.

Start blekksprut-tjenesten på nytt:

sudo systemctl restart squid

Konfigurere brannmuren

UFW-brukere kan åpne port 3128 ved å aktivere 'Squid' -profilen:

sudo ufw allow 'Squid'

sudo nft add rule inet filter input tcp dport 3128 ct state new, established counter accept Hvis blekksprut kjører på en annen port som ikke er standard, må du tillate trafikk på den porten.

Konfigurere nettleseren din til å bruke proxy

I denne delen viser du deg hvordan du konfigurerer nettleseren din til å bruke Squid proxy.

Firefox

Trinnene nedenfor er de samme for Windows, macOS og Linux.

  1. I øvre høyre hjørne, klikk på hamburgerikonet å åpne Firefox-menyen:

    Klikk på koblingen ⚙ Preferences .

    Bla ned til delen Network Settings og klikk på Settings… -knappen.

    Et nytt vindu åpnes.

    • Velg alternativknappen Manual proxy configuration Angi IP-adressen til blekksprutserveren i HTTP Host vertsfeltet og 3128 i portfeltet. Velg avkrysningsruten Use this proxy server for all protocols OK knappen for å lagre innstillingene.

På dette tidspunktet er Firefox konfigurert, og du kan surfe på Internett gjennom Squid-proxy. For å bekrefte det, åpne google.com , skriv "hva er min ip", og du skal se IP-adressen til blekksprut-serveren.

For å gå tilbake til standardinnstillingene, gå til Network Settings , velg alternativknappen Use system proxy settings og lagre innstillingene.

Det er også flere plugins som kan hjelpe deg med å konfigurere Firefox proxy-innstillinger, for eksempel FoxyProxy.

Google Chrome

Google Chrome bruker standard proxy-innstillinger. I stedet for å endre proxyinnstillingene for operativsystemet, kan du enten bruke et tillegg som SwitchyOmega eller starte Chrome nettleser fra kommandolinjen.

For å starte Chrome ved å bruke en ny profil og koble til blekksprut-serveren, bruk følgende kommando:

Linux:

/usr/bin/google-chrome \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"

Mac os:

"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome" \ --user-data-dir="$HOME/proxy-profile" \ --proxy-server="http://SQUID_IP:3128"

Windows:

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" ^ --user-data-dir="%USERPROFILE%\proxy-profile" ^ --proxy-server="http://SQUID_IP:3128"

Profilen opprettes automatisk hvis den ikke eksisterer. På denne måten kan du kjøre flere forekomster av Chrome samtidig.

For å bekrefte at proxy-serveren fungerer som den skal, åpner du google.com og skriver “what is my ip”. IP-en som vises i nettleseren din skal være IP-adressen til serveren din.

Konklusjon

Vi har dekket det grunnleggende om hvordan du installerer Squid på Debian 10 og konfigurerer nettleseren din til å bruke den.

Squid er en av de mest populære proxy-hurtigbufringsserverne. Det forbedrer hastigheten på webserveren og kan hjelpe deg med å begrense brukertilgang til Internett.

fullmakt debian