Android

Hoe squid proxy op ubuntu 18.04 te installeren en configureren

Ubuntu Server 18.04 - Install Squid Proxy Server

Ubuntu Server 18.04 - Install Squid Proxy Server

Inhoudsopgave:

Anonim

Squid is een complete cacheproxy die populaire netwerkprotocollen zoals HTTP, HTTPS, FTP en meer ondersteunt. Squid wordt meestal gebruikt om de prestaties van de webserver te verbeteren door herhaalde aanvragen in het cachegeheugen op te slaan, webverkeer te filteren en toegang te krijgen tot geo-beperkte inhoud.

Deze tutorial leidt je door het proces van het instellen van een Squid Proxy op Ubuntu 18.04 en het configureren van Firefox en Google Chrome webbrowsers om het te gebruiken.

Squid installeren op Ubuntu

Squid-pakket is inbegrepen in de standaard Ubuntu 18.04-opslagplaatsen. Om het te installeren voert u de volgende opdrachten in als sudo-gebruiker:

sudo apt update sudo apt install squid

Nadat de installatie is voltooid, wordt de Squid-service automatisch gestart.

Om te controleren of de installatie is geslaagd en Squid-service actief is, typt u de volgende opdracht die de servicestatus zal afdrukken:

sudo systemctl status squid

● squid.service - LSB: Squid HTTP Proxy version 3.x Loaded: loaded (/etc/init.d/squid; generated) Active: active (running) since Thu 2019-06-27 11:45:17 UTC…

Squid configureren

Squid kan worden geconfigureerd door het bestand /etc/squid/squid.conf bewerken. U kunt ook afzonderlijke bestanden gebruiken met configuratie-opties die kunnen worden opgenomen met behulp van de "include" -richtlijn.

Het configuratiebestand bevat opmerkingen die beschrijven wat elke configuratie-optie doet.

Voordat u wijzigingen aanbrengt, is het een goed idee om een ​​back-up te maken van het oorspronkelijke configuratiebestand:

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.

In Squid kun je bepalen hoe de clients toegang kunnen krijgen tot de webbronnen met behulp van de Access Control Lists (ACL's).

Standaard staat Squid alleen toegang toe vanaf de localhost.

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 deze zelfstudie zullen we Squid configureren om basisverificatie te gebruiken. Het is een eenvoudige authenticatiemethode ingebouwd in het

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

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

Laten we een gebruiker met de naam "josh" maken met het wachtwoord " Sz$Zdg69 ":

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

josh:RrvgO7NxY86VM

Nu de gebruiker is gemaakt, is de volgende stap het inschakelen van de HTTP-basisverificatie en het opnemen van het htpasswd bestand.

Open de hoofdconfiguratie en voeg het volgende toe:

/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 eerste drie gemarkeerde regels maken een nieuwe ACL met de naam authenticated en de laatste gemarkeerde regel geeft toegang aan geverifieerde gebruikers.

Start de Squid-service opnieuw:

sudo systemctl restart squid

Firewall configureren

Ervan uitgaande dat u UFW gebruikt om uw firewall te beheren, moet u teg Squid-poort openen. Schakel daarvoor het 'Squid'-profiel in met regels voor de standaard Squid-poorten.

sudo ufw allow 'Squid'

Om het statustype te verifiëren:

sudo ufw status

De uitvoer ziet er ongeveer als volgt uit:

Status: active To Action From -- ------ ---- 22/tcp ALLOW Anywhere Squid ALLOW Anywhere 22/tcp (v6) ALLOW Anywhere (v6) Squid (v6) ALLOW Anywhere (v6) Als Squid wordt uitgevoerd op een andere, niet-standaard poort, bijvoorbeeld 8888 kun je verkeer op die poort sudo ufw allow 8888/tcp met: sudo ufw allow 8888/tcp .

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 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 verschillende plug-ins die u ook kunnen helpen om de proxy-instellingen van Firefox zoals FoxyProxy te configureren.

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 Ubuntu 18.04 installeert en je browser configureert om het 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 ubuntu