Da ich mich in letzter Zeit etwas mit der Verwendung der DS als Proxy befasst habe möchte ich hier ein kleines Tutorial für Tinyproxy ablegen. Ich hatte zuerst Squid auf der DS laufen da es dafür gute Anleitungen gab, leider verhindert Squid, dass sich die Festplatte schlafen legt und deswegen bin ich jetzt bei Tinyproxy gelandet. Leider gibt es für Tinyproxy keine richtigen Tutorials und deswegen möchte ich das gerne zum Anlass nehmen selbst eines zu Schreiben. Da es sich hierbei um mein erstes Tutorial handelt möchte ich um etwas Nachsicht und konstruktive Kritik bitten.
Wie installiere ich Tinyproxy auf der DS (in meinem Fall eine DS111):
Voraussetzungen:
1. IPKG Paket installieren:
Dazu in das geöffnete Terminal mit dem root-User
eingeben. Leider ist die Version im IPKG realtiv alt: 1.6... ,aktuell wäre 1.8..., ist aber für die meisten Zwecke trotzdem ausreichend.
2. Startup Script erstellen
Da die IPKG-Installation kein eigenes start-stop-Script enthält muss selbst eines erstellt werden. Dazu im Editor eurer Wahl (Ich verwende gerne Nano) folgen Code unter /opt/etc/init.d/S80tinyproxy speichern.
3. Tinyproxy Konfiguration anpassen
Als letzten Schritt muss noch die tinyproxy.conf angepasst werden.
Diese findet man unter /opt/etc/tinyproxy/tinyproxy.conf
Folgende Zeilen habe ich geändert:
Falls Ihr die Firewall auf der DS aktiviert habt müsst Ihr natürlich noch den entsprechenden Port freigeben. Das gilt auch für Router-Firewalls.
5. Testlauf
Nun könnt Ihr eure DS neustarten und dann sollte der Tinyproxy laufen. Überprüfen kann man das entweder im Terminal mit
Falls der Proxy nicht starten sollte kann man versuchen über die Konsole mit
Wie installiere ich Tinyproxy auf der DS (in meinem Fall eine DS111):
Voraussetzungen:
- Installiertes IPKG
- Terminal-Zugriff auf die DS
1. IPKG Paket installieren:
Dazu in das geöffnete Terminal mit dem root-User
Rich (BBCode):
ipkg install tinyproxy
2. Startup Script erstellen
Da die IPKG-Installation kein eigenes start-stop-Script enthält muss selbst eines erstellt werden. Dazu im Editor eurer Wahl (Ich verwende gerne Nano) folgen Code unter /opt/etc/init.d/S80tinyproxy speichern.
#!/bin/sh
TINYD="/opt/sbin/tinyproxy"
case $1 in
start)
echo "Starting tinyproxy"
${TINYD} >/dev/null 2>&1
echo "done"
;;
stop)
PID=`cat /var/run/tinyproxy.pid`
`kill ${PID}`
echo "Stopping tinyproxy ${PID}"
;;
restart)
$0 stop
$0 start
;;
*)
echo "Usages: $0 [start|stop|restart]"
;;
esac
3. Tinyproxy Konfiguration anpassen
Als letzten Schritt muss noch die tinyproxy.conf angepasst werden.
Diese findet man unter /opt/etc/tinyproxy/tinyproxy.conf
Folgende Zeilen habe ich geändert:
4. Firewall der DS anpassen#
# Name of the user the tinyproxy daemon should switch to after the port
# has been bound.
#
User admin ///Hier einen User eintragen der auf der DS vorhanden ist (zb. Admin)
Group users ///Hier die entsprechende Gruppe eintragen
#
# Port to listen on.
#
Port xxxx ///Den gewünschten Port eintragen
#
# This is the absolute highest number of threads which will be created. In
# other words, only MaxClients number of clients can be connected at the
# same time.
#
MaxClients 10 ///Hier die maximal erwünschten User eintragen
#
# The following is the authorization controls. If there are any access
# control keywords then the default action is to DENY. Otherwise, the
# default action is ALLOW.
#
# Also the order of the controls are important. The incoming connections
# are tested against the controls based on order.
#
#Allow 127.0.0.1 /// Hier kann eine Zugriffsberechtigung für betimmte IPs bzw IP-Ranges vergeben werden
#Allow 192.168.1.0/25 /// Ich habe alles auskommentiert, dass entspricht einem Allow all
#
# The "Via" header is required by the HTTP RFC, but using the real host name
# is a security concern. If the following directive is enabled, the string
# supplied will be used as the host name in the Via header; otherwise, the
# server's host name will be used.
#
ViaProxyName "tinyproxy" ///Hier den gewünschten Servernamen angeben (wird zb. für die Error-Messages verwendet)
Falls Ihr die Firewall auf der DS aktiviert habt müsst Ihr natürlich noch den entsprechenden Port freigeben. Das gilt auch für Router-Firewalls.
5. Testlauf
Nun könnt Ihr eure DS neustarten und dann sollte der Tinyproxy laufen. Überprüfen kann man das entweder im Terminal mit
oder man versucht einfach mal die lokale IP der DS und den entsprechenden Port als Proxy im Browser einzustellen.
Falls der Proxy nicht starten sollte kann man versuchen über die Konsole mit
in den Debug-Mode zu wechseln um eventuell auftretende Fehler zu erkennen.tinyproxy -d
Zuletzt bearbeitet: