![LG G7: LG flagmanis ir nopietns iPhone X izskats](/f/6043731edb4be461fda268adda7c5be7.jpg?width=100&height=100)
Tīmekļa starpniekserveri pastāv jau ilgu laiku, un tos ir izmantojuši miljoniem lietotāju visā pasaulē. Tiem ir plašs mērķu klāsts, vispopulārākais ir tiešsaistes anonimitāte, taču ir arī citi veidi, kā izmantot tīmekļa starpniekservera priekšrocības. Šeit ir dažas idejas:
Starpniekserveris ir dators, kas tiek izmantots kā starpnieks starp klientu un citiem serveriem, no kuriem klients var pieprasīt resursus. Vienkāršs piemērs tam ir gadījums, kad klients veic tiešsaistes pieprasījumus (piemēram, vēlas atvērt tīmekļa lapu), viņš vispirms izveido savienojumu ar starpniekserveri.
Pēc tam starpniekserveris pārbauda vietējo diska kešatmiņu un, ja datus var tur atrast, tas atgriezīs datus klientam, ja tie nav saglabāti kešatmiņā, tas veiks pieprasījumu klienta vārdā, izmantojot starpniekservera IP adresi (atšķirīgu no klientiem), un pēc tam atgriezīs datus klientam. Starpniekserveris mēģinās saglabāt kešatmiņā jaunos datus un izmantos tos turpmākiem pieprasījumiem, kas tiks veikti tam pašam serverim.
Kalmāri ir tīmekļa starpniekserveris, kas izmantoja manu plašo organizāciju klāstu. To bieži izmanto kā kešatmiņas starpniekserveri un uzlabo reakcijas laiku un samazina joslas platuma izmantošanu.
Šī raksta nolūkos es instalēšu Kalmāri uz Linode CentOS 7 VPS un izmantojiet to kā HTTP starpniekserveri.
Pirms mēs sākam, jums tas jāzina Kalmāri, tam nav minimālo prasību, taču RAM izmantošanas apjoms var atšķirties atkarībā no klientiem, kuri pārlūko internetu, izmantojot starpniekserveri.
Kalmāri ir iekļauts bāzes krātuvē, un tāpēc uzstādīšana ir vienkārša un vienkārša. Tomēr pirms instalēšanas pārliecinieties, ka jūsu pakotnes ir atjauninātas, palaižot.
# yum -y atjauninājums.
Turpiniet, instalējot kalmārus, palaidiet un iespējojiet tos sistēmas startēšanas laikā, izmantojot šādas komandas.
# yum -y instalēt kalmārus. # systemctl start kalmārs. # systemctl iespējot kalmārus.
Šajā brīdī jūsu Squid tīmekļa starpniekserverim jau vajadzētu darboties, un jūs varat pārbaudīt pakalpojuma statusu, izmantojot.
# systemctl statusa kalmārs.
● squid.service - Squid caching proxy Loaded: ielādēts (/usr/lib/systemd/system/squid.service; iespējots; sākotnējais pārdevēja iestatījums: atspējots) Aktīvs: aktīvs (darbojas) kopš ceturtdienas 2018-09-20 10:07:23 UTC; Pirms 5 minūtēm Galvenais PID: 2005 (kalmāri) CGrupa: /sistēma.slice/squid.service ├─2005/usr/sbin/squid -f /etc/squid/squid.conf ├─2007 (kalmārs -1) -f /etc/squid/squid.conf └─2008 (logfile-dēmons) /var/log/squid/access.log 20. septembris 10:07:23 tecmint systemd [1]: Squid caching sākšana starpniekserveris... 20. septembris 10:07:23 tecminta kalmārs [2005]: Kalmāra vecāks: sāks 1 bērnu. 20. septembris 10:07:23 tecmint kalmārs [2005]: Kalmāra vecāks: (kalmārs-1) sākās process 2007. 20. septembris 10:07:23 tecmint systemd [1]: sākta Squid caching proxy.
Šeit ir dažas svarīgas failu atrašanās vietas, kas jums jāzina:
Minimums kalmārs.konf
konfigurācijas fails (bez komentāriem) izskatās šādi:
acl localnet src 10.0.0.0/8 # RFC1918 iespējams iekšējais tīkls. acl localnet src 172.16.0.0/12 # RFC1918 iespējams iekšējais tīkls. acl localnet src 192.168.0.0/16 # RFC1918 iespējams iekšējais tīkls. acl localnet src fc00 ::/7 # RFC 4193 lokālā privātā tīkla diapazons. acl localnet src fe80 ::/10 # RFC 4291 link-local (tieši pievienots) iekārtas. acl SSL_ports ports 443. acl Safe_ports ports 80 # http. acl Safe_ports ports 21 # ftp. acl Safe_ports ports 443 # https. acl Safe_ports ports 70 # gopher. acl Safe_ports ports 210 # wais. acl Safe_ports ports 1025-65535 # nereģistrētas ostas. acl Safe_ports ports 280 # http-mgmt. acl Safe_ports ports 488 # gss-http. acl Safe_ports ports 591 # filemaker. acl Safe_ports ports 777 # multiling http. acl CONNECT metode CONNECT. http_access liegt! Safe_ports. http_access deny CONNECT! SSL_ports. http_access atļaut localhost pārvaldniekam. http_access lieguma pārvaldnieks. http_access atļaut localnet. http_access atļaut localhost. http_access noliegt visu. http://sports 3128. coredump_dir/var/spool/kalmārs. 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.
Šeit mēs parādīsim, kā konfigurēt kalmārus kā HTTP starpniekserveri, autentifikācijai izmantojot tikai klienta IP adresi.
Ja vēlaties ļaut IP adresei piekļūt tīmeklim, izmantojot jauno starpniekserveri, jums būs jāpievieno jauns ACL (piekļuves kontroles saraksts) rindu konfigurācijas failā.
# vim /etc/squid/squid.conf.
Rinda, kas jāpievieno, ir šāda:
acl localnet src XX.XX.XX.XX.
Kur XX.XX.XX.XX ir faktiskā klienta IP adrese, kuru vēlaties pievienot. Rinda jāpievieno faila sākumā, kur ir definētas ACL. Laba prakse ir pievienot pie ACL komentāru, kurā aprakstīts, kurš izmanto šo IP adresi.
Ir svarīgi atzīmēt, ka, ja Squid atrodas ārpus jūsu vietējā tīkla, jums jāpievieno klienta publiskā IP adrese.
Lai jaunās izmaiņas varētu stāties spēkā, jums būs jārestartē Squid.
# systemctl restartējiet kalmārus.
Kā redzējāt konfigurācijas failā, savienošanai ir atļauti tikai daži porti. Jūs varat pievienot vairāk, rediģējot konfigurācijas failu.
acl Safe_ports ports XXX.
Kur XXX ir faktiskā osta, kuru vēlaties ielādēt. Atkal ir laba ideja atstāt komentāru blakus tam, lai aprakstītu, kādam nolūkam osta tiks izmantota.
Lai izmaiņas stātos spēkā, jums vēlreiz būs jārestartē kalmārs.
# systemctl restartējiet kalmārus.
Jūs, visticamāk, vēlēsities, lai jūsu lietotāji pirms starpniekservera lietošanas autentificētos. Šim nolūkam varat iespējot pamata HTTP autentifikāciju. To ir viegli un ātri konfigurēt.
Pirmkārt, jums būs nepieciešams httpd-rīki instalēta.
# yum -y instalējiet httpd -tools.
Tagad izveidosim failu, kurā vēlāk tiks saglabāts autentifikācijas lietotājvārds. Kalmāri darbojas kopā ar lietotāju "Kalmārs" tāpēc failam vajadzētu piederēt šim lietotājam.
# touch/etc/squid/passwd. # kalnu kalmāri:/etc/squid/passwd.
Tagad mēs izveidosim jaunu lietotāju ar nosaukumu "Starpniekserveris" un iestatiet tā paroli.
# htpasswd/etc/squid/passwd proxyclient Jauna parole: atkārtoti ierakstiet jaunu paroli: lietotāja starpniekservera paroles pievienošana.
Tagad, lai konfigurētu autentifikāciju, atveriet konfigurācijas failu.
# vim /etc/squid/squid.conf.
Pēc ostu ACL pievieno šādas rindas:
auth_param pamatprogramma/usr/lib64/squid/basic_ncsa_auth/etc/squid/passwd. auth_param pamata bērni 5. auth_param pamata valstība Kalmāru pamata autentifikācija. auth_param pamata akreditācijas dati 2 stundas. ACL auth_users proxy_auth OBLIGĀTS. http_access atļaut auth_users.
Saglabājiet failu un restartējiet kalmārus, lai jaunās izmaiņas varētu stāties spēkā:
# systemctl restartējiet kalmārus.
Visbeidzot, mēs izveidosim pēdējo ACL kas palīdzēs mums bloķēt nevēlamas vietnes. Vispirms izveidojiet failu, kurā tiks saglabātas melnajā sarakstā iekļautās vietnes.
# touch /etc/squid/blacklisted_sites.acl.
Varat pievienot dažus domēnus, kurus vēlaties bloķēt. Piemēram:
.badsite1.com. .badsite2.com.
Turpmākais punkts liek kalmāriem bloķēt visas atsauces uz šīm vietnēm, ieskaitot www.badsite1, subsite.badsite1.com, utt.
Tagad atveriet Squid konfigurācijas failu.
# vim /etc/squid/squid.conf.
Tūlīt pēc ostu ACL pievieno šādas divas rindas:
acl bad_urls dstdomain "/etc/squid/blacklisted_sites.acl" http_access liegt bad_urls.
Tagad saglabājiet failu un restartējiet kalmārus:
# systemctl restartējiet kalmārus.
Kad viss ir konfigurēts pareizi, tagad varat konfigurēt vietējā klienta pārlūkprogrammu vai operētājsistēmas tīkla iestatījumus, lai izmantotu jūsu kalmāru HTTP starpniekserveri.
Šajā apmācībā jūs uzzinājāt, kā patstāvīgi instalēt, nodrošināt un konfigurēt Squid HTTP starpniekserveri. Izmantojot tikko iegūto informāciju, tagad varat pievienot pamata filtrēšanu ienākošajai un izejošajai datplūsmai caur Squid.
Ja vēlaties nobraukt papildu jūdzi, varat pat konfigurēt kalmārus, lai darba laikā bloķētu dažas vietnes, lai novērstu uzmanību. Ja jums ir kādi jautājumi vai komentāri, lūdzu, ievietojiet tos komentāru sadaļā zemāk.