Sådan installeres og konfigureres blæksprutte fuldmagt på CentOS 7

blæksprutte er en komplet cache-fuldmagt, der understøtter populære netværksprotokoller som HTTP, HTTPS, FTP og mere. Placering af blæksprutte foran en internetserver kan i høj grad forbedre serverens ydeevne ved at cachelagre gentagne anmodninger, filtrere internettrafik og få adgang til geobegrænset indhold.

denne vejledning forklarer, hvordan du konfigurerer blæksprutte på CentOS 7 og konfigurerer Google Chrome til at bruge fuldmagten.

installation blæksprutte på CentOS #

blæksprutte pakke er inkluderet i standard CentOS 7 repositories. For at installere det køre følgende kommando som sudo bruger:

sudo yum install squid

når installationen er afsluttet, skal du starte og aktivere blæksprutte-tjenesten:

sudo systemctl start squidsudo systemctl enable squid

for at kontrollere, at installationen var vellykket, skal du skrive følgende kommando, der udskriver servicestatus:

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

konfiguration af blæksprutte #

blæksprutte kan konfigureres ved at redigere filen /etc/squid/squid.conf. Yderligere filer med konfigurationsindstillinger kan inkluderes ved hjælp af “Inkluder” – direktivet.

før du foretager ændringer, skal du sikkerhedskopiere den originale konfigurationsfil med kommandoen cp:

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

for at redigere filen skal du åbne den i din teksteditor:

sudo nano /etc/squid/squid.conf

som standard er blæksprutte konfigureret til at lytte på port 3128 på alle netværksgrænseflader på serveren.

hvis du vil ændre porten og indstille en lyttegrænseflade, skal du finde linjen, der starter med http_port, og angive interface-IP-adressen og den nye port. Hvis der ikke er angivet nogen grænseflade blæksprutte vil lytte på alle grænseflader.

/etc/blæksprutte/blæksprutte.conf
# Squid normally listens to port 3128http_port IP_ADDR:PORT

at køre blæksprutte på alle grænseflader og på standardporten skal være fint for de fleste brugere.

du kan styre adgangen til Blæksprutteserveren ved hjælp af Adgangskontrollisterne (ACLs).

som standard tillader blæksprutte kun adgang fra localhost og localnet.

hvis alle de klienter, der bruger fuldmagten, har en statisk IP-adresse, kan du oprette en ACL, der inkluderer de tilladte IP ‘ er.

i stedet for at tilføje IP-adresserne i hovedkonfigurationsfilen opretter vi en ny dedikeret fil, der indeholder IPs:

/etc/blæksprutte/tilladt_ips.TST
192.168.33.1# All other allowed IPs

når du er færdig, skal du åbne hovedkonfigurationsfilen og oprette en ny ACL med navnet allowed_ips (første fremhævede linje) og give adgang til den ACL ved hjælp af http_access direktivet (anden fremhævede linje):

/etc/blæksprutte/blæksprutte.conf
# ...acl allowed_ips src "/etc/squid/allowed_ips.txt"# ...http_access allow localnethttp_access allow localhosthttp_access allow allowed_ips# And finally deny all other access to this proxyhttp_access deny all

rækkefølgen af http_access regler er vigtig. Sørg for at tilføje linjen før http_access deny all.

http_access direktivet fungerer på samme måde som brandvægsreglerne. Blæksprutte læser reglerne fra top til bund, og når en regel matcher reglerne nedenfor ikke behandles.

når du foretager ændringer i konfigurationsfilen, skal du genstarte blæksprutte-tjenesten for at ændringerne skal træde i kraft:

sudo systemctl restart squid

blæksprutte autentificering #

blæksprutte kan bruge forskellige bagender, herunder Samba, LDAP og HTTP basic auth til godkendte brugere.

i dette eksempel konfigurerer vi blæksprutte til at bruge basic auth. Det er en simpel godkendelsesmetode indbygget i HTTP-protokollen.

vi bruger openssl til at generere adgangskoder og tilføje username:password par til /etc/squid/htpasswd filen med kommandoen tee som vist nedenfor:

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

for eksempel at oprette en bruger ved navn ” mike “med adgangskode” Pz$lPk76 ” du ville køre:

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

det næste trin er at konfigurere blæksprutte for at aktivere HTTP basic-godkendelse og bruge filen.

Åbn hovedkonfigurationen og tilføj følgende:

/etc/blæksprutte/blæksprutte.conf
# ...auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/htpasswdauth_param basic realm proxyacl authenticated proxy_auth REQUIRED# ...http_access allow localnethttp_access allow localhosthttp_access allow authenticated# And finally deny all other access to this proxyhttp_access deny all

med de første tre fremhævede linjer opretter vi en ny ACL med navnet authenticated. Den sidste fremhævede linje giver adgang til godkendte brugere.

genstart blæksprutte service:

sudo systemctl restart squid

konfiguration af brandvæg #

hvis du kører en brandvægdu skal åbne port 3128. For at gøre det skal du køre følgende kommandoer:

sudo firewall-cmd --permanent --add-port=3128/tcpfirewall-cmd --reload
hvis blæksprutte kører på en anden, ikke-standardport, skal du tillade trafik på den port med.

#

nu hvor du har oprettet blæksprutte, er det sidste trin at konfigurere din foretrukne bro.ser til at bruge den.

brandbekæmpelse #

nedenstående trin er de samme for macOS.

  1. klik på hamburgerikonet i øverste højre hjørne for at åbne menuen:

  2. Klik på linket ⚙ Preferences.

  3. Rul ned til Network Settings sektionen og klik på Settings... knappen.

  4. et nyt vindue åbnes.

    • vælg alternativknappen Manual proxy configuration.
    • Indtast din IP-adresse i feltet HTTP Host og 3128 i feltet Port.
    • Marker afkrydsningsfeltet Use this proxy server for all protocols.
    • Klik på knappen OK for at gemme indstillingerne.
    brandmand blæksprutte fuldmægtig

på dette tidspunkt, din Firefoks er konfigureret, og du kan surfe på internettet via blæksprutte fuldmagt. For at bekræfte det skal du åbne google.com, skrive “hvad er min ip”, og du skal se din blæksprutte server IP-adresse.

for at vende tilbage til standardindstillingerne skal du gå til Network Settings, vælge alternativknappen Use system proxy settings og gemme indstillingerne.

der er også flere plugins, der kan hjælpe dig med at konfigurere f.eks.

Google Chrome #

Google Chrome bruger standardindstillingerne for systemets fuldmagt. I stedet for at ændre indstillingerne for dit operativsystem kan du enten bruge en tilføjelse som f.eks.

for at starte Chrome ved hjælp af en ny profil og oprette forbindelse til Blæksprutteserveren skal du bruge følgende kommando:

:

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

macOS :

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

vinduer :

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

profilen oprettes automatisk, hvis den ikke findes. På denne måde kan du køre flere forekomster af Chrome på samme tid.

for at bekræfte, at fuldmagts-serveren fungerer korrekt, skal du åbne google.com og skrive “hvad er min ip”. Den IP, der vises på din server, skal være IP-adressen på din server.

konklusion #

du har lært, hvordan du installerer blæksprutte på CentOS 7 og konfigurerer din bro.ser til at bruge den.

blæksprutte er en af de mest populære fuldmægtige caching servere. Det forbedrer hastigheden på internetserveren og kan hjælpe dig med at begrænse brugeradgang til internettet.

Leave a Reply

Din e-mailadresse vil ikke blive publiceret.