Open mdzio opened 6 years ago
Das hört sich interessant an. Gerne würde ich die Konfiguration mal sehen. Vielleicht lässt sich die Konfiguration des Webservers auch durch Add-Ons anpassen, ohne in den read-only Bereich zu gehen.
Okay, das letzte Update hat mir die Konfiguration wieder zurückgesetzt. Ich habe aber bestimmt noch irgendwo ein Backup. Prinzipiell ist es aber recht einfach:
/etc/lighttpd/conf.d/proxy_httpsredirect.conf
#-------------------
# WebUI HTTPS (TLS)
#-------------------
$SERVER["socket"] == ":443" {
server.document-root = server_root
include "/etc/lighttpd/conf.d/sslsettings.conf"
$HTTP["url"] =~ "^/.*\.(exe|oxml|hssml).*" {
$HTTP["remoteip"] !~ "^(127\.0\.0\.1|::ffff:127\.0\.0\.1|::1)$" {
url.access-deny = ( "" )
}
}
$HTTP["url"] !~ "^/(config/)|(upnp/)|(webui/)|(ise/)|(api/)|(tools/)|(pda)|(pages/jpages)|(addons).*" {
proxy.server = ( "" => ("localhost" => ("host" => "127.0.0.1", "port" => 8183)))
}
$HTTP["url"] =~ "^/(pages/jpages).*" {
proxy.server = ( "" => ("localhost" => ("host" => "127.0.0.1", "port" => 39292)))
}
}
Direkt darunter steht der gleiche Eintrag nochmal für IPv6. Für HTTP ohne Verschlüsselung gibt es auch einen eigenen Abschnitt. Es muss dann jeweils eine zusätzliche Umleitung auf den TCP-Port des Historian definiert werden, etwa so:
$HTTP["url"] =~ "^/historian/.*" {
proxy.server = ( "" => ("localhost" => ("host" => "127.0.0.1", "port" => 8082)))
}
Für die Änderung muss man mount -o remount,rw /
ausführen, anschließend auch gerne mit mount -o remount,ro /
den Schreibschutz wieder aktivieren. Der "Proxy" lässt sich danach per /etc/init.d/S50lighttpd reload
starten. Hierin versteckt sich auch die Überprüfung, ob Umleitung auf HTTPS statt findet, nämlich durch /etc/config/httpsRedirectEnabled
.
Ich habe mich auch noch eingehender mit der SSL-Konfiguration beschäftigt, denn die ist nicht mehr ganz frisch. So mancher Browser beschwert sich über die 'unsichere' Verschlüsselung. Das muss ich aber nun wirklich aus dem Backup rausfischen. ;-)
Ich habe bei mir erfolgreich den auf der CCU vorhandenen Webserver so konfigiert, dass er als reverse proxy fungiert. Das verursacht natürlich ein wenig Verzögerung, aber sonst gab es keine Probleme. Bei Interesse kann ich die Konfiguration dafür gerne mal raussuchen. Es ist nicht ganz trivial, weil das Dateisystem read-only eingebunden ist und natürlich bei jedem Update zurückgesetzt wird.