Hvernig á að setja upp „Squid Proxy“ netþjón á Ubuntu og Debian


Smokkfiskur er vinsælasti HTTP vefþjónninn fyrir skyndiminni og framsendingu sem notaði mitt úrval fyrirtækja til að vista vefsíður frá vefþjóni til að bæta hraða vefþjónsins, draga úr viðbragðstíma og draga úr bandbreiddarnotkun netsins.

Í þessari grein munum við útskýra hvernig á að setja upp smokkfisk proxy-þjón á Ubuntu og Debian dreifingum og nota hann sem HTTP proxy-þjón.

Hvernig á að setja upp smokkfisk á Ubuntu

Áður en við byrjum ættir þú að vita að Squid netþjónn hefur engar kröfur, en magn vinnsluminni getur verið mismunandi miðað við viðskiptavini sem vafra um internetið í gegnum proxy-þjóninn.

Hægt er að setja upp smokkfiskpakka frá grunn Ubuntu geymslunni, en áður en það er vertu viss um að uppfæra pakkana þína með því að keyra.

$ sudo apt update

Þegar pakkarnir þínir eru uppfærðir geturðu haldið áfram að setja upp smokkfisk og byrja og virkja það við ræsingu kerfisins með því að nota eftirfarandi skipanir.

$ sudo apt -y install squid
$ sudo systemctl start squid
$ sudo systemctl enable squid

Á þessum tímapunkti ætti Squid vefþjónninn þinn nú þegar að vera í gangi og þú getur staðfest stöðu þjónustunnar með.

$ sudo systemctl status squid
● squid.service - LSB: Squid HTTP Proxy version 3.x
   Loaded: loaded (/etc/init.d/squid; generated)
   Active: active (running) since Tue 2018-12-04 06:42:43 UTC; 14min ago
     Docs: man:systemd-sysv-generator(8)
    Tasks: 4 (limit: 1717)
   CGroup: /system.slice/squid.service
           ├─2761 /usr/sbin/squid -YC -f /etc/squid/squid.conf
           ├─2766 (squid-1) -YC -f /etc/squid/squid.conf
           ├─2768 (logfile-daemon) /var/log/squid/access.log
           └─2772 (pinger)

Dec 04 06:42:43 tecmint systemd[1]: Starting LSB: Squid HTTP Proxy version 3.x...
Dec 04 06:42:43 tecmint squid[2708]:  * Starting Squid HTTP Proxy squid
Dec 04 06:42:43 tecmint squid[2708]:    ...done.
Dec 04 06:42:43 tecmint systemd[1]: Started LSB: Squid HTTP Proxy version 3.x.
Dec 04 06:42:43 tecmint squid[2761]: Squid Parent: will start 1 kids
Dec 04 06:42:43 tecmint squid[2761]: Squid Parent: (squid-1) process 2766 started

Eftirfarandi eru mikilvægar staðsetningar smokkfiskskrár sem þú ættir að vera meðvitaður um:

  • Squid stillingarskrá: /etc/squid/squid.conf
  • Aðgangsskrá fyrir smokkfisk: /var/log/squid/access.log
  • Squid Cache log: /var/log/squid/cache.log

Sjálfgefin stillingarskrá inniheldur nokkrar stillingarleiðbeiningar sem þarf að stilla til að hafa áhrif á hegðun smokkfisksins.

Opnaðu nú þessa skrá til að breyta með Vi ritstjóra og gerðu breytingar eins og sýnt er hér að neðan.

$ sudo vim /etc/squid/squid.conf

Nú geturðu leitað um eftirfarandi línur og breytt þeim eins og beðið er um, í Vi ritlinum geturðu leitað um þessar línur með því að ýta á 'ESC' og slá inn \/ takkann til að skrifa tiltekið línur til að leita að.

  • http_port : Þetta er sjálfgefið gátt fyrir HTTP proxy-þjóninn, sjálfgefið er það 3128, þú getur breytt því í hvaða aðra höfn sem þú vilt, þú getur líka bætt við \gegnsæinu merktu við enda línunnar eins og http_port 8888 gagnsæ til að láta Squid umboð virka eins og gagnsætt umboð ef þú vilt.
  • http_access neita öllum : Þessi lína leyfir engum aðgang að HTTP proxy-þjóninum, þess vegna þarftu að breyta honum í http_access leyfa öllum að byrja að nota Squid proxy-þjóninn þinn.
  • visible_hostname : Þessi tilskipun er notuð til að stilla tiltekið hýsilnafn á smokkfiskþjón. Þú getur gefið smokkfiski hvaða hýsingarnafn sem er.

Eftir að hafa gert breytingar hér að ofan geturðu endurræst Squid proxy-þjóninn með því að nota skipunina.

$ sudo systemctl restart squid

Stilla Squid sem HTTP umboð á Ubuntu

Í þessum hluta smokkfiskstillingar munum við útskýra hvernig á að stilla smokkfisk sem HTTP proxy með því að nota aðeins IP tölu viðskiptavinarins til auðkenningar.

Ef þú vilt leyfa aðeins einu IP-tölu aðgang að internetinu í gegnum nýja proxy-þjóninn þinn þarftu að skilgreina nýjan acl (aðgangsstýringarlista) í stillingarskránni.

$ sudo vim /etc/squid/squid.conf

Acl reglan sem þú ættir að bæta við er:

acl localnet src XX.XX.XX.XX

