• korlátozhatjuk vele a nem kívánt internetes címek látogatásátA fenti funkciók közül nagyméretű tiltólisták alkalmazását, reklám tartalmak kikapcsolását és Internet-használati statisztikák készítését mutatom be CentOS-6 Linux operációs rendszeren.
• korlátozhatjuk az Internet-hozzáférést felhasználói azonosítás vagy IP cím alapján
• szűrhetünk vele internetes tartalmat
• felhasználhatjuk statisztika készítésre
• reklám-jellegű tartalmak kikapcsolásával sávszélességet takaríthatunk meg
• korlátozhatjuk a kliensek felé nyújtott sávszélességet
Cím: | Hálózati maszk | Átjáró |
DNS kiszolgálók: | |
eth0 | 192.168.4.17 |
24 | 192.168.4.1 | 192.168.4.1 |
eth1 | 192.168.99.1 | 24 |
[pferi@cent6m ~]# su - Jelszó: [root@cent6m etc]# yum install yum-priorities mc |
SELiNUX=disabled |
[base] ... priority=1 [updates] ... priority=1 [extras] ... priority=1 |
[root@cent6m ~]# wget
http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.i686.rpm [root@cent6m ~]# rpm -ivh rpmforge-release-0.5.2-2.el6.rf.i686.rpm |
[rpmforge] priority=5 |
[root@cent6m ~]# yum update [root@cent6m ~]# yum install squid squidguard* dnsmasq dhcp httpd system-config-firewall |
authoritative; subnet 192.168.99.0 netmask 255.255.255.0 { range 192.168.99.10 192.168.99.100; option domain-name-servers 192.168.99.1; option domain-name "suli.local"; option routers 192.168.99.1; option broadcast-address 255.255.255.0; default-lease-time 600; max-lease-time 7200; } |
[root@cent6m
~]# service dhcpd start [root@cent6m ~]# chkconfig --levels 235 dhcpd on |
192.168.99.1
cent6m.suli.local cent6m 192.168.99.1 wpad.suli.local wpad |
[root@cent6m
~]# cat /etc/dnsmasq.conf | sed '/^#/d; /^ *$/d' strict-order interface=eth1 |
[root@cent6m
~]# service dnsmasq start [root@cent6m ~]# chkconfig --levels 235 dnsmasq on |
C:\Documents and
Settings\tanulo>nslookup fsf.hu Server: cent6m.suli.local Address: 192.168.99.1 Non-authoritative answer: Name: fsf.hu Address: 195.56.172.143 |
C:\Documents and
Settings\tanulo>ping wpad.suli.local wpad.suli.local [192.168.99.1] pingelése 32 bájt méretű adatokkal: Válasz 192.168.99.1: bájt=32 idő<10 ezredmp. TTL=64 Válasz 192.168.99.1: bájt=32 idő<10 ezredmp. TTL=64 Válasz 192.168.99.1: bájt=32 idő<10 ezredmp. TTL=64 Válasz 192.168.99.1: bájt=32 idő<10 ezredmp. TTL=64 192.168.99.1 ping-statisztikája: Csomagok: küldött = 4, fogadott = 4, elveszett = 0 (0% veszteség), Oda-vissza út ideje közelítőlegesen, milliszekundumban: minimum = 0ms, maximum = 0ms, átlag = 0ms |
[root@cent6m
~]# service httpd start [root@cent6m ~]# chkconfig --levels 235 httpd on |
[root@cent6m ~]# tail -5
/var/log/httpd/access_log 192.168.99.10 - - [02/Mar/2012:23:48:03 +0100] "GET /wpad.dat HTTP/1.1" 404 287 "-" "Mozilla/4.0 (compatible; MSIE 8.0; Win32; Trident/4.0)" 192.168.99.10 - - [02/Mar/2012:23:48:07 +0100] "GET /wpad.dat HTTP/1.1" 404 276 "-" "Mozilla/5.0 (Windows NT 5.1; rv:10.0.2) Gecko/20100101 Firefox/10.0.2" 192.168.99.11 - - [03/Mar/2012:01:31:38 +0100] "GET /wpad.dat HTTP/1.1" 404 276 "-" "Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.11 (KHTML, like Gecko) Chrome/17.0.963.56 Safari/535.11" 192.168.99.12 - - [02/Mar/2012:23:49:47 +0100] "GET /wpad.dat HTTP/1.1" 404 276 "-" "Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:10.0.2) Gecko/20100101 Firefox/10.0.2" 192.168.99.13 - - [02/Mar/2012:23:55:02 +0100] "GET /wpad.dat HTTP/1.1" 404 276 "-" "Mozilla/5.0 (X11; U; Linux i686; hu-HU; rv:1.9.2.26) Gecko/20120131 CentOS/3.6-1.el5.centos Firefox/3.6.26" |
cache_dir ufs /var/spool/squid 100 16 256 |
[root@cent6m ~]# cat /etc/squid/squid.conf | sed '/^#/d; /^ *$/d' |
acl
manager proto cache_object acl localhost src 127.0.0.1/32 ::1 acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1 acl localnet src 192.168.99.0/24 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 allow manager localhost http_access deny manager http_access deny !Safe_ports http_access deny CONNECT !SSL_ports http_access allow localnet http_access allow localhost http_access deny all http_port 192.168.99.1:8080 hierarchy_stoplist cgi-bin ? cache_dir ufs /var/spool/squid 70000 32 256 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 cache_mem 32 MB maximum_object_size 144 MB |
function FindProxyForURL(url,
host) { if (isPlainHostName(host)) return "DIRECT"; if (isInNet(host, "192.168.99.0", "255.255.255.0")) return "DIRECT"; if (isInNet(host, "127.0.0.1", "255.255.255.255")) return "DIRECT"; return "PROXY 192.168.99.1:8080"; } |
[root@cent6m
~]# service squid start [root@cent6m ~]# chkconfig --levels 235 squid on |
[root@cent6m ~]# ls
/var/lib/squidguard/ ads aggressive drugs gambling local proxy warez adult audio-video forums hacking mail violence [root@cent6m ~]# ls /var/lib/squidguard/warez/ domains domains.db expressions urls urls.db |
[root@cent6m ~]# file
/var/lib/squidguard/warez/domains /var/lib/squidguard/warez/domains: ASCII text [root@cent6m ~]# file /var/lib/squidguard/warez/domains.db /var/lib/squidguard/warez/domains.db: Berkeley DB (Btree, version 9, native byte-order) |
redirect_program
/usr/bin/squidGuard -c /etc/squid/squidguard.conf redirect_children 5 |
[root@cent6m squid]# cp
squidguard.conf squidguard.conf.default |
dbhome
/var/lib/squidguard logdir /var/log/squidguard dest ads { domainlist ads/domains urllist ads/urls expressionlist ads/expressions redirect http://localhost/images/nulbanner.png } dest adult { domainlist adult/domains urllist adult/urls expressionlist adult/expressions } dest aggressive { domainlist aggressive/domains urllist aggressive/urls expressionlist aggressive/expressions } dest drugs { domainlist drugs/domains urllist drugs/urls expressionlist drugs/expressions } dest gambling { domainlist gambling/domains urllist gambling/urls expressionlist gambling/expressions } dest hacking { domainlist hacking/domains urllist hacking/urls expressionlist hacking/expressions } dest proxy { domainlist proxy/domains urllist proxy/urls expressionlist proxy/expressions } dest violence { domainlist violence/domains urllist violence/urls expressionlist violence/expressions } dest warez { domainlist warez/domains urllist warez/urls expressionlist warez/expressions } acl { default { pass !ads !adult !aggressive !drugs !gambling !hacking !proxy !violence !warez any redirect http://localhost/cgi-bin/squidGuard.cgi?clientaddr=%a&srcclass=%s&targetclass=%t&url=%u } } |
[root@cent6m
~]# mkdir /var/www/html/images |
[root@cent6m ~]# chmod +r
/var/www/html/images/blocked.gif [root@cent6m ~]# chmod +r /var/www/html/images/nulbanner.png [root@cent6m ~]# chmod +x /var/www/cgi-bin/squidGuard.cgi |
[root@cent6m
~]# squid -k reconfigure |
[root@centos5 ~]# mkdir
/var/lib/squidguard/ejnye [root@centos5 ~]# echo "nemjooldal.hu" > /var/lib/squidguard/ejnye/domains [root@cent6m ~]# chown -R squid:squid /var/lib/squidguard |
dest
ejnye { domainlist ejnye/domains } |
pass !ads !adult !ejnye
!aggressive !drugs !gambling !hacking !proxy !violence !warez any |
#!/bin/bash #/usr/bin/squidguard -C all /usr/bin/squidguard -C /var/lib/squidguard/ejnye/domains chown -R squid:squid /var/lib/squidguard squid -k reconfigure |
[root@cent6m
~]# chmod u+x /root/rebuild.sc [root@cent6m ~]# /root/rebuild.sc Processing file and database /var/lib/squidguard/ejnye/domains [==================================================] 100 % done |
[root@cent6m ~]# tail -f
/var/log/squid/access.log 1331154229.583 626 192.168.99.12 TCP_MISS/200 12317 GET http://fsf.hu/ - DIRECT/195.56.172.143 text/html 1331154230.391 299 192.168.99.12 TCP_MISS/200 2989 GET http://fsf.hu/kapcsolatfelvetel/ - DIRECT/195.56.172.143 text/html |
#!/usr/bin/perl -p s/^\d+\.\d+/localtime $&/e; |
[root@cent6m ~]# chmod u+x
squidlog.sc [root@cent6m ~]# tail -f /var/log/squid/access.log | /root/squidlog.sc Wed Mar 7 23:12:47 2012 86 192.168.99.12 TCP_MISS/304 413 GET http://fsf.hu/wp-includes/images/rss.png - DIRECT/195.56.172.143 - |
[root@cent6m ~]# yum install sarg No package sarg available. |
[root@cent6m ~]# yum --enablerepo=rpmforge-testing
install sarg Installing: sarg i686 2.3.1-1.el6.rft rpmforge-testing 512 k Installed: sarg.i686 0:2.3.1-1.el6.rft Complete! |
access_log /var/log/squid/access.log graph_font /usr/share/fonts/dejavu/DejaVuSans.ttf output_dir /var/www/sarg/ONE-SHOT resolve_ip yes index yes mail_utility mail show_successful_message no |
[root@cent6m ~]# service httpd reload A(z) httpd újratöltése: |