Server mit Squid als transparentem Proxy

Installation eines Debian-Serves mit zwei Netzwerkkarten
(eth0 = extern, eth1 = internes Netzwerk)
Der Server stellt einen Squis als transparenten Proxy (Das bedeutet, dass alle angeschlossenen Geräte ohne weitere Konfiguration zwangsweise über den Squid-Proxy laufen.) zur Verfügung und beinhaltet dansguardian als Jugendschutz.

Debian herunterladen (am besten das netinstall-image): Download Debian und das Image entweder auf CD brennen oder per unetbootin oder YUMI auf einen USB-Stick übertragen.

Medium booten und Debian installieren:

  1. Install
  2. Sprache auswählen
  3. Land auswählen
  4. Tastatur auswählen
  5. primäre Netzwerkkarte (eth0) auswählen
  6. Rechnername vergeben
  7. Domainname (bei lokalem Netzwerk egal)
  8. Root Passwort
  9. Benutzername
  10. Anmeldename des Benutzers
  11. Passwort des Benutzers
  12. Partitionierung:
    – Platte auswählen
    – Alle Dateien auf eine Platte
  13. Grundsystem wird installiert
  14. Spiegelserver auswählen
  15. evtl. Proxydaten eingeben
  16. Softwareauswahl treffen:
    – SSH-Server
    – Standard-Systemwerkzeuge
  17. GRUB in den Master Boot Record (MBR) installieren
  18. Installation abgeschlossen – weiter – Neustart wird ausgelöst

Am neuen System anmelden weitere Software installieren:

apt-get install squid vim dansguardian dnsmasq

Konfiguration der Datei /etc/network/interfaces:

# loopback-Interface nicht löschen
auto lo
iface lo inet loopback

# LAN / automatische Konfiguration über DHCP
auto eth0
iface eth0 inet dhcp

# internes LAN mit statischer Konfiguration (interner Adressbereich von 192.168.3.20 - 192.168.3.200)
auto eth1
iface eth1 inet static
address 192.168.3.1
netmask 255.255.255.0
broadcast 192.168.3.255

# vorhandene Regeln und Ketten zuerst löschen (Restart-Funktionalität)
up /sbin/iptables -F
up /sbin/iptables -X
up /sbin/iptables -t nat -F

# Maskieren der LAN-Schnittstelle, Port-Forwarding & Nat aktivieren
up iptables -A FORWARD -o eth0 -i eth1 -s 192.168.0.0/24 -m conntrack --ctstate NEW -j ACCEPT
up iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
up iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 
up iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 8080
up sysctl -w net.ipv4.ip_forward=1 

# dnsmasq neu starten
up /etc/init.d/dnsmasq restart

Die Datei /etc/dnsmasq.conf mit folgendem Inhalt erstellen.

# DHCP-Server aktiv für Interface
interface=eth1

# DHCP-Server nicht aktiv für Interface
no-dhcp-interface=eth0

# IP-Adressbereich / Lease-Time
dhcp-range=interface:eth1,192.168.3.20,192.168.3.200,infinite

Konfiguration des Squid: /etc/squid/squid.conf

# aktivieren der Apache log emulation (zur Zugriffs Überwachung):
emulate_httpd_log on

# setze den Hostnamen: 
visible_hostname proxyserver

# ändere die Zeile http_port 3128 folgendermaßen:
http_port 3128 transparent

Konfiguration des Dansguardian: /etc/dansguardian/dansguardian.conf

UNCONFIGURED auskommentieren: 
# UNCONFIGURED

In /etc/dansguardian/dansguardianf1.conf

setze naughtynesslimit = 100

System neu starten (reboot) – Fertig!