Kif Oħloq Proxy HTTP billi tuża Squid fuq CentOS 7/8


Il-prokuri tal-web ilhom jeżistu għal żmien pjuttost twil issa u ntużaw minn miljuni ta’ utenti madwar id-dinja. Huma għandhom firxa wiesgħa ta 'skopijiet, l-aktar popolari huma l-anonimità onlajn, iżda hemm modi oħra kif tista' tieħu vantaġġ mill-prokuri tal-web. Hawn huma xi ideat:

  • Anonimat online
  • Ttejjeb is-sigurtà onlajn
  • Ttejjeb il-ħinijiet tat-tagħbija
  • Bblokka t-traffiku malizzjuż
  • Illoggja l-attività tiegħek online
  • Biex jiġu evitati restrizzjonijiet reġjonali
  • F'xi każijiet tista' tnaqqas l-użu tal-bandwidth

Il-proxy server huwa kompjuter li jintuża bħala intermedjarju bejn il-klijent u servers oħra li minnhom il-klijent jista' jitlob riżorsi. Eżempju sempliċi ta 'dan huwa meta klijent jagħmel talbiet onlajn (per eżempju jrid jiftaħ paġna web), huwa jgħaqqad l-ewwel mas-server proxy.

Is-server tal-prokura mbagħad jiċċekkja l-cache tad-diska lokali tiegħu u jekk id-dejta tista’ tinstab hemmhekk, jirritorna d-dejta lill-klijent, jekk mhux fil-cache, jagħmel it-talba f’isem il-klijent billi juża l-indirizz IP tal-prokura (differenti mill- klijenti) u mbagħad jirritorna d-dejta lill-klijent. Il-proxy server jipprova jdaħħal id-dejta l-ġdida fil-cache u jużaha għal talbiet futuri li jsiru lill-istess server.

Il-klamari huwa prokura tal-web li uża l-firxa wiesgħa ta 'organizzazzjonijiet tiegħi. Ħafna drabi jintuża bħala caching proxy u jtejjeb il-ħinijiet tar-rispons u jnaqqas l-użu tal-bandwidth.

Għall-iskop ta 'dan l-artikolu, se ninstalla Squid fuq Linode CentOS 7 VPS u nużah bħala server proxy HTTP.

Kif Tinstalla Squid fuq CentOS 7/8

Qabel ma nibdew, għandek tkun taf li Squid, m'għandux rekwiżiti minimi, iżda l-ammont ta 'użu ta' RAM jista 'jvarja skond il-klijenti li jibbrawżjaw l-internet permezz tal-proxy server.

Il-klamari huwa inkluż fir-repożitorju bażi u għalhekk l-installazzjoni hija sempliċi u sempliċi. Qabel ma tinstallah, madankollu, kun żgur li l-pakketti tiegħek huma aġġornati billi taħdem.

# yum -y update

Ipproċedi billi tinstalla klamari, ibda u ppermettih fuq l-istartjar tas-sistema billi tuża l-kmandi li ġejjin.

# yum -y install squid
# systemctl start squid
# systemctl  enable squid

F'dan il-punt, il-prokura tal-web Squid tiegħek għandha tkun diġà qed taħdem u tista 'tivverifika l-istatus tas-servizz biha.

