Note, that this recipe is not updated long time and could be outdated!
Got it.

Squid starpniekserveris

Ja Jūsu dators atrodas aiz ugunsmūra, kura iestatījumi ierobežo Jums redzamo saturu, bet nav iespējas tos patstāvīgi kontrolēt, tad rodas vajadzība pēc alternatīva "starpniekservera".  Starpniekserveri var arī izmantot arī lai, pārlūkojot tīmekli, neatklātu sava datora IP adresi.

Priekš tam ir vajadzīgs Linux uz atsevišķa datora (vēlams, ar pastāvīgu IP adresi, jo, ja IP adrese mainās, tas būs nesasniedzams, ja vien nav izveidots risinājums, kas par šīm izmaiņām paziņo).

Uz tās darbstacijas, kura izmantos šo Linux starpniekserveri, atver kādu no lapām http://whatismyipaddress.com/ vai http://www.ip-adress.com/, lai redzētu IP adresi, ar kādu Jūsu dators iziet ārējā Interneta tīklā. Pieņemsim, ka meklētā IP adrese ir A.B.C.D, kur A, B, C, D apzīmē skaitļus no 0 līdz 255.

Standarta versijas uzstādīšana

  1. izpilda komandu

    sudo apt-get install squid

Ražotāja versijas uzstādīšana

  1. Lejuplādē instalācijas failu no http://www.squid-cache.org/Download/
  2. Atarhivē instalācijas failus.
  3. Nokonfigurē līdzīgi citiem Ubuntu servisiem ar komandu:

    ./configure --prefix=/usr --localstatedir=/var --libexecdir=${prefix}/lib/squid --srcdir=. --datadir=${prefix}/share/squid --sysconfdir=/etc/squid3 --with-default-user=proxy --with-logdir=/var/log/squid --with-pidfile=/var/run/squid.pid
  4. Izpilda komandas:

    make
    sudo make install
  5. Izveido pielāgotu inicializācijas skriptu.

Iestatīšana

Iestatījumu maiņai rediģē failu /etc/squid/squid.conf.

Lai atļautu lietot starpniekserveri bez ierobežojumiem

ievieto rindu:

# INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
...
http_access allow all

Ja šādi konfigurēts serveris ir pieejams publiskā tīklā, agri vai vēlu to pamanīs un aiz tā sāks slēpties tīmekļa mēslotāji!

Lai atļautu pieslēgties tikai no lokālā tīkla

Ievieto rindas:

acl localnet src 10.0.0.0/24
http_access allow localnet

Dažās Ubuntu versijās localnet ar adrešu apgabalu 10.0.0.0 jau ir reģistrēts un to rindu nevajag.

Lai palielinātu keša izmēru

Izmaina rindu:

...
cache_dir ufs /var/spool/squid 2000 16 256
...

kur pirmais skaitlis ir keša izmērs MB, otrais un trešais - pirmā un otrā līmeņa mapju skaits.

Squid izmantošana ar pieteikšanās vārdu un paroli

  1. Izveido autentifikācijas failu, ieraksta tajā lietotāju:

    htpasswd -cm /etc/squid3/squid_passwd student
    un 2 reizes ievada paroli
  2. Pārliecinās, ka ncsa_auth atrodas /usr/lib/squid3/ncsa_auth
  3. Pārliecinās, ka /etc/squid3/squid.conf nav rindas http_access allow all un pievieno rindas:

    # INSERT YOUR OWN RULE(S) HERE TO ALLOW ACCESS FROM YOUR CLIENTS
    #
    # Authentication
    #
    auth_param basic program /usr/lib/squid3/ncsa_auth /etc/squid3/squid_passwd
    acl ncsa_users proxy_auth REQUIRED
    http_access allow ncsa_users

    kur /usr/lib/squid3/ncsa_auth ir ncsa_auth atrašanās vieta.

Citi iestatījumi

  1. Ja nepieciešams, izmaina Squid klausīšanās portu šajā pašā konfigurācijas failā. Var gadīties, ka Jūsu ugunsmūris neļauj veidot savienojumus uz portu 3128. Šajā gadījumā izvēlas kādu portu, kurš nav nobloķēts, bet iepriekšējo iestatījumu (ar portu 8080) aizkomentē. Piemēram, ja jaunais ports ir 8080, tad izlabo šādi:

    # http_port 3128
    http_port 8080
  2. ja nepieciešams, norāda DNS serverus (pēc noklusēšanas izmanto faila /etc/resolv.conf saturu), piemēram, tuvākos no http://useopennic.org serveriem:

    ...
    # Example: dns_nameservers 10.0.0.1 192.172.0.4
    dns_nameservers 178.63.26.173 178.63.26.174
    ...
  3. Pēc konfigurācijas faila izmaiņām pārstartē Squid serveri:

    sudo /etc/init.d/squid restart
  4. Ja serveris nepārstartējas, konfigurācijas failā ir kļūdas, kuras izlabo un pārstartē vēlreiz.

Neredzams Squid serveris

Lai atvieglotu datoru uzturēšanu lokālā tīklā, Squid starpniekserveri var iestatīt, lai tas darbojas neredzami. Datori domā, ka tie sazinās pa tiešo ar mērķa serveri, bet patiesībā pieprasījumus pārtver un apstrādā starpniekserveris.
Lai iedarbinātu Squid neredzamā režīmā:

  1. Pievieno papildu nosacījumu Squid iestatījumos:

    ...
    http_port 3128 transparent
    ...
  2. Pievieno papildu likumu ar iptables, piemēram:

    iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
  3. Ja tas nav izdarīts pirms tam, iptables var būt nepieciešams pievienot arī adrešu translācijas likumus

Saites uzziņām

Jāņem vērā, ka HTTPS protokolu līdzīgā veidā nevar pārtvert, jo pārlūkprogramma to šifrē.


  
Tags Linux Tīmeklis Serveris Tīkls
Created by Valdis Vītoliņš on 2008-08-09 16:22
Last modified by Valdis Vītoliņš on 2021-04-13 14:30
 
Xwiki Powered
Creative Commons Attribution 3.0 Unported License