Forwardproxy

Hallo,

ich bin dabei die Webfront via ForwardProxy aufzurufen. Ich nutze die Adresse “symcon.internal”. Nun denkt Symcon, dass ich aus dem Internet komme und verlangt ein Kennwort. Auch wenn ich das Kennwort testweise ausschalte und auch Externen Zugriff erlaube, dann komme ich nicht weiter.Ich nutz noch das alte Webfront. Kann man Symcon sagen, dass es bestimmt Seiten erlauben kann?

Folgend ein Ausschnitt aus der vHost

# --- Proxy-Einstellungen ---
ProxyPreserveHost On
RequestHeader set X-Forwarded-Proto "https"
RequestHeader set X-Forwarded-For %{REMOTE_ADDR}s

# --- SSL Proxy aktivieren ---
SSLProxyEngine on
SSLProxyVerify none
SSLProxyCheckPeerCN off
SSLProxyCheckPeerName off
SSLProxyCheckPeerExpire off

# --- Remote IP (Client-IP durchreichen) ---
RemoteIPHeader X-Forwarded-For
RemoteIPTrustedProxy 127.0.0.1
RemoteIPTrustedProxy ::1
RemoteIPTrustedProxy 172.28.0.0/16

# --- Weiterleitung an den internen Symcon-Server ---
ProxyPass / http://172.28.0.20:82/
ProxyPassReverse / http://172.28.0.20:82/

Selbst, wenn ich ein Passwort seite, dann ist lässt er mich auf der Übersichtsseite zwar weiter, dann fragt er dennoch auf der nächsten Seite wieder nach dem Passwort ohne mich weiter zu lassen.

Schau mal in den Netzwerk tab vom Browser. Ich vermute dein RP macht den WebSocket für den Rückkanal nicht korrekt.

paresy

ich habe das nun mal auf die Kacheln umgebogen. Der Ladekreis läuft die ganze Zeit und kommt nicht weiter. Wenn ich dann die Entwicklerkonsole von Firefox aufmache sehe ich beispielsweise bei symcon.svg in Spalte Übertragen: NS_BINDING_ABORTED

muss man der symcon noch irgendwo einstellen, dass forward proxy verwendet werden darf?

Ohne den Websocket auch korrekt zu behandeln, wird das nix:
Schau mal hier:

Danke Nall-chan!
Das hat schon mal geholfen. Nun komme ich wenigsten, wenn auch mit passwort auf die Seite. Kann man es auch hinbekommen, dass er das als internem Heimnetzwerknutzer erkennt, sodass man kein Passwort mehr eingeben muss?

Folgend nochmals die Konfig mit es zumindest mit Passwort klappt.

<VirtualHost *:80>
    ServerName symcon.internal
    Redirect permanent / https://symcon.internal/
</VirtualHost>

<VirtualHost *:443>
    ServerName symcon.internal

    # --- SSL Konfiguration ---
    SSLEngine on
    SSLCertificateFile /etc/ssl/private/symcon.internal.crt
    SSLCertificateKeyFile /etc/ssl/private/symcon.internal.key
    SSLCertificateChainFile /etc/ssl/private/symcon.internal-fullchain.pem

    # --- Logging ---
    ErrorLog ${APACHE_LOG_DIR}/symcon_internal_error.log
    CustomLog ${APACHE_LOG_DIR}/symcon_internal_access.log combined

    # --- Proxy-Einstellungen ---
    ProxyPreserveHost On
    RequestHeader set X-Forwarded-Proto "https"
    RequestHeader set X-Forwarded-For %{REMOTE_ADDR}s

    # --- SSL Proxy aktivieren ---
    #SSLProxyEngine on
    #SSLProxyVerify none
    #SSLProxyCheckPeerCN off
    #SSLProxyCheckPeerName off
    #SSLProxyCheckPeerExpire off

    # --- Remote IP (Client-IP durchreichen) ---
    RemoteIPHeader X-Forwarded-For
    RemoteIPTrustedProxy 127.0.0.1
    RemoteIPTrustedProxy ::1
    RemoteIPTrustedProxy 172.28.0.0/16

    # --- Weiterleitung an den internen Symcon-Server ---
    ProxyPass / http://localhost:82/
    ProxyPassReverse / http://localhost:82/
    RewriteEngine On
    RewriteCond %{HTTP:Upgrade} =websocket [NC]
    RewriteRule /(.*) ws://localhost:82/$1 [P,L]
</VirtualHost>


Laut OpenAi soll es eine Einstellung geben?

1. Symcon „Trusted Proxy“ aktivieren

  • Ab Symcon 6 gibt es die Einstellung „Trusted Proxy“ in den WebFront / WebServer-Einstellungen.

  • Damit sagst du Symcon: „Wenn Anfragen über diesen Proxy kommen, nutze X-Forwarded-For als echte Client-IP“.

  • Dann erkennt Symcon interne Clients korrekt, auch wenn sie über Apache kommen.

Die gibt es nicht. Wenn du aber den X-Forwarded-For weglässt dann nimmt er alle Anfragen als Lokal wahr.

paresy

Parsey, du bist der Held! Das klappt. Manchmal kann es so einfach sein. Nachdem ich die anderen Probleme mit eure Hilfe gelöst hatte, war ich nicht auf die Idee gekommen das wieder rauszunehmen, da diese Einstellungen ja eigentlich genau dafür da sind. Hauptsache es funktioniert nun. Macht es Sinn dazu in der Doku etwas zu schreiben?