Squid-välityspalvelimen asentaminen ja määrittäminen CentOS 7: ssä

Squid on monipuolinen välimuisti, joka tukee suosittuja verkkoprotokollia, kuten HTTP, HTTPS, FTP ja paljon muuta. Squid-palvelun asettaminen verkkopalvelimen eteen voi parantaa huomattavasti palvelimen suorituskykyä tallentamalla toistuvia pyyntöjä välimuistiin, suodattamalla verkkoliikennettä ja käyttämällä aluerajoitettua sisältöä.

tämä opetusohjelma kertoo, miten Squid asetetaan CentOS 7: ään ja Firefox-ja Google Chrome-verkkoselaimet asetetaan käyttämään välityspalvelinta.

Squid-paketin asentaminen CentOS #

Squid-pakettiin sisältyy CentOS 7: n oletusvarastoihin. Asentaa sen suorita seuraava komento sudo käyttäjä:

sudo yum install squid

kun asennus on valmis, käynnistä Squid-palvelu ja ota se käyttöön:

sudo systemctl start squidsudo systemctl enable squid

jos haluat varmistaa, että asennus onnistui, kirjoita seuraava komento, joka tulostaa palvelun tilan:

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

configuring Squid #

Squid voidaan konfiguroida muokkaamalla /etc/squid/squid.conf – tiedostoa. Muita asetuksia sisältäviä tiedostoja voidaan sisällyttää ”include” – direktiiviin.

ennen kuin teet muutoksia, varmuuskopioi alkuperäinen asetustiedosto komennolla cp:

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

jos haluat muokata tiedostoa, avaa se tekstieditorissa:

sudo nano /etc/squid/squid.conf

oletuksena Squid on määritetty kuuntelemaan portilla 3128 kaikilla palvelimen verkkoliitännöillä.

jos haluat vaihtaa porttia ja asettaa kuunteluliittymän, etsi rivi, joka alkaa numerolla http_port, ja määritä liittymän IP-osoite ja uusi portti. Jos rajapintaa ei ole määritelty, Squid kuuntelee kaikilla rajapinnoilla.

/ etc/kalmari / kalmari.conf
# Squid normally listens to port 3128http_port IP_ADDR:PORT

Running Squid kaikilla rajapinnoilla ja oletusportti pitäisi olla kunnossa useimmille käyttäjille.

voit hallita pääsyä Squid-palvelimelle Access Control Lists (ACLS) – järjestelmän avulla.

oletusarvoisesti Squid sallii pääsyn vain localhostista ja localnetistä.

jos kaikilla välityspalvelinta käyttävillä asiakkailla on staattinen IP-osoite, voit luoda ACL: n, joka sisältää sallitut IP-osoitteet.

sen sijaan, että IP-osoitteet lisättäisiin pääasetustiedostoon, luomme uuden dedikoidun tiedoston, joka pitää IP-osoitteet:

/ etc/squid / allowed_ips.txt
192.168.33.1# All other allowed IPs

kun olet valmis, avaa pääasetustiedosto ja luo uusi ACL nimeltään allowed_ips (ensimmäinen korostettu rivi) ja Salli pääsy kyseiseen ACL: ään käyttämällä http_access direktiiviä (toinen korostettu rivi):

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

http_access sääntöjen järjestys on tärkeä. Lisää rivi ennen http_access deny all.

http_access direktiivi toimii samalla tavalla kuin palomuurisäännöt. Squid lukee säännöt ylhäältä alas, ja kun sääntö vastaa alla olevia sääntöjä ei käsitellä.

aina kun teet muutoksia asetustiedostoon, sinun täytyy käynnistää Squid-palvelu uudelleen, jotta muutokset tulevat voimaan.:

sudo systemctl restart squid

Squid Authentication #

Squid voi käyttää erilaisia takapäitä, kuten Samba, LDAP ja HTTP basic auth todennetuille käyttäjille.

tässä esimerkissä määritämme Kalmarin käyttämään basic authia. Se on HTTP-protokollaan rakennettu yksinkertainen todennusmenetelmä.

