DSM 6.x und darunter Synology Photos über Reverse Proxy zeigt unter DSM falsche IP an

Alle DSM Version von DSM 6.x und älter

Ulfhednir

Benutzer
Sehr erfahren
Mitglied seit
26. Aug 2013
Beiträge
3.264
Punkte für Reaktionen
923
Punkte
174
Hallo Freunde der Sonne,
zur Abwechslung habe ich auch mal eine Frage und gleich vorweg: Bei der Kategorisierung des Threads tue ich mich aktuell schwer.

Nun zum Thema:
Bekanntermaßen verwende ich ja den Nginx (SWAG) von LinuxServer.io. Dieser läuft im Docker-Container. Was mich seit jeher anstinkt ist die Tatsache, dass bei einem Zugriff über den Reverse Proxy die "falsche" IP-Adresse weitergeschliffen wird. Konkretes Beispiel: Wenn ich per Smartphone zugreife, steht in DSM unter Verbindungen die interne IP-Adresse des Reverse Proxies (Docker-IP) anstelle der externen IP-Adresse des Smartphones.



Ulkigerweise habe ich allerdings festgestellt, dass die Problematik nicht immer besteht. Wenn ich per DS Video-App über den Reverse Proxy zugreife, wird die externe IP korrekt dargestellt. Greife ich jedoch per Synology Photos zu, wird wieder die Docker-IP dargestellt.

X71fvUj.png

Hier noch ein Schaubild: Ich bin mit dem Smartphone über LTE verbunden. Es werden unterschiedliche IPs verwendet.


Das ist unter dem Aspekt dubios, weil ich für beide Applikationen identische Settings verwende. Lediglich die Subdomain und Portangabe ist differenziert. (siehe proxy_pass)

Code:
## Version 2020/12/09
# make sure that your dns has a cname set for photo

server {
    listen 80;
    listen 443 ssl;
    listen [::]:443 ssl;

    server_name photo.*;

    include /config/nginx/ssl.conf;

    client_max_body_size 0;

    # enable for ldap auth, fill in ldap details in ldap.conf
    #include /config/nginx/ldap.conf;

    # enable for Authelia
    #include /config/nginx/authelia-server.conf;

    location / {
        # enable the next two lines for http auth
        #auth_basic "Restricted";
        #auth_basic_user_file /config/nginx/.htpasswd;

        # enable the next two lines for ldap auth
        #auth_request /auth;
        #error_page 401 =200 /ldaplogin;

        # enable for Authelia
        #include /config/nginx/authelia-location.conf;

        include /config/nginx/proxy.conf;
        resolver 127.0.0.11 valid=30s;
        proxy_pass https://192.168.1.21:5443;
    }
}

Die Frage der Fragen: Kann das irgendjemand reproduzieren? Auch in Anbetracht des integrierten Reverse Proxy in DSM.
Wie verhält sich das bei euch mit unterschiedlichen Anwendungen?

Es soll beinah eine generelle Problematik bestehen siehe auch:
https://www.pedrolamas.com/2020/11/04/exposing-the-client-ips-to-docker-containers-on-synology-nas/
https://github.com/linuxserver/docker-swag/issues/55

Den beschriebenen Lösungsansatz hatte ich schon durchprobiert. Half mir aber nicht wirklich weiter - oder ich hab mich zu glatt angestellt.
 
Zuletzt bearbeitet:

Fusion

Benutzer
Sehr erfahren
Mitglied seit
06. Apr 2013
Beiträge
14.137
Punkte für Reaktionen
898
Punkte
424
Zuletzt bearbeitet:
  • Like
Reaktionen: Ulfhednir

Ulfhednir

Benutzer
Sehr erfahren
Mitglied seit
26. Aug 2013
Beiträge
3.264
Punkte für Reaktionen
923
Punkte
174
Ich kann erstmal so viel sagen:
Code:
proxy_set_header X-Forwarded-Ssl on;
proxy_set_header X-Real-IP $remote_addr;

wird standardmäßig aufgerufen. Ich werde deinen Link Morgen in Ruhe prüfen.
Bin nach dem 5 Bier etwas zu wirr zum durchdenken... :oops:
 

ctrlaltdelete

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
30. Dez 2012
Beiträge
10.110
Punkte für Reaktionen
3.646
Punkte
414
OT: boah, ich hatte noch gar keins heute, aber das ändert sich bald :cool:
 

Cavekeeper

Benutzer
Mitglied seit
08. Okt 2008
Beiträge
117
Punkte für Reaktionen
3
Punkte
18
Die Lösung für eine sichtbare IP ist ein zweites MACVLAN-Netzwerk für den Docker-SWAG. Dieses dann von extern im Router freigeben.
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat