Regina Schlaukrug: Automatisches HTTP-Auth bei Reverse-Proxy mit Apache (Version 2.4, mod_proxy, mod_headers)

Beitrag lesen

Hm.

http://admin:admin@192.168.1.9/kamera/cgi-bin/snapshot.cgi?loginuse=admin&loginpas=admin

Also. Ich habe mir das mit meinem Apache angesehen.

Wenn ich nun in der HTML Seite

<img src="http://admin:admin@192.168.1.9/kamera_haupt_rrm/cgi- bin/snapshot.cgi?loginuse=admin&loginpas=admin" name="camimage" style="width:1024px; height:768px">

Wird das Kamerabild dargestellt, jedoch muss ich mich immer beim aktualisieren neu bei 192.168.1.9 anmelden.

Ja. Die Daten für Username und Passwort (vor dem "@") werden ignoriert. Ist auch besser so. Da kommt keiner auf die Idee, diese im Klartext zu speichern, der Apache fragt also nach. Aber es gibt eine Lösung.

Was zu tun ist:

1. Installation

mod_headers aktivieren:

# a2enmod headers
# service apache2 restart

2. Benutzername und Passwort hashen:

2.a z.B. mit Python-Skript

#!/usr/bin/python

import base64
hash = base64.b64encode(b"DeinBenutzer:DeinPasswort")
print hash

2.b Ausführen:

~> python hashCred.py
RGVpbkJlbnV0emVyOkRlaW5QYXNzd29ydA==

3. Hash Eintragen:

<Location /kamera>
    RequestHeader set Authorization "Basic RGVpbkJlbnV0emVyOkRlaW5QYXNzd29ydA=="
</Location>
ProxyPass "/kamera" "http://192.168.1.9/kamera/cgi-bin/snapshot.cgi?loginuse=admin&loginpas=admin"

Hinweis:

Ob "?loginuse=admin&loginpas=admin" noch notwendig sind kann ich nicht wissen.

Bitte teile mit, ob es geholfen hat. Hier ging es (mit einer geschützten Location).