Android

Hvordan installere og konfigurere blekksprutproxy på centos 7

Configure Squid Proxy in Redhat Linux/CentOS | Restrict Websites, Hours, Files & Downloads by Squid

Configure Squid Proxy in Redhat Linux/CentOS | Restrict Websites, Hours, Files & Downloads by Squid

Innholdsfortegnelse:

Anonim

Squid er en fullverdig cache-proxy som støtter populære nettverksprotokoller som HTTP, HTTPS, FTP og mer. Plassering av blekksprut foran en webserver kan forbedre serverens ytelse betydelig ved å cache gjentatte forespørsler, filtrere webtrafikk og få tilgang til geobegrenset innhold.

Denne opplæringen forklarer hvordan du konfigurerer Squid på CentOS 7 og konfigurerer nettlesere Firefox og Google Chrome til å bruke proxy.

Installere blekksprut på CentOS

Blekksprutpakken er inkludert i standard CentOS 7-lagringene. For å installere den, kjør følgende kommando som sudo-bruker:

sudo yum install squid

Når installasjonen er fullført, start og aktiver Squid-tjenesten:

sudo systemctl start squid sudo systemctl enable squid

For å bekrefte at installasjonen var vellykket, skriver du inn følgende kommando som skal skrive ut tjenestestatusen:

sudo systemctl status squid

● squid.service - Squid caching proxy Loaded: loaded (/usr/lib/systemd/system/squid.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2019-07-13 16:47:56 UTC; 12s ago…

Konfigurere blekksprut

Blekksprut kan konfigureres ved å redigere filen /etc/squid/squid.conf . Ytterligere filer med konfigurasjonsalternativer kan inkluderes ved å bruke "inkluderer" -direktivet.

Før du gjør noen endringer, sikkerhetskopier den originale konfigurasjonsfilen med cp kommandoen:

sudo cp /etc/squid/squid.conf{,.orginal} Hvis du vil redigere filen, åpner du den i tekstredigeringsprogrammet:

sudo nano /etc/squid/squid.conf

Som standard er Squid konfigurert til å lytte på port 3128 på alle nettverksgrensesnitt på serveren.

/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.

Du kan kontrollere tilgangen til blekksprut-serveren ved å bruke tilgangskontrollistene (ACL-er).

Som standard tillater Squid bare tilgang fra localhost og localnet.

Hvis alle klientene som vil bruke proxy, har en statisk IP-adresse, kan du opprette en ACL som inkluderer de tillatte IP-ene.

I stedet for å legge til IP-adressene i hovedkonfigurasjonsfilen, oppretter vi en ny dedikert fil som vil inneholde IP-ene:

/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 å 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

For å lage en bruker som heter "mike" med passordet " Pz$lPk76 ", vil du for eksempel kjøre:

printf "mike:$(openssl passwd -crypt 'Pz$lPk76')\n" | sudo tee -a /etc/squid/htpasswd

mike:2nkgQsTSPCsIo

Neste trinn er å konfigurere Squid for å aktivere HTTP grunnleggende autentisering og bruke filen.

Åpne hovedkonfigurasjonen og legg til følgende:

/etc/squid/squid.conf

#… auth_param basic program /usr/lib64/squid/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

Med de tre første uthevede linjene oppretter vi en ny ACL med navnet authenticated . Den siste uthevede linjen er å gi tilgang til autentiserte brukere.

Start blekksprut-tjenesten på nytt:

sudo systemctl restart squid

Konfigurere brannmuren

sudo firewall-cmd --permanent --add-port=3128/tcp firewall-cmd --reload Hvis blekksprut kjører på en annen port som ikke er standard, må du tillate trafikk på den porten med.

Konfigurere nettleseren din til å bruke proxy

Nå som du har satt opp blekksprut, er det siste trinnet å konfigurere den foretrukne nettleseren din til å bruke den.

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 Klikk på 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

Du har lært hvordan du installerer blekksprut på CentOS 7 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 centos