Proxy für Kamera 7Links

  • Da wir alle vor der Aufgabe stehen, das Internet wieder sicherer zu machen, möchte ich meine Webcam hinter einen Proxy mit https stellen, damit die Krieger aus Nordamerika nicht immer wieder Speicherplatz belegen müssen, wenn ich das Passwort für die Kamera eingebe. Ein Raspberry Pi mit Raspbian ist dafür gut geeignet. Er ist preiswert und hat eine Leistungsaufnahme von nur 2 W. Aber da gibt es Schwierigkeiten. Ich hoffe, dass ihr mir Hinweise und Ratschläge geben könnt. Folgende Konfiguration habe ich eingerichtet:

    direkter Link zur Kamera (im internen Netzwerk):
    http://192.168.28.39:30080
    Auf dem Raspi Apache2 eingerichtet mit :

    Code
    sudo aptitude install apache2 apache2-utils libapache2-mod-proxy-html vim -y


    und die Module aktiviert:

    Code
    sudo a2enmod ssl rewrite proxy proxy_http


    in die Datei:
    /etc/apache2/sites-enabled
    für die Authentifizierung am Proxy eingefügt:

    Apache Configuration
    <Location />
                Deny from all
                AuthType basic
                AuthName "home"
                AuthUserFile /etc/apache2/ssl/httpsusers
                Satisfy Any
                Require valid-user
    	</Location>


    und im Verzeichnis /etc/apache2/ssl die Schlüssel und die Passwortdatei abgelegt:
    httpsusers
    ras3server.crt
    ras3server.key
    in der Datei /etc/apache2/sites-enabled/default-ssl
    für die ssl-Verbindung eingefügt:

    Code
    SSLEngine on
    SSLCertificateFile    /etc/apache2/ssl/ras3server.crt 
    SSLCertificateKeyFile  /etc/apache2/ssl/ras3server.key


    und:

    Apache Configuration
    ProxyRequests off
    RewriteEngine On
    ProxyPass  /cam1/ http://192.168.28.39:30080/
    ProxyPassReverse /cam1/ http://192.168.28.39:30080/

    Wenn ich die Adresse des Raspi-Proxyserver aufrufe:
    https://192.168.28.47/cam1/
    meldet sich zunächst der Apache und fordert die Authentifizierung ab.
    Wenn ich Nutzername und Passwort eingegeben habe, meldet sich das Kamera-Frontend mit:
    https://192.168.28.47/cam1/main.htm
    zur Passworteingabe für die Kamera.
    Danach bleibt der Bildschirm leer und es passiert nichts mehr. Der Browser wartet auf eine Rückgabe des Webservers (Warten auf...).
    Ich kann aber mit ctrl-U die vom Web-Frontend der Kamera gelieferte Webseite anzeigen:


    Wenn ich die in der Webseite enthaltenen Links aufrufe, bekomme ich Antworten des Webfrontend zurückgeliefert:
    https://192.168.28.47/cam1/sign.css
    https://192.168.28.47/cam1/public.js
    https://192.168.28.47/cam1/get_status.cgi
    https://192.168.28.47/cam1/login.htm

    Nur wenn ich aufrufe:
    https://192.168.28.47/cam1/check_user.cgi
    geht der Browser in den Wartezustand. Offenbar ist dieser Link die Ursache, dass die obige Webseite nicht beendet wird.
    Beim direkten Aufruf der Kamera ohne Proxy so hier:
    http://192.168.28.39:30080/check_user.cgi
    fordert die Kamera beim Erstaufruf die Logindaten an (funktioniert ja auch am Proxy) oder liefert bei den nächsten Aufrufen die login-Daten:

    Code
    var user='holger';
    var pwd='passwort';
    var pri=2;


    Genau das scheint beim Proxy nicht zu funktionieren.

    Ich habe schon mit verschiedenen zusätzlichen Rewriterules experimentiert, aber ohne Erfolg.
    Was kann man tun, um den Zugriff per Proxy zu ermöglichen?
    Zur Firmware der Kamera habe ich keinen Zugriff. Kann man trotzdem irgendwie ermitteln, was in der
    check_user.cgi
    vorgeht?

    Einmal editiert, zuletzt von holger2 (27. Februar 2015 um 16:19)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!