käytämme openssl salasanojen luomiseen ja liitämme username:password parin /etc/squid/htpasswd tiedostoon teekomennolla kuten alla on esitetty:

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

esimerkiksi jos haluat luoda käyttäjän nimeltä ” mike ”salasanalla” Pz$lPk76”, ajaisit:

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

seuraava vaihe on määrittää Squid ottamaan HTTP – Perustodennus käyttöön ja käyttämään tiedostoa.

avaa pääkokoonpano ja lisää seuraava:

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

kolmella ensimmäisellä korostetulla rivillä luodaan uusi eturistiside, jonka nimi on authenticated. Viimeinen korostettu rivi mahdollistaa pääsyn todennetuille käyttäjille.

Käynnistä Squid-palvelu uudelleen:

sudo systemctl restart squid

Configuring firewall #

If you are running a firewallyou ’ ll need to open port 3128. Voit tehdä niin suorita seuraavat komennot:

sudo firewall-cmd --permanent --add-port=3128/tcpfirewall-cmd --reload
jos Squid on käynnissä toisessa, ei-oletus portti, sinun täytyy sallia liikennettä, että portti.

selaimen määrittäminen käyttämään välityspalvelinta #

nyt kun olet määrittänyt Squid-ohjelman, viimeinen vaihe on määrittää haluamasi selain käyttämään sitä.

Firefox #

alla olevat vaiheet ovat samat Windowsille, macOS: lle ja Linuxille.

  1. napsauta oikeassa yläkulmassa olevaa hamburger-kuvaketta avataksesi Firefoxin valikon:

  2. klikkaa ⚙ Preferences – linkkiä.

  3. Vieritä Network Settings – osioon ja klikkaa Settings... – painiketta.

  4. uusi ikkuna avautuu.

    • valitse Manual proxy configuration – Radiopainike.
    • syötä Squid-palvelimen IP-osoite HTTP Host kenttään ja 3128 Port kenttään.
    • valitse Use this proxy server for all protocols – valintaruutu.
    • Napsauta OK – painiketta tallentaaksesi asetukset.
    Firefox Squid-välityspalvelin

tässä vaiheessa Firefox on määritetty ja voit selata Internetiä Squid-välityspalvelimen kautta. Voit tarkistaa sen avaamalla google.com kirjoittamalla ”mikä on ip-osoitteeni” ja sinun pitäisi nähdä Squid-palvelimen IP-osoite.

palataksesi oletusasetuksiin siirry kohtaan Network Settings, valitse Use system proxy settings – Radiopainike ja tallenna asetukset.

on myös useita liitännäisiä, joiden avulla voit määrittää Firefoxin välityspalvelinasetukset, kuten Foxyproxyn.

Google Chrome #

Google Chrome käyttää järjestelmän välityspalvelimen oletusasetuksia. Käyttöjärjestelmän välityspalvelinasetusten muuttamisen sijaan voit käyttää komentoriviltä joko lisäosaa, kuten SwitchyOmegaor start Chrome-verkkoselainta.

käynnistääksesi Chromen uuden profiilin avulla ja muodostaaksesi yhteyden Squid-palvelimeen, käytä seuraavaa komentoa:

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"

ikkunat :

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

profiili luodaan automaattisesti, jos sitä ei ole olemassa. Näin voit suorittaa useita Chromen instansseja samanaikaisesti.

jos haluat varmistaa välityspalvelimen toimivan oikein, avaa google.com ja kirjoita ”what is my ip”. Selaimessasi näkyvän IP-osoitteen pitäisi olla palvelimesi IP-osoite.

Conclusion #

you have learned how to install squid on CentOS 7 and configure your browser to use it.

Squid on yksi suosituimmista välityspalvelimista. Se parantaa web-palvelimen nopeutta ja voi auttaa sinua rajoittamaan käyttäjän pääsyä Internetiin.

Leave a Reply

Sähköpostiosoitettasi ei julkaista.