Android

Squid Proxy installeren en configureren op Centos 7

Настройка Squid в CentOS 7

Настройка Squid в CentOS 7

Inhoudsopgave:

Anonim

Squid is een complete cacheproxy die populaire netwerkprotocollen zoals HTTP, HTTPS, FTP en meer ondersteunt. Door Squid voor een webserver te plaatsen, kunnen de serverprestaties aanzienlijk worden verbeterd door herhaalde aanvragen in het cachegeheugen op te slaan, webverkeer te filteren en toegang te krijgen tot geo-beperkte inhoud.

In deze zelfstudie wordt uitgelegd hoe u Squid instelt op CentOS 7 en Firefox- en Google Chrome-webbrowsers configureert om de proxy te gebruiken.

Squid installeren op CentOS

Squid-pakket is inbegrepen in de standaard CentOS 7-opslagplaatsen. Om het te installeren voert u de volgende opdracht uit als sudo-gebruiker:

sudo yum install squid

Nadat de installatie is voltooid, start en schakel de Squid-service in:

sudo systemctl start squid sudo systemctl enable squid

Typ de volgende opdracht om de servicestatus af te drukken om te controleren of de installatie is geslaagd:

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…

Squid configureren

Squid kan worden geconfigureerd door het bestand /etc/squid/squid.conf bewerken. Extra bestanden met configuratie-opties kunnen worden opgenomen met behulp van de "include" -richtlijn.

Maak een back-up van het oorspronkelijke configuratiebestand met de opdracht cp voordat u wijzigingen aanbrengt:

sudo cp /etc/squid/squid.conf{,.orginal} Om het bestand te bewerken, opent u het in uw teksteditor:

sudo nano /etc/squid/squid.conf

Standaard is Squid geconfigureerd om te luisteren op poort 3128 op alle netwerkinterfaces op de server.

/etc/squid/squid.conf

# Squid normally listens to port 3128 http_port IP_ADDR:PORT

Squid uitvoeren op alle interfaces en op de standaardpoort zou voor de meeste gebruikers prima moeten zijn.

Je kunt de toegang tot de Squid-server beheren met behulp van de Access Control Lists (ACL's).

Standaard geeft Squid alleen toegang vanaf localhost en localnet.

Als alle clients die de proxy gebruiken een statisch IP-adres hebben, kunt u een ACL maken met de toegestane IP's.

In plaats van de IP-adressen in het hoofdconfiguratiebestand toe te voegen, maken we een nieuw speciaal bestand dat de IP's kan bevatten:

/etc/squid/allowed_ips.txt

192.168.33.1 # All other allowed IPs

Zodra u klaar bent, opent u het hoofdconfiguratiebestand en maakt u een nieuwe ACL met de naam allowed_ips (eerste gemarkeerde regel) en geeft u toegang tot die ACL met behulp van de http_access richtlijn (tweede gemarkeerde regel):

/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

De volgorde van de http_access regels is belangrijk. Zorg ervoor dat u de regel toevoegt voordat http_access deny all .

De http_access richtlijn werkt op dezelfde manier als de firewallregels. Squid leest de regels van boven naar beneden, en wanneer een regel overeenkomt, worden de onderstaande regels niet verwerkt.

Wanneer je wijzigingen aanbrengt in het configuratiebestand, moet je de Squid-service opnieuw opstarten om de wijzigingen van kracht te laten worden:

sudo systemctl restart squid

Inktvisverificatie

Squid kan verschillende back-ends gebruiken, waaronder Samba, LDAP en HTTP basic auth voor geverifieerde gebruikers.

In dit voorbeeld zullen we Squid configureren om basisverificatie te gebruiken. Het is een eenvoudige authenticatiemethode ingebouwd in het

We gebruiken de openssl om de wachtwoorden te genereren en de username:password toe te voegen aan het bestand /etc/squid/htpasswd met het tee commando zoals hieronder getoond:

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

Als u bijvoorbeeld een gebruiker met de naam "Mike" met het wachtwoord " Pz$lPk76 " wilt maken, voert u het volgende uit:

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

mike:2nkgQsTSPCsIo

De volgende stap is om Squid te configureren om de HTTP-basisverificatie in te schakelen en het bestand te gebruiken.

Open de hoofdconfiguratie en voeg het volgende toe:

/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

Met de eerste drie gemarkeerde lijnen maken we een nieuwe ACL met de naam authenticated . De laatste gemarkeerde regel geeft toegang aan geverifieerde gebruikers.

Start de Squid-service opnieuw:

sudo systemctl restart squid

Firewall configureren

sudo firewall-cmd --permanent --add-port=3128/tcp firewall-cmd --reload Als Squid op een andere, niet-standaard poort draait, moet je verkeer op die poort toestaan ​​met.

Uw browser configureren om proxy te gebruiken

Nu je Squid hebt ingesteld, is de laatste stap het configureren van de browser van je voorkeur om deze te gebruiken.

Firefox

De onderstaande stappen zijn hetzelfde voor Windows, macOS en Linux.

  1. Klik in de rechterbovenhoek op het hamburgerpictogram om het menu van Firefox te openen:

    Klik op de link ⚙ Preferences .

    Blader omlaag naar het gedeelte Network Settings en klik op de knop Settings…

    Er wordt een nieuw venster geopend.

    • Selecteer het keuzerondje Manual proxy configuration Voer het IP-adres van uw Squid-server in het veld HTTP Host in en 3128 in het veld Port Schakel het selectievakje Use this proxy server for all protocols Klik op de knop OK om de instellingen op te slaan.

Op dit moment is uw Firefox geconfigureerd en kunt u op internet surfen via de Squid-proxy. Om het te verifiëren, open google.com , typ "wat is mijn ip" en je zou het IP-adres van je Squid-server moeten zien.

Om terug te keren naar de standaardinstellingen, ga naar Network Settings , selecteer het keuzerondje Use system proxy settings en sla de instellingen op.

Er zijn ook verschillende plug-ins die u kunnen helpen bij het configureren van Firefox's proxy-instellingen zoals FoxyProxy.

Google Chrome

Google Chrome gebruikt de standaard systeemproxy-instellingen. In plaats van de proxy-instellingen van uw besturingssysteem te wijzigen, kunt u een add-on zoals SwitchyOmega gebruiken of de Chrome-webbrowser starten vanaf de opdrachtregel.

Gebruik de volgende opdracht om Chrome te starten met een nieuw profiel en verbinding te maken met de Squid-server:

Linux:

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

Ramen:

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

Het profiel wordt automatisch gemaakt als het niet bestaat. Op deze manier kunt u meerdere exemplaren van Chrome tegelijkertijd uitvoeren.

Om te bevestigen dat de proxyserver correct werkt, opent u google.com en typt u "wat is mijn ip". Het IP-adres dat in uw browser wordt weergegeven, moet het IP-adres van uw server zijn.

Conclusie

Je hebt geleerd hoe je squid op CentOS 7 installeert en je browser configureert om deze te gebruiken.

Squid is een van de populairste proxy-cacheservers. Het verbetert de snelheid van de webserver en kan u helpen de gebruikerstoegang tot internet te beperken.

proxy centos