LinuxHowtoSquid
How To pro Squid
SARG (Squid Analysis Report Generator)
DansGuardian
DansGuardian with Anti-Virus? plugin
Transparent Proxy with Linux and Squid mini-HOWTO
Nastavení Squid pro transparentní proxy
[+]- httpd_accel_host virtual
- httpd_accel_port 80
- httpd_accel_with_proxy on
- httpd_accel_uses_host_header on
Instalace a nastavení SARG
[+]- Stáhnout poslední SARG a nainstalovat na serveru.
- Upravit konfiguraci /etc/sarg/sarg.conf
- Nastavit jazyk language Czech
- Změnit adresář pro ruční spuštění output_dir /data/web/data/sarg/ONE-SHOT
- Nastavit resolvování IP adres resolve_ip yes
- Pokud se nepoužívá přihlašování uživatelů na proxy, zapnout user_ip yes
- Nastavit formát datumu date_format e
- Nastavit čárku jako oddělovač řádů use_comma yes
- Nastavit soubor se seznamem ignorovných kódů exclude_codes /etc/sarg/exclude_codes ve formátu squidu např. NONE/400
- Pokud se nepoužívá přihlašování uživatelů, je možné nastavit k jednotlivým IP adresám jména uživatelů zadáním volby usertab /etc/sarg/sarg.usertab a zapsáním obsahu ve tvaru IP_adresa Jmeno_Uzivatele
- Nastavit charset Latin2
- Pokud se používá DansGuardian, tak nastavit analyzování jeho logů dansguardian_conf /etc/dansguardian/dansguardian.conf
- Pokud je požadováno omezovat počet posledních reportů, tak nastavit např. lastlog 20
- Nastavit kořenový adresář WWW www_document_root /data/web/data
- Změnit cestu k CSS souboru external_css_file /data/web/data/sarg/sarg.css
- Přesunout adresář /var/www/sarg do /data/web/data
- Vytvořit konfigurace virtuálu pro SARG na http a https (viz. níže)
- Upravit skripty pro automatické generování statistik /etc/cron.daily/sarg, /etc/cron.weekly/sarg a /etc/cron.monthly/sarg. Změnit cesty pro ukládání statistik /var/www/sarg/daily na /data/web/data/sarg/daily, /var/www/sarg/monthly na /data/web/data/sarg/monthly a /var/www/sarg/weekly na /data/web/data/sarg/weekly
- Vytvořit adresář pro log soubory SARG virtuálu
- Opravit skript /etc/cron.monthly/sarg na řádku 15 je navíc jedna uzavírací hranatá závorka ]
Soubor /data/web/usr/local/apache2/conf/virtuals/sarg.conf:
<VirtualHost IP:80>
ServerName sarg.DOMENA.cz
RedirectPermanent / https://sarg.DOMENA.cz/
</VirtualHost>
Soubor /data/web/usr/local/apache2/conf/virtuals/sarg-ssl.conf:
<VirtualHost IP:443>
DocumentRoot "/data/sarg"
ServerName sarg.DOMENA.cz
ServerAdmin servis@uvt.cz
SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile /etc/httpd/ssl.crt/openport.cert
SSLCertificateKeyFile /etc/httpd/ssl.key/openport.key
<Files ~ "\.(cgi|shtml|phtml|php3?)$">
SSLOptions +StdEnvVars
</Files>
SetEnvIf User-Agent ".*MSIE.*" nokeepalive ssl-unclean-shutdown downgrade-1.0 force-response-1.0
CustomLog /var/log/sarg/ssl_request.log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
ErrorLog /var/log/sarg/error.log
TransferLog /var/log/sarg/access.log
<Directory /data/sarg>
Order Allow,Deny
Allow From All
AllowOverride All
</Directory>
</VirtualHost>
Instalace a nastavení DansGuardian
[+]
Konfigurace
V souboru /etc/dansguardian/dansguardian.conf nastavit:
- logfileformat = 3 (Squid Log File Format) pokud má být zároveň používaný SARG, který parsuje squid logy, jinak je možné použít logfileformat = 1 (DansGuardian format), který zobrazuje důvod zamítnutí přístupu na stránku
- filterport = XXXX nastaví port, na kterém bude DansGuardian? poslouchat
- proxyip = IP a proxyport = PORT určí IP adresu a port Squid proxy, kam se bude DansGuardian? připojovat pro vyřízení stažení dat
- weightedphrasemode = X nastav 0, pokud se nemá dělat váhové testování (pokud je nastavené, zakážou se i normální stránky, např. www.seznam.cz)
- maxuploadsize = X nastav na -1, pokud chces povolit posílání souborů do Internetu pomocí metody POST, nebo nastav na nějaké číslo, které bude určovat maximální velikost souboru v kB, který lze poslat, číslo 0 zakáže posílání souborů úplně
- language = 'czech' nastav pro českého zákazníka, nebo nastav jiný jazyk
Dále je dobré stáhnout skript na aktualizaci blacklistů URL a domén a vlož ho do adresáře /etc/cron.monthly a nastav práva na spouštění. Ve skriptu je nutné pouze upravit nastavení proměnné BL_URL, aby neobsahovala URL se seznamem smalltestlist, ale bigblacklist. Dále vytvoř adresář /etc/dansguardian/blacklists. Stáhni aktuální blacklisty spuštěním skriptu na aktualizaci blacklistů UpdateBL.
Do souboru /etc/dansguardian/bannedurllist vlož příkazy Include s těmi soubory urls z podadresářů adresáře blacklists, které URL chceš blokovat. Do souboru /etc/dansguardian/bannedsitelist vlož příkazy Include s těmi soubory domains z podadresářů adresáře blacklists, které celé domény chceš blokovat.
Do souboru /etc/dansguardian/exceptionsitelist vlož naopak ty domény, které nechceš celé nikdy blokovat (např. Microsoft Update, AVG update, atd.). V souboru /etc/dansguardian/bannedmimetypelist můžeš nastavit zakázané MIME typy a v souboru /etc/dansguardian/bannedextensionlist můžeš nastavovat zakázané přípony souborů.