# systemctl status squid
 squid.service - Squid caching proxy
   Loaded: loaded (/usr/lib/systemd/system/squid.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2018-09-20 10:07:23 UTC; 5min ago
 Main PID: 2005 (squid)
   CGroup: /system.slice/squid.service
           ├─2005 /usr/sbin/squid -f /etc/squid/squid.conf
           ├─2007 (squid-1) -f /etc/squid/squid.conf
           └─2008 (logfile-daemon) /var/log/squid/access.log

Sep 20 10:07:23 tecmint systemd[1]: Starting Squid caching proxy...
Sep 20 10:07:23 tecmint squid[2005]: Squid Parent: will start 1 kids
Sep 20 10:07:23 tecmint squid[2005]: Squid Parent: (squid-1) process 2007 started
Sep 20 10:07:23 tecmint systemd[1]: Started Squid caching proxy.

Hawn huma xi postijiet importanti tal-fajls li għandek tkun konxju minnhom:

  • Fajl tal-konfigurazzjoni tal-klamari: /etc/squid/squid.conf
  • Logg tal-Aċċess għall-Klamar: /var/log/squid/access.log
  • Squid Cache log: /var/log/squid/cache.log

Fajl ta' konfigurazzjoni minimu squid.conf (mingħajr kummenti fih) jidher bħal dan:

acl localnet src 10.0.0.0/8	# RFC1918 possible internal network
acl localnet src 172.16.0.0/12	# RFC1918 possible internal network
acl localnet src 192.168.0.0/16	# RFC1918 possible internal network
acl localnet src fc00::/7       # RFC 4193 local private network range
acl localnet src fe80::/10      # RFC 4291 link-local (directly plugged) machines
acl SSL_ports port 443
acl Safe_ports port 80		# http
acl Safe_ports port 21		# ftp
acl Safe_ports port 443		# https
acl Safe_ports port 70		# gopher
acl Safe_ports port 210		# wais
acl Safe_ports port 1025-65535	# unregistered ports
acl Safe_ports port 280		# http-mgmt
acl Safe_ports port 488		# gss-http
acl Safe_ports port 591		# filemaker
acl Safe_ports port 777		# multiling http
acl CONNECT method CONNECT
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost manager
http_access deny manager
http_access allow localnet
http_access allow localhost
http_access deny all
http_port 3128
coredump_dir /var/spool/squid
refresh_pattern ^ftp:		1440	20%	10080
refresh_pattern ^gopher:	1440	0%	1440
refresh_pattern -i (/cgi-bin/|\?) 0	0%	0
refresh_pattern .		0	20%	4320

Konfigurazzjoni ta 'Squid bħala Proxy HTTP

Hawnhekk, ser nuruk kif tikkonfigura l-klamari bħala prokura HTTP billi tuża biss l-indirizz IP tal-klijent għall-awtentikazzjoni.

Jekk tixtieq tħalli l-indirizz IP jaċċessa l-web permezz tas-server proxy ġdid tiegħek, ser ikollok bżonn iżżid linja ACL ġdida (lista ta 'kontroll ta' aċċess) fil-fajl tal-konfigurazzjoni.

# vim /etc/squid/squid.conf

Il-linja li għandek iżżid hija:

acl localnet src XX.XX.XX.XX

Fejn XX.XX.XX.XX huwa l-indirizz IP attwali tal-klijent li tixtieq iżżid. Il-linja għandha tiżdied fil-bidu tal-fajl fejn l-ACLs huma definiti. Hija prattika tajba li żżid kumment ħdejn ACL li jiddeskrivi min juża dan l-indirizz IP.

Huwa importanti li wieħed jinnota li jekk Squid jinsab barra n-netwerk lokali tiegħek, għandek iżżid l-indirizz IP pubbliku tal-klijent.

Ikollok bżonn terġa' tibda Squid sabiex il-bidliet il-ġodda jkunu jistgħu jidħlu fis-seħħ.

# systemctl  restart squid

Kif forsi rajt fil-fajl tal-konfigurazzjoni, ċerti portijiet biss huma permessi għall-konnessjoni. Tista 'żżid aktar billi teditja l-fajl tal-konfigurazzjoni.

acl Safe_ports port XXX

Fejn XXX huwa l-port attwali li tixtieq tagħbija. Għal darb'oħra hija idea tajba li tħalli kumment ħdejn li jiddeskrivi għalxiex se jintuża l-port.

Biex il-bidliet jidħlu fis-seħħ, ser ikollok bżonn terġa 'tibda l-klamari għal darb'oħra.

# systemctl  restart squid

Probabbilment trid li l-utenti tiegħek jawtentikaw qabel tuża l-prokura. Għal dak il-għan, tista 'tippermetti l-awtentikazzjoni HTTP bażika. Huwa faċli u veloċi biex jiġi kkonfigurat.

L-ewwel, ser ikollok bżonn httpd-tools installati.

# yum -y install httpd-tools

Issa ejja noħolqu fajl li aktar tard jaħżen l-isem tal-utent għall-awtentikazzjoni. Squid jimxi mal-utent \squid għalhekk il-fajl għandu jkun proprjetà ta' dak l-utent.

# touch /etc/squid/passwd
# chown squid: /etc/squid/passwd

Issa se noħolqu utent ġdid imsejjaħ \proxyclient u nistabbilixxu l-password tiegħu.

# htpasswd /etc/squid/passwd proxyclient

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

Issa biex tikkonfigura l-awtentikazzjoni tiftaħ il-fajl tal-konfigurazzjoni.

# vim /etc/squid/squid.conf

Wara l-ACLs tal-portijiet żid il-linji li ġejjin:

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

Issejvja l-fajl u erġa ibda l-klamari sabiex il-bidliet il-ġodda jkunu jistgħu jidħlu fis-seħħ:

# systemctl restart squid

Fl-aħħarnett, se noħolqu l-aħħar ACL wieħed li jgħinna nibblukkaw websajts mhux mixtieqa. L-ewwel, oħloq il-fajl li se jaħżen is-siti fil-lista sewda.

# touch /etc/squid/blacklisted_sites.acl

Tista 'żżid xi dominji li tixtieq timblokka. Pereżempju:

.badsite1.com
.badsite2.com

It-tikka tal-proċediment tgħid lill-klamari biex jimblokka r-referenzi kollha għal dawk is-siti inklużi www.badsite1, subsite.badsite1.com, eċċ.

Issa iftaħ il-fajl tal-konfigurazzjoni ta’ Squid.

# vim /etc/squid/squid.conf

Eżatt wara l-ACLs tal-portijiet żid iż-żewġ linji li ġejjin:

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

Issa salva l-fajl u erġa ibda l-klamari:

# systemctl restart squid

Ladarba kollox ikun ikkonfigurat b'mod korrett, issa tista' tikkonfigura l-browser tal-klijent lokali tiegħek jew is-settings tan-netwerk tas-sistema operattiva biex tuża l-proxy HTTP tal-klamari tiegħek.

F'dan it-tutorja, tgħallimt kif tinstalla, tiżgura u tikkonfigura server Squid HTTP Proxy waħdek. Bl-informazzjoni li għadek kif ħadt, issa tista 'żżid xi filtrazzjoni bażika għat-traffiku deħlin u ħerġin permezz ta' Squid.

Jekk tixtieq tmur il-mili żejjed, tista 'saħansitra tikkonfigura l-klamari biex jimblokka xi websajts matul il-ħinijiet tax-xogħol biex jipprevjenu distrazzjonijiet. Jekk għandek xi mistoqsijiet jew kummenti, jekk jogħġbok poġġihom fit-taqsima tal-kummenti hawn taħt.