Þar sem XX.XX.XX.XX er IP-tala biðlaravélarinnar. Þessu ACL ætti að bæta við í upphafi hluta ACL eins og sýnt er á eftirfarandi skjámynd.

Það er alltaf góð venja að skilgreina athugasemd við hlið ACL sem lýsir til dæmis hver notar þessa IP tölu.

acl localnet src 192.168.0.102  # Boss IP address

Þú verður að endurræsa Squid þjónustuna til að taka nýju breytingarnar í gildi.

$ sudo systemctl restart squid

Sjálfgefið er að aðeins ákveðnar hafnir eru leyfðar í smokkfiskstillingunum, ef þú vilt bæta við fleiri skaltu bara skilgreina þær í stillingarskránni eins og sýnt er.

acl Safe_ports port XXX

Þar sem XXX er gáttarnúmerið sem þú vilt leyfa. Aftur er gott að skilgreina athugasemd við hlið acl sem lýsir því til hvers höfnin á að nota.

Til að breytingarnar taki gildi þarftu að endurræsa smokkfiskinn einu sinni enn.

$ sudo systemctl restart squid

Til að leyfa notendum að auðkenna áður en þú notar umboðið þarftu að virkja grunn http auðkenningu í stillingarskránni, en áður en þú þarft að setja upp apache2-utils pakkann með eftirfarandi skipun.

$ sudo apt install apache2-utils

Búðu til skrá sem heitir „passwd“ sem mun síðar geyma notandanafnið fyrir auðkenninguna. Smokkfiskur keyrir með notanda \proxy svo skráin ætti að vera í eigu þess notanda.

$ sudo touch /etc/squid/passwd
$ sudo chown proxy: /etc/squid/passwd
$ ls -l /etc/squid/passwd

Nú munum við búa til nýjan notanda sem heitir \tecmint og setja upp lykilorð hans.

$ sudo htpasswd /etc/squid/passwd tecmint

New password: 
Re-type new password: 
Adding password for user tecmint

Opnaðu nú stillingarskrána til að virkja grunn http auðkenningu.

$ sudo vim /etc/squid/squid.conf

Eftir ports ACLs bæta við eftirfarandi línum:

auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic children 5
auth_param basic realm Squid Basic Authentication
auth_param basic credentialsttl 2 hours
acl auth_users proxy_auth REQUIRED
http_access allow auth_users

Vistaðu skrána og endurræstu smokkfisk svo að nýju breytingarnar geti tekið gildi:

$ sudo systemctl restart squid

Til að loka fyrir aðgang að óæskilegum vefsíðum skaltu fyrst búa til skrá sem heitir „blacklisted_sites.acl“ sem mun geyma svörtu síðurnar á henni.

$ sudo touch /etc/squid/blacklisted_sites.acl

Bættu nú við vefsíðunum sem þú vilt loka fyrir aðgang, til dæmis.

.badsite1.com
.badsite2.com

Framhaldspunkturinn upplýsir smokkfisk um að loka fyrir allar tilvísanir á þær síður, þar á meðal www.badsite1, subsite.badsite1.com o.s.frv.

Opnaðu nú stillingarskrá Squid.

$ sudo vim /etc/squid/squid.conf

Rétt eftir ofangreindar ACLs bætið við eftirfarandi tveimur línum:

acl bad_urls dstdomain "/etc/squid/blacklisted_sites.acl"
http_access deny bad_urls

Vistaðu nú skrána og endurræstu squid:

$ sudo systemctl restart squid

Til að loka á leitarorðalista skaltu fyrst búa til skrá sem heitir „blockkeywords.lst“ sem mun geyma leitarorð á svörtum lista í henni.

$ sudo touch /etc/squid/blockkeywords.lst

Bættu nú við leitarorðum sem þú vilt loka fyrir aðgang, til dæmis.

facebook
instagram
gmail

Opnaðu nú stillingarskrá Squid og bættu við eftirfarandi reglu.

acl blockkeywordlist url_regex "/etc/squid/blockkeywords.lst"
http_access deny blockkeywordlist

Vistaðu nú skrána og endurræstu squid:

$ sudo systemctl restart squid

Þegar allt hefur verið stillt nákvæmlega geturðu nú stillt staðbundinn viðskiptavinavefvafra eða netstillingar stýrikerfisins til að nota nýlega stillta smokkfisk HTTP proxy.

Stilltu viðskiptavin til að nota Squid Proxy

Nú til að prófa hvort proxy-þjónninn þinn virki eða ekki, geturðu opnað Firefox og farið í Edit –> Preferences –> Advanced –> Network –> Settings og veldu \Manual proxy configuration” og sláðu inn IP-tölu proxy-þjónsins og Port to notað fyrir allar tengingar eins og hér segir.

Þegar þú hefur fyllt út allar nauðsynlegar umboðsupplýsingar muntu geta vafrað á vefnum með því að nota Squid proxy-þjóninn þinn, þú getur gert það sama í hvaða öðrum vafra eða forriti sem þú vilt.

Til að ganga úr skugga um að þú sért að vafra um vefinn með proxy-þjóninum þínum geturðu heimsótt http://www.ipaddresslocation.org/, efst í hægra horninu verður þú að sjá sama IP-tölu og IP-tölu netþjónsins.

Fyrir frekari stillingar til viðbótar geturðu skoðað opinber skjöl um smokkfisk. Ef þú hefur einhverjar spurningar eða athugasemdir, vinsamlegast bættu þeim við í athugasemdahlutanum hér að neðan.