Apache ProxyPass zum TP-Link-Router

Apache ProxyPass zum TP-Link-Router

Manchmal müssen wir von außerhalb des Büros auf einen oder mehrere unserer Router zugreifen. Das von unserer Website aus zu tun, wäre sehr praktisch. Unser Server läuft mit Apache unter Windows 2008 Server. Da er einige Domänen bedient, wurden Änderungen an der Datei httpd-vhosts.conf vorgenommen:

ProxyRequests Off  
ProxyPreserveHost On  

<Location "/router/">  
  ProxyPass        http://192.168.1.40/  
  ProxyPassReverse http://192.168.1.40/  
</Location>  

Beim Surfen zuhttp://www.ourdomain.com/router/die Login-Seite erscheint zwar, aber es fehlen einige Bilder und der (Bild für) Login-Button. Nach dem Login erscheint ein einziges Durcheinander von "Verboten".

Es scheint, als ob die ProxyPreserveHost-Anweisung komplett ignoriert wurde. Stimmt etwas mit der obigen Änderung nicht? Haben wir etwas falsch verstanden? Könnte es daran liegen, dass die Router-Hauptseite mit Javascript erstellt wird und etwas anderes konfiguriert werden muss? Zu Ihrer Information: Nach dem Einloggen in den Router selbst ändert sich die URL nicht (bleibthttp://192.168.1.40)

Die Login-Seite wie sie von außen aussieht:

Die Anmeldeseite, wie sie von außen aussieht

Die richtige Login-Seite:

Die richtige Login-Seite

Die Hauptseite des Routers nach dem Login von außerhalb:

Die Hauptseite des Routers nach dem Login von außen

Antwort1

Ich glaube, TP-Link Archer C2 prüft auch den Referrer und gibt 403 aus, wenn er nicht mit der internen IP Ihres Routers übereinstimmt. Das ist eine Sicherheitsmaßnahme, um zu verhindern, dass Websites Inhalte vom Router laden.

Versuchen Sie, den Header auf Ihrem Reverse-Proxy manuell zu ändern:

<Location "/router/">  
    ProxyPass        http://192.168.1.40/  
    ProxyPassReverse http://192.168.1.40/  

    Header add referer "http://192.168.1.40/"
    RequestHeader set referer "http://192.168.1.40/"
</Location>  

Bitte beachten Sie, dass Ihr Setup die Webkonfigurationsoberfläche mit all ihren möglichen Sicherheitsproblemen dem externen Netzwerk offenbart, da die Router-Firmware normalerweise nicht automatisch aktualisiert wird. Es ist gut, dass Sie TLS bereits für die Verbindung aktiviert haben, aber Sie möchten möglicherweise auch eine zusätzliche Authentifizierungsebene vor der eigenen Anmeldeseite des Routers hinzufügen.

verwandte Informationen