http://whatismyip.network/detect-isp-proxy-tool/
Eine Beispielhafte Minimal-Konfiguration, für einen komplett offenen Proxy, finden Sie hier: squid.conf
Unter Ubuntu liegt die Konfigurationsdatei hier: "/etc/squid/squid.conf"
Wenn unser Proxy hinter einem oder mehreren anderen Proxy's steht, dann muss der oder die Proxy's in dieser Form eingetragen werden. Jeder nutzbare Proxy bekommt eine eigene Zeile:
### dieser Proxy steht auch nur hinter Proxy's (192.168.1.1, 192.168.1.2, 192.168.1.3) cache_peer 192.168.1.1 parent 3128 3130 cache_peer 192.168.1.2 parent 3128 3130 cache_peer 192.168.1.3 parent 3128 3130
Die Zugriffsrechte werden als ACL's bezeichnet.
Den einzelnen ACL's wird hier ein Name gegeben.
Diese braucht man praktisch immer.
acl all src all acl manager proto cache_object acl localhost src 127.0.0.1/32 acl to_localhost dst 127.0.0.0/8 acl SSL_ports port 443 # https acl SSL_ports port 873 # rsync acl Safe_ports port 21 # ftp acl Safe_ports port 80 # http acl Safe_ports port 443 # https acl Safe_ports port 873 # rsync acl purge method PURGE acl CONNECT method CONNECT
Auf diese Weise kann man recht komplexe Konfigurationen sehr übersichtlich halten.
acl hosts.allow src "/etc/squid/acls/hosts.allow" acl hosts.deny src "/etc/squid/acls/hosts.deny" acl hosts.admin src "/etc/squid/acls/hosts.admin" acl localnet src "/etc/squid/acls/localnet" acl kinder.allow src "/etc/squid/acls/kinder.allow"
acl whitelist.ip dst "/etc/squid/acls/whitelist.ip" acl whitelist.url url_regex "/etc/squid/acls/whitelist.url" acl blacklist.ip dst "/etc/squid/acls/blacklist.ip" acl blacklist.url url_regex "/etc/squid/acls/blacklist.url" acl kinder.url url_regex "/etc/squid/acls/kinder.url"
Hier werden entsprechend, die oben definierten Quellen bzw. Ziele, erlaubt oder verboten.
Die Regel-Zeilen werden von oben nach unten abgearbeitet und mit einem
logischen ODER verknüpft.
Regeln in einer Zeile dagegen werden mit einem logischen UND verknüpft.
Diese braucht man praktisch immer.
http_access allow manager localhost http_access deny manager http_access allow purge localhost http_access deny purge http_access deny !Safe_ports http_access deny CONNECT !SSL_ports http_access allow localhost
http_access deny hosts.deny http_access allow hosts.admin http_access deny blacklist.ip http_access deny blacklist.url http_access deny hosts.allow !whitelist.ip http_access allow hosts.allow http_access allow kinder.allow kinder.url http_access deny all
Dieses braucht man praktisch immer.
icp_access allow localnet icp_access deny all http_port 3128 hierarchy_stoplist cgi-bin ? access_log /var/log/squid/access.log squid refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern -i (/cgi-bin/|\?) 0 0% 0 refresh_pattern (Release|Package(.gz)*)$ 0 20% 2880 refresh_pattern . 0 20% 4320 acl shoutcast rep_header X-HTTP09-First-Line ^ICY\s[0-9] upgrade_http0.9 deny shoutcast acl apache rep_header Server ^Apache broken_vary_encoding allow apache coredump_dir /var/spool/squid
### soviel RAM darf der Proxy nutzen cache_mem 256 MB
### soviel Speicherplatz darf der Proxy auf der Platte nutzen # 512: gesammter Plattenplatz in MB für den Cache # 64: Anzahl der Verzeichnisse, die in erster Ebene # 256: Anzahl der Verzeichnisse, die in zweiter Ebene cache_dir ufs /var/spool/squid 512 64 256
# ohne Cache, er darf keinen Speicherplatz auf der Platte nutzen cache_dir null /var/spool/squid
Als erstes müssen wir das Verzeichnis anlegen, in dem die Dateien des Regelwerkes abgelegt werden können:
# mkdir -p /etc/squid/acls/
192.168.1.0/24
192.168.1.13
10.0.0.0/8 192.168.0.0/16
192.168.1.100
http://www.google.de http://de.finance.yahoo.com/ http://de.wetter.yahoo.com/ http://www.daswetter.net/
192.168.1.200
http://de.yahoo.com/
Diese Rechner dürfen über all hin:
192.168.25.8 # Laptop 192.168.25.18 # Workstation
Diese Rechner werden von Kindern verwendet.
192.168.30.100 # Laptop 192.168.30.101 # Workstation
Auf diese Web-Seiten dürfen die Kinder zugreifen.
http://www.toggolino.de/ http://www.spielen.com/ http://www.fragfinn.de/ http://www.blinde-kuh.de/