Proxy mit Filter und Virenschutz über SSL-Explorer

Das Ziel ist ein Proxy, welcher unerwünschte Inhalte herausfiltert und den Verkehr auf Viren untersucht. Damit der Proxy auch vom Web erreichbar ist, setze ich den SSL-Explorer ein.

Schlussendlich durchläuft der Verkehr diese Punkte: Computer –> SSL-Explorer –> Squid3 –> Privoxy (unerwünschte Inhalte filtern) –> Havp (Virenschutz) –> Internet.

Die Installation ist sehr einfach und die Befehle können 1:1 in die Konsole kopiert werden. Das Tutorial wurde auf einem Debian x86 Squeeze erstellt.

Java installieren

echo 'deb http://ftp.ch.debian.org/debian/ squeeze main non-free contrib' >> /etc/apt/sources.list 
aptitude update 
aptitude install ant build-essential zip unzip sun-java6-bin sun-java6-jre -y

Debian konfigurieren, damit das installierte Java verwendet wird

update-alternatives --config java 
update-alternatives --config javac

SSL-Explorer installieren
SSL-Explorer herunterladen und entpacken

wget http://downloads.sourceforge.net/project/sslexplorer/SSL-Explorer%201.0/1.0.0_RC17/sslexplorer-1.0.0_RC17-src.zip?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fsslexplorer%2F&ts=1329904674&use_mirror=switch
unzip sslexplorer-1.0.0_RC17-src.zip*
mv sslexplorer-1.0.0_RC17 sslexplorer

Ordner erstellen und Datei kopieren (ansonsten schlägt die Installation fehl)

mkdir /usr/lib/jvm/java-6-sun-1.6.0.26/lib/ 
cp sslexplorer/sslexplorer/lib/tools.jar /usr/lib/jvm/java-6-sun-1.6.0.26/lib/

SSL-Explorer installieren

ant install

Wenn diese Zeilen erscheinen, die Addresse öffnen, den SSL-Explorer konfigurieren und die Installation abschliessen.

install:
     [java] Starting installation wizard.....Point your browser to http://192.168.2.20:28080.
     [java]
     [java] Press CTRL+C or use the 'Shutdown' option from the web interface to leave the installation wizard.
     [java] .

SSL-Explorer als Service installieren

ant install-service
chmod 700 /opt/sslexplorer/sslexplorer/install/platforms/linux/sslexplorer
chmod 700 /opt/sslexplorer/sslexplorer/install/platforms/linux/x86/wrapper
/etc/init.d/sslexplorer start

Proxies und Virenschutz installieren

aptitude install squid3 privoxy libclamav-dev clamav clamav-freshclam -y 
cd /opt wget http://archive.ubuntu.com/ubuntu/pool/universe/h/havp/havp_0.92a-2_i386.deb 
dpkg -i havp_0.92a-2_i386.deb

Squid konfigurieren
Squid übergibt den Verkehr nur an Privoxy (127.0.0.1:8118)

echo 'cache_peer 127.0.0.1 parent 8118 0 no-query no-digest no-netdb-exchange default' >> /etc/squid3/squid.conf 
echo 'never_direct allow all' >> /etc/squid3/squid.conf

Squid kann nur von localhost benutzt werden

sed -i 's/http_port 3128/http_port localhost:3128/g' /etc/squid3/squid.conf
/etc/init.d/squid3 restart

Privoxy konfigurieren
Privoxy übergibt den Verkehr an Havp

echo 'forward / 127.0.0.1:3129' >> /etc/privoxy/config
/etc/init.d/privoxy restart

Havp konfigurieren
Havp kann nur von localhost benutzt werden

sed -i 's/# BIND_ADDRESS 127.0.0.1/BIND_ADDRESS 127.0.0.1/g' /etc/havp/havp.config

Den Port von 8080 auf 3129 umstellen

sed -i 's/# PORT 8080/PORT 3129/g' /etc/havp/havp.config
/etc/init.d/havp stop
/etc/init.d/havp start

Den Tunnel im SSL-Explorer konfigurieren
„SSL Tunnels“ –> „Create Tunnel“.
Bei „Name:“ und „Description:“ Proxy eintragen.
„Source Interface“ 127.0.0.1
„Source Port“ 3128
„Destination Host“ localhost
„Destination Port“ 3128
Den Tunnel starten und beim Browser den Proxy localhost:3128 einrichten.

Fertig ist der eigene Proxy mit Filter und Virenschutz über SSL-Explorer.

Weitere Schritte
Dies ist nur die Grundkonfiguration, damit der Proxy läuft. Folgende Schritte könnten zum Beispiel noch vorgenommen werden:

  • Proxy im internen Netzwerk verfügbar machen, damit im internen Netzwerk nicht der SSL-Explorer für den Proxy benutzt werden muss
  • Regeln erstellen, wer den Proxy benutzen darf
  • Filter Regeln in Privoxy ergänzen
  • Squid konfigurieren, dass weitere Dienste wie FTP oder SMTP den Proxy nutzen können
  • Havp Webseite anpassen, wenn ein Virus gefunden wird
  • Vieles mehr!

Schlusswort
Falls die Anleitung bei einem Schritt nicht / nicht mehr funktioniert, einfach einen Kommentar schreiben, ich werde die Anleitung ergänzen.
Die Anleitung darf nicht dazu benutzt werden, Firewalls von Unternehmen zu umgehen.
Danke an Stefan vom IT Blögg. Mit seinem alten Beitrag konnte ich die Grundkonfiguration erstellen. Er hat den alten Beitrag überarbeitet und einen Neuen veröffentlicht.

2 Antworten
  1. Toadie
    Toadie says:

    Danke für die Anleitung.
    Leider bekomme ich beim Starten des Tunnels die Meldung Failed to sync .
    Irgendwelche Ideen?

  2. Silvan
    Silvan says:

    Hm, den Fehler habe ich auch schon gesehen. So aus der Ferne kann ich dir nicht sagen an was das liegen könnte. Ich hab dir ne Email geschickt.

Hinterlassen Sie einen Kommentar

Wollen Sie an der Diskussion teilnehmen?
Wir freuen uns über ihren Beitrag!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *