[geloest] Nginx Reverse Proxy (proxy_pass)

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
sharbich
Beiträge: 284
Registriert: 27.09.2013 21:12:40

[geloest] Nginx Reverse Proxy (proxy_pass)

Beitrag von sharbich » 17.11.2023 12:10:22

Hallo Ihr Lieben, ich habe im WLAN eine Yamaha Musiccast Box. Über die IP Adresse 192.168.30.173 Port 80 kann ich diese ansprechen. Ich möchte den Zugriff auf https umstellen. Konfigurationen kann ich an der Webseite nicht vornehmen. Jetzt war meine Idee ein Reverse Proxy über meinen Nginx Webserver einzurichten. Mein Webserver läuft im 192.168.20.0/24 Netzwerk. Hier habe ich die IP Adresse 192.168.20.173 (FQDN:mcbme01.intern.examle.com) für den Reverse Proxy wie folgt eingerichtet.

Code: Alles auswählen

root@dsme01:~# cat /etc/nginx/sites-available/mc.conf 
server {
    # Update this line to be your domain
    server_name mcbme01.intern.example.com;
    # These shouldn't need to be changed
    listen mcbme01.intern.example.com:80;
    return 301 https://$host$request_uri;
}
server {
    server_name mcbme01.intern.example.com;
    listen mcbme01.intern.example.com:443 ssl; # managed by Harbich
    ssl_certificate /etc/ssl/certs/mcbme01.intern.example.com.crt; # managed by Harbich
    ssl_certificate_key /etc/ssl/private/mcbme01.intern.example.com.key; # managed by Harbich
    ssl_dhparam /etc/ssl/certs/dhparams.pem; # managed by Harbich
    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;
    location / {
        proxy_pass http://192.168.30.173;
    }
}
Leider funktioniert das nicht so wie ich mir das vorstelle. Irgendetwas scheint mit dem redirect nicht zu funktionieren.

Code: Alles auswählen

dsme01.intern.example.com.45358 > 192.168.30.173.80: Flags [S], cksum 0x3a2a (correct), seq 219914398, win 64240, options [mss 1460,sackOK,TS val 3180282379 ecr 0,nop,wscale 7], length 0
    192.168.30.173.80 > dsme01.intern.example.com.45358: Flags [S.], cksum 0xe0cf (correct), seq 2651179133, ack 219914399, win 14480, options [mss 1460,sackOK,TS val 183347774 ecr 3180282379,nop,wscale 2], length 0
    dsme01.intern.example.com.45358 > 192.168.30.173.80: Flags [.], cksum 0x4627 (correct), seq 1, ack 1, win 502, options [nop,nop,TS val 3180282389 ecr 183347774], length 0
    dsme01.intern.example.com.45358 > 192.168.30.173.80: Flags [P.], cksum 0x903b (correct), seq 1:875, ack 1, win 502, options [nop,nop,TS val 3180282389 ecr 183347774], length 874: HTTP, length: 874
    192.168.30.173.80 > dsme01.intern.example.com.45358: Flags [.], cksum 0x34ce (correct), seq 1, ack 875, win 4057, options [nop,nop,TS val 183347786 ecr 3180282389], length 0
    192.168.30.173.80 > dsme01.intern.example.com.45358: Flags [P.], cksum 0x8b95 (correct), seq 1:145, ack 875, win 4057, options [nop,nop,TS val 183347786 ecr 3180282389], length 144: HTTP, length: 144
    dsme01.intern.example.com.45358 > 192.168.30.173.80: Flags [.], cksum 0x41b7 (correct), seq 875, ack 145, win 501, options [nop,nop,TS val 3180282496 ecr 183347786], length 0
    dsme01.intern.example.com.45358 > 192.168.30.173.80: Flags [F.], cksum 0x41b6 (correct), seq 875, ack 145, win 501, options [nop,nop,TS val 3180282496 ecr 183347786], length 0
    192.168.30.173.80 > dsme01.intern.example.com.45358: Flags [F.], cksum 0x33cf (correct), seq 145, ack 876, win 4057, options [nop,nop,TS val 183347788 ecr 3180282496], length 0
    dsme01.intern.example.com.45358 > 192.168.30.173.80: Flags [.], cksum 0x4195 (correct), seq 876, ack 146, win 501, options [nop,nop,TS val 3180282526 ecr 183347788], length 0
Ich sehe im tcpdump Verbindungen zur IP der Yamaha Musiccast Box über Port 80 aber im Browser sehe ich folgende Meldung:

Code: Alles auswählen

Die Website ist nicht erreichbar
Die Webseite unter https://mcbme01.intern.example.com/ ist eventuell vorübergehend nicht verfügbar oder wurde dauerhaft an eine neue Webadresse verschoben.
ERR_INVALID_RESPONSE
Der FQDN: dsme01.intern.example.com hat die IP Adresse 192.168.20.20.

Stimmt etwas nicht mit meiner mc.conf vom Nginx Server? Über eine Hilfestellung würde ich mich sehr freuen.

Gruß von Stefan Harbich
Zuletzt geändert von sharbich am 22.11.2023 20:37:14, insgesamt 1-mal geändert.

Benutzeravatar
oln
Beiträge: 487
Registriert: 05.01.2021 09:41:24

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von oln » 20.11.2023 10:11:59

Moin,
ich bin jetzt nicht derr Nginx-Experte. Aber fehlt da nicht folgendes in locaton?

Code: Alles auswählen

               
proxy_set_header   X-Forwarded-For $remote_addr;
proxy_set_header   Host $http_host;
Gruß Ole
AbuseIPDB

sharbich
Beiträge: 284
Registriert: 27.09.2013 21:12:40

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von sharbich » 20.11.2023 10:39:06

Hallo,
nachdem ich die beiden Änderungen in der Konfiguration eingefügt habe und den nginx.service neu gestartet habe hat sich nichts geändert.

Code: Alles auswählen

dsme01.intern.example.com.36998 > 192.168.30.173.80: Flags [S], cksum 0xac74 (correct), seq 77798283, win 64240, options [mss 1460,sackOK,TS val 3588122021 ecr 0,nop,wscale 7], length 0
    192.168.30.173.80 > dsme01.intern.example.com.36998: Flags [S.], cksum 0x1e44 (correct), seq 1799740866, ack 77798284, win 14480, options [mss 1460,sackOK,TS val 224131617 ecr 3588122021,nop,wscale 2], length 0
    dsme01.intern.example.com.36998 > 192.168.30.173.80: Flags [.], cksum 0x83a2 (correct), seq 1, ack 1, win 502, options [nop,nop,TS val 3588122024 ecr 224131617], length 0
    dsme01.intern.example.com.36998 > 192.168.30.173.80: Flags [P.], cksum 0x6130 (correct), seq 1:855, ack 1, win 502, options [nop,nop,TS val 3588122024 ecr 224131617], length 854: HTTP, length: 854
    192.168.30.173.80 > dsme01.intern.example.com.36998: Flags [.], cksum 0x7272 (correct), seq 1, ack 855, win 4047, options [nop,nop,TS val 224131618 ecr 3588122024], length 0
    192.168.30.173.80 > dsme01.intern.example.com.36998: Flags [P.], cksum 0xc939 (correct), seq 1:145, ack 855, win 4047, options [nop,nop,TS val 224131618 ecr 3588122024], length 144: HTTP, length: 144
    dsme01.intern.example.com.36998 > 192.168.30.173.80: Flags [.], cksum 0x7fb6 (correct), seq 855, ack 145, win 501, options [nop,nop,TS val 3588122030 ecr 224131618], length 0
    dsme01.intern.example.com.36998 > 192.168.30.173.80: Flags [F.], cksum 0x7fb5 (correct), seq 855, ack 145, win 501, options [nop,nop,TS val 3588122030 ecr 224131618], length 0
    192.168.30.173.80 > dsme01.intern.example.com.36998: Flags [F.], cksum 0x71d8 (correct), seq 145, ack 856, win 4047, options [nop,nop,TS val 224131620 ecr 3588122030], length 0
    dsme01.intern.example.com.36998 > 192.168.30.173.80: Flags [.], cksum 0x7f90 (correct), seq 856, ack 146, win 501, options [nop,nop,TS val 3588122064 ecr 224131620], length 0
    dsme01.intern.example.com.37010 > 192.168.30.173.80: Flags [S], cksum 0x7bff (correct), seq 2197802197, win 64240, options [mss 1460,sackOK,TS val 3588122215 ecr 0,nop,wscale 7], length 0
    192.168.30.173.80 > dsme01.intern.example.com.37010: Flags [S.], cksum 0x4009 (correct), seq 733924091, ack 2197802198, win 14480, options [mss 1460,sackOK,TS val 224131637 ecr 3588122215,nop,wscale 2], length 0
    dsme01.intern.example.com.37010 > 192.168.30.173.80: Flags [.], cksum 0xa567 (correct), seq 1, ack 1, win 502, options [nop,nop,TS val 3588122218 ecr 224131637], length 0
    dsme01.intern.example.com.37010 > 192.168.30.173.80: Flags [P.], cksum 0x5b1d (correct), seq 1:855, ack 1, win 502, options [nop,nop,TS val 3588122218 ecr 224131637], length 854: HTTP, length: 854
    192.168.30.173.80 > dsme01.intern.example.com.37010: Flags [.], cksum 0x9438 (correct), seq 1, ack 855, win 4047, options [nop,nop,TS val 224131637 ecr 3588122218], length 0
    192.168.30.173.80 > dsme01.intern.example.com.37010: Flags [P.], cksum 0xeaff (correct), seq 1:145, ack 855, win 4047, options [nop,nop,TS val 224131637 ecr 3588122218], length 144: HTTP, length: 144
    dsme01.intern.example.com.37010 > 192.168.30.173.80: Flags [.], cksum 0xa17c (correct), seq 855, ack 145, win 501, options [nop,nop,TS val 3588122224 ecr 224131637], length 0
    dsme01.intern.example.com.37010 > 192.168.30.173.80: Flags [F.], cksum 0xa17b (correct), seq 855, ack 145, win 501, options [nop,nop,TS val 3588122224 ecr 224131637], length 0
    192.168.30.173.80 > dsme01.intern.example.com.37010: Flags [F.], cksum 0x939e (correct), seq 145, ack 856, win 4047, options [nop,nop,TS val 224131639 ecr 3588122224], length 0
    dsme01.intern.example.com.37010 > 192.168.30.173.80: Flags [.], cksum 0xa163 (correct), seq 856, ack 146, win 501, options [nop,nop,TS val 3588122245 ecr 224131639], length 0
    dsme01.intern.example.com.34677 > 192.168.30.173.37700: [udp sum ok] UDP, length 397
    dsme01.intern.example.com.34677 > 192.168.30.173.37700: [udp sum ok] UDP, length 397
    dsme01.intern.example.com.37016 > 192.168.30.173.80: Flags [S], cksum 0x5625 (correct), seq 3053960074, win 64240, options [mss 1460,sackOK,TS val 3588123262 ecr 0,nop,wscale 7], length 0
    192.168.30.173.80 > dsme01.intern.example.com.37016: Flags [S.], cksum 0x7742 (correct), seq 499809140, ack 3053960075, win 14480, options [mss 1460,sackOK,TS val 224131741 ecr 3588123262,nop,wscale 2], length 0
    dsme01.intern.example.com.37016 > 192.168.30.173.80: Flags [.], cksum 0xdca1 (correct), seq 1, ack 1, win 502, options [nop,nop,TS val 3588123264 ecr 224131741], length 0
    dsme01.intern.example.com.37016 > 192.168.30.173.80: Flags [P.], cksum 0x4f18 (correct), seq 1:881, ack 1, win 502, options [nop,nop,TS val 3588123264 ecr 224131741], length 880: HTTP, length: 880
    192.168.30.173.80 > dsme01.intern.example.com.37016: Flags [.], cksum 0xcb4a (correct), seq 1, ack 881, win 4060, options [nop,nop,TS val 224131742 ecr 3588123264], length 0
    192.168.30.173.80 > dsme01.intern.example.com.37016: Flags [P.], cksum 0x2212 (correct), seq 1:145, ack 881, win 4060, options [nop,nop,TS val 224131742 ecr 3588123264], length 144: HTTP, length: 144
    dsme01.intern.example.com.37016 > 192.168.30.173.80: Flags [.], cksum 0xd89a (correct), seq 881, ack 145, win 501, options [nop,nop,TS val 3588123271 ecr 224131742], length 0
    dsme01.intern.example.com.37016 > 192.168.30.173.80: Flags [F.], cksum 0xd899 (correct), seq 881, ack 145, win 501, options [nop,nop,TS val 3588123271 ecr 224131742], length 0
    192.168.30.173.80 > dsme01.intern.example.com.37016: Flags [F.], cksum 0xcaaf (correct), seq 145, ack 882, win 4060, options [nop,nop,TS val 224131744 ecr 3588123271], length 0
    dsme01.intern.example.com.37016 > 192.168.30.173.80: Flags [.], cksum 0xd881 (correct), seq 882, ack 146, win 501, options [nop,nop,TS val 3588123292 ecr 224131744], length 0
    192.168.30.173.39477 > 239.255.255.250.51200: [udp sum ok] UDP, length 544
    192.168.30.173.39477 > 239.255.255.250.51200: [udp sum ok] UDP, length 544
    192.168.30.173.37700 > 239.255.255.250.1900: [udp sum ok] UDP, length 146
    dsme01.intern.example.com.35504 > 192.168.30.173.37700: [udp sum ok] UDP, length 397

Benutzeravatar
oln
Beiträge: 487
Registriert: 05.01.2021 09:41:24

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von oln » 20.11.2023 13:59:18

In dem Log stehen keine Fehler.
Was ergibt ein curl:

Code: Alles auswählen

curl -v https://deine.proxy.url
Gruß Ole
AbuseIPDB

sharbich
Beiträge: 284
Registriert: 27.09.2013 21:12:40

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von sharbich » 21.11.2023 09:04:34

oln hat geschrieben: ↑ zum Beitrag ↑
20.11.2023 13:59:18
In dem Log stehen keine Fehler.
Was ergibt ein curl:

Code: Alles auswählen

curl -v https://deine.proxy.url
Es wird eine Verbindung aufgebaut. Schaue ich mir den tcpdump auf den zentralen Router an dann sehe ich die gleichen Verbindungen. Immer zwischen der IP 192.168.20.20 (dsme01.intern.example.com) und 192.168.30.173.

Code: Alles auswählen

 dsme01.intern.example.com.36056 > 192.168.30.173.80: Flags [S], cksum 0x82a9 (correct), seq 281147053, win 64240, options [mss 1460,sackOK,TS val 4039872752 ecr 0,nop,wscale 7], length 0
    192.168.30.173.80 > dsme01.intern.example.com.36056: Flags [S.], cksum 0x6193 (correct), seq 1432712550, ack 281147054, win 14480, options [mss 1460,sackOK,TS val 232131273 ecr 4039872752,nop,wscale 2], length 0
    dsme01.intern.example.com.36056 > 192.168.30.173.80: Flags [.], cksum 0xc6f1 (correct), seq 1, ack 1, win 502, options [nop,nop,TS val 4039872755 ecr 232131273], length 0
    dsme01.intern.example.com.36056 > 192.168.30.173.80: Flags [P.], cksum 0xbc27 (correct), seq 1:141, ack 1, win 502, options [nop,nop,TS val 4039872755 ecr 232131273], length 140: HTTP, length: 140
Die URL: mcbme01.intern.example.com hat aber die IP 192.168.20.173. Ich sehe nur folgenden Eintrag im tcpdump wenn ich auf die IP 192.168.20.173 schaue.

Code: Alles auswählen

root@rome01:~# tcpdump -vv -i br-wlan | grep 192.168.20.173
tcpdump: listening on br-wlan, link-type EN10MB (Ethernet), capture size 262144 bytes
	X-Forwarded-For: 192.168.20.173
Eigentlich müsste ich doch Verbindungen zwischen den beiden Hosts 192.168.30.173 (Yamaha Musiccast Client) und 192.168.20.173 (Nginx proxy_pass) sehen? Oder?

Benutzeravatar
oln
Beiträge: 487
Registriert: 05.01.2021 09:41:24

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von oln » 21.11.2023 09:16:49

Curl macht doch eine Ausgabe. Wie sieht die aus? Evtl. -vvv für mehr Ausgaben.
Oder mal mit lynx auf der Console ausprobieren.
tcpdump wird dir da nicht helfen.
Gruß Ole
AbuseIPDB

reox
Beiträge: 2464
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von reox » 21.11.2023 10:35:33

Bin nicht sicher ob es daran liegt, aber ich füge immer die proxy_params hinzu:

Code: Alles auswählen

location / {
    proxy_pass http://localhost:8085;
    include /etc/nginx/proxy_params;
    # ...
}
Die Datei kommt IMHO bei nginx mit, ansonsten ist das der Inhalt:

Code: Alles auswählen

proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
Teile davon wurden ja schon genannt.

sharbich
Beiträge: 284
Registriert: 27.09.2013 21:12:40

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von sharbich » 21.11.2023 20:55:34

Hallo,
gemäß des logging sieht es weiterhin nicht gut aus was die Verbindung zwischen meinen Webbrowser und dem Nginx Proxy angeht.

Code: Alles auswählen

dsme01.intern.example.com.41792 > 192.168.30.173.80: Flags [S], cksum 0x5136 (correct), seq 3812477653, win 64240, options [mss 1460,sackOK,TS val 4083745465 ecr 0,nop,wscale 7], length 0
    192.168.30.173.80 > dsme01.intern.example.com.41792: Flags [S.], cksum 0x1d06 (correct), seq 3467255102, ack 3812477654, win 14480, options [mss 1460,sackOK,TS val 236518531 ecr 4083745465,nop,wscale 2], length 0
    dsme01.intern.example.com.41792 > 192.168.30.173.80: Flags [.], cksum 0x8265 (correct), seq 1, ack 1, win 502, options [nop,nop,TS val 4083745467 ecr 236518531], length 0
    dsme01.intern.example.com.41792 > 192.168.30.173.80: Flags [P.], cksum 0x8e27 (correct), seq 1:933, ack 1, win 502, options [nop,nop,TS val 4083745467 ecr 236518531], length 932: HTTP, length: 932
    192.168.30.173.80 > dsme01.intern.example.com.41792: Flags [.], cksum 0x70c1 (correct), seq 1, ack 933, win 4086, options [nop,nop,TS val 236518531 ecr 4083745467], length 0
    192.168.30.173.80 > dsme01.intern.example.com.41792: Flags [P.], cksum 0xc787 (correct), seq 1:145, ack 933, win 4086, options [nop,nop,TS val 236518532 ecr 4083745467], length 144: HTTP, length: 144
    dsme01.intern.example.com.41792 > 192.168.30.173.80: Flags [.], cksum 0x7e2a (correct), seq 933, ack 145, win 501, options [nop,nop,TS val 4083745474 ecr 236518532], length 0
    dsme01.intern.example.com.41792 > 192.168.30.173.80: Flags [F.], cksum 0x7e28 (correct), seq 933, ack 145, win 501, options [nop,nop,TS val 4083745475 ecr 236518532], length 0
    192.168.30.173.80 > dsme01.intern.example.com.41792: Flags [F.], cksum 0x7024 (correct), seq 145, ack 934, win 4086, options [nop,nop,TS val 236518534 ecr 4083745475], length 0
    dsme01.intern.example.com.41792 > 192.168.30.173.80: Flags [.], cksum 0x7e0f (correct), seq 934, ack 146, win 501, options [nop,nop,TS val 4083745497 ecr 236518534], length 0
Warum wird eine Verbindung zwischen der IP 192.168.20.20 und dem Musiccast Gerätes mit der IP 192.168.30.173 hergestellt? Obwohl ich eine Verbindung mit der URL: mcbme01.intern.example.com (192.168.20.173) herstelle? Wie kommt mein Nginx nur auf die IP 192.168.20.20??? Okay der Nginx lauscht auf 0.0.0.0, ergo alle Interfaces. Ist das ein Problem?
Die Webseite gibt mir folgende Fehlermeldung.

Code: Alles auswählen

Die Website ist nicht erreichbar
Die Webseite unter https://mcbme01.intern.example.com/ ist eventuell vorübergehend nicht verfügbar oder wurde dauerhaft an eine neue Webadresse verschoben.
ERR_INVALID_RESPONSE

reox
Beiträge: 2464
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von reox » 22.11.2023 08:53:16

Das schaut doch eh richtig aus? Der Reverse Proxy (dsme01.intern.example.com == 192.168.20.20) muss ja mit dem Gerät (192.168.30.173) reden. Was mir fehlt ist die Kommunikation vom Client zum Reverse Proxy... Oder hast du direkt von dsme01.intern.example.com aus zugegriffen? Bzw ich vermute eher du bist da im selben Netz und daher taucht die Verbindung nicht am Router auf, da sie direkt am Switch bleibt, stimmts?

Wenn du von dsme01.intern.example.com auf das 192.168.30.0/24 Netz zugreifen willst, gehst du dann über den Router von 192.168.20.0/24?
Verstehe ich das richtig, dass dsme01.intern.example.com sowohl 192.168.20.173 als auch 192.168.20.20 als Adressen hat?

Wenn du den gesamten Traffic sehen willst, musst du also auf dsme01.intern.example.com den tcpdump starten.

sharbich
Beiträge: 284
Registriert: 27.09.2013 21:12:40

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von sharbich » 22.11.2023 10:42:57

reox hat geschrieben: ↑ zum Beitrag ↑
22.11.2023 08:53:16
Oder hast du direkt von dsme01.intern.example.com aus zugegriffen?
Nein
Bzw ich vermute eher du bist da im selben Netz und daher taucht die Verbindung nicht am Router auf, da sie direkt am Switch bleibt, stimmts?
Der Zugriff erfolgt vom WLAN Client mit der IP 192.168.30.71
Wenn du von dsme01.intern.example.com auf das 192.168.30.0/24 Netz zugreifen willst, gehst du dann über den Router von 192.168.20.0/24?
Ja
Verstehe ich das richtig, dass dsme01.intern.example.com sowohl 192.168.20.173 als auch 192.168.20.20 als Adressen hat?
ja, der Host hat mehrere IP Adressen.
dsme01.intern.example.com hat die IP 192.168.20.20
mcbme01.intern.example.com hat die IP 192.168.20.173
. . .
Wenn du den gesamten Traffic sehen willst, musst du also auf dsme01.intern.example.com den tcpdump starten.
Siehe unten

Code: Alles auswählen

root@dsme01:~# tcpdump -vvv -i bond0 src port 80
tcpdump: listening on bond0, link-type EN10MB (Ethernet), snapshot length 262144 bytes
10:38:16.387947 IP (tos 0x0, ttl 63, id 0, offset 0, flags [DF], proto TCP (6), length 60)
    Badezimmer.local.http > dsme01.intern.example.com.42708: Flags [S.], cksum 0xdba2 (correct), seq 239822779, ack 280357959, win 14480, options [mss 1460,sackOK,TS val 241430030 ecr 4132860607,nop,wscale 2], length 0
10:38:16.391325 IP (tos 0x0, ttl 63, id 35250, offset 0, flags [DF], proto TCP (6), length 52)
    Badezimmer.local.http > dsme01.intern.example.com.42708: Flags [.], cksum 0x2f84 (correct), seq 1, ack 907, win 4073, options [nop,nop,TS val 241430030 ecr 4132860610], length 0
10:38:16.394753 IP (tos 0x0, ttl 63, id 35251, offset 0, flags [DF], proto TCP (6), length 196)
    Badezimmer.local.http > dsme01.intern.example.com.42708: Flags [P.], cksum 0x864a (correct), seq 1:145, ack 907, win 4073, options [nop,nop,TS val 241430031 ecr 4132860610], length 144: HTTP, length: 144
	HTTP/1.1 505 Client Error
	Server: Network_Module/1.0 (WX-010)
	Content-Type: application/octet-stream
	Content-Length: 0
	Connection: close
	
10:38:16.415974 IP (tos 0x0, ttl 63, id 35252, offset 0, flags [DF], proto TCP (6), length 52)
    Badezimmer.local.http > dsme01.intern.example.com.42708: Flags [F.], cksum 0x2ee8 (correct), seq 145, ack 908, win 4073, options [nop,nop,TS val 241430033 ecr 4132860617], length 0
10:38:16.548907 IP (tos 0x0, ttl 63, id 0, offset 0, flags [DF], proto TCP (6), length 60)
    Badezimmer.local.http > dsme01.intern.example.com.42720: Flags [S.], cksum 0x8ddb (correct), seq 2896280369, ack 690827021, win 14480, options [mss 1460,sackOK,TS val 241430046 ecr 4132860768,nop,wscale 2], length 0
10:38:16.553669 IP (tos 0x0, ttl 63, id 21804, offset 0, flags [DF], proto TCP (6), length 52)
    Badezimmer.local.http > dsme01.intern.example.com.42720: Flags [.], cksum 0xe1bb (correct), seq 1, ack 907, win 4073, options [nop,nop,TS val 241430047 ecr 4132860771], length 0
10:38:16.557565 IP (tos 0x0, ttl 63, id 21805, offset 0, flags [DF], proto TCP (6), length 196)
    Badezimmer.local.http > dsme01.intern.example.com.42720: Flags [P.], cksum 0x3883 (correct), seq 1:145, ack 907, win 4073, options [nop,nop,TS val 241430047 ecr 4132860771], length 144: HTTP, length: 144
	HTTP/1.1 505 Client Error
	Server: Network_Module/1.0 (WX-010)
	Content-Type: application/octet-stream
	Content-Length: 0
	Connection: close
	
10:38:16.578548 IP (tos 0x0, ttl 63, id 21806, offset 0, flags [DF], proto TCP (6), length 52)
    Badezimmer.local.http > dsme01.intern.example.com.42720: Flags [F.], cksum 0xe11f (correct), seq 145, ack 908, win 4073, options [nop,nop,TS val 241430049 ecr 4132860779], length 0
10:38:17.603777 IP (tos 0x0, ttl 63, id 0, offset 0, flags [DF], proto TCP (6), length 60)
    Badezimmer.local.http > dsme01.intern.example.com.42730: Flags [S.], cksum 0x4569 (correct), seq 981002682, ack 2492091183, win 14480, options [mss 1460,sackOK,TS val 241430152 ecr 4132861823,nop,wscale 2], length 0
10:38:17.607490 IP (tos 0x0, ttl 63, id 1843, offset 0, flags [DF], proto TCP (6), length 52)
    Badezimmer.local.http > dsme01.intern.example.com.42730: Flags [.], cksum 0x9923 (correct), seq 1, ack 933, win 4086, options [nop,nop,TS val 241430152 ecr 4132861826], length 0
10:38:17.610736 IP (tos 0x0, ttl 63, id 1844, offset 0, flags [DF], proto TCP (6), length 196)
    Badezimmer.local.http > dsme01.intern.example.com.42730: Flags [P.], cksum 0xefea (correct), seq 1:145, ack 933, win 4086, options [nop,nop,TS val 241430152 ecr 4132861826], length 144: HTTP, length: 144
	HTTP/1.1 505 Client Error
	Server: Network_Module/1.0 (WX-010)
	Content-Type: application/octet-stream
	Content-Length: 0
	Connection: close
	
10:38:17.631824 IP (tos 0x0, ttl 63, id 1845, offset 0, flags [DF], proto TCP (6), length 52)
    Badezimmer.local.http > dsme01.intern.example.com.42730: Flags [F.], cksum 0x9888 (correct), seq 145, ack 934, win 4086, options [nop,nop,TS val 241430154 ecr 4132861833], length 0
10:38:22.636183 IP (tos 0x0, ttl 63, id 0, offset 0, flags [DF], proto TCP (6), length 60)
    Badezimmer.local.http > dsme01.intern.example.com.52164: Flags [S.], cksum 0xa8ad (correct), seq 2420779912, ack 1110075443, win 14480, options [mss 1460,sackOK,TS val 241430655 ecr 4132866854,nop,wscale 2], length 0
10:38:22.639734 IP (tos 0x0, ttl 63, id 56310, offset 0, flags [DF], proto TCP (6), length 52)
    Badezimmer.local.http > dsme01.intern.example.com.52164: Flags [.], cksum 0xfc66 (correct), seq 1, ack 933, win 4086, options [nop,nop,TS val 241430655 ecr 4132866858], length 0
10:38:22.643660 IP (tos 0x0, ttl 63, id 56311, offset 0, flags [DF], proto TCP (6), length 196)
    Badezimmer.local.http > dsme01.intern.example.com.52164: Flags [P.], cksum 0x532d (correct), seq 1:145, ack 933, win 4086, options [nop,nop,TS val 241430656 ecr 4132866858], length 144: HTTP, length: 144
	HTTP/1.1 505 Client Error
	Server: Network_Module/1.0 (WX-010)
	Content-Type: application/octet-stream
	Content-Length: 0
	Connection: close
	
10:38:22.665067 IP (tos 0x0, ttl 63, id 56312, offset 0, flags [DF], proto TCP (6), length 52)
    Badezimmer.local.http > dsme01.intern.example.com.52164: Flags [F.], cksum 0xfbc9 (correct), seq 145, ack 934, win 4086, options [nop,nop,TS val 241430658 ecr 4132866866], length 0
^C
16 packets captured
16 packets received by filter
0 packets dropped by kernel
Ich habe das logging auf -vvv erweitert und direkt auf den Server wo auch der Nginx läuft ein tcpdump auf Port 80 gemacht. Da scheint der Musiccast Client von Yamaha ein Problem beim Träffik der zurück geht ein Problem zu haben. Ggf. eine statische Route anlegen die zurück geht?

reox
Beiträge: 2464
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von reox » 22.11.2023 10:52:46

schaut aber korrekt aus: du bekommst den Error 505 offenbar nicht vom nginx...

Wenn du direkt per http drauf gehst geht es aber korrekt?

sharbich
Beiträge: 284
Registriert: 27.09.2013 21:12:40

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von sharbich » 22.11.2023 11:13:52

reox hat geschrieben: ↑ zum Beitrag ↑
22.11.2023 10:52:46
Wenn du direkt per http drauf gehst geht es aber korrekt?
Ja, dann öffnet sich das Web Frontend. Im Browser Fenster oben sehe ich aber nur die IP. Keine Verlinkungen. Ob da ein Java Applet läuft? Ich habe mal am Yamaha Support geschrieben und darum gebeten mir mit zu teilen welches Web Frontend dort läuft.

sharbich
Beiträge: 284
Registriert: 27.09.2013 21:12:40

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von sharbich » 22.11.2023 12:52:26

Ich habe ein tcpdump auf mein Linux Client laufen gelassen wenn ich direkt per http auf das Musiccast Gerät zugreife. Ggf. hilft das um zu schauen was ich noch machen kann um diese Verbindung über ein proxy_pass hin zu bekommen?
https://nopaste.debianforum.de/42020

reox
Beiträge: 2464
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von reox » 22.11.2023 13:48:07

Hmm okay also ich habe eine Vermutung. Du bekommst einen 505 HTTP Version Not Supported.
Evt hilft es proxy_http_version 1.1; (1.0 wäre der default) im location block zu spezifizieren.

sharbich
Beiträge: 284
Registriert: 27.09.2013 21:12:40

Re: Nginx Reverse Proxy (proxy_pass)

Beitrag von sharbich » 22.11.2023 17:21:25

reox hat geschrieben: ↑ zum Beitrag ↑
22.11.2023 13:48:07
Evt hilft es proxy_http_version 1.1; (1.0 wäre der default) im location block zu spezifizieren.
Ich habe meine Konfiguration wie folgt angepasst.

Code: Alles auswählen

server {
    # Update this line to be your domain
    server_name mcbme01.intern.example.com;
    # These shouldn't need to be changed
    listen mcbme01.intern.example.com:80;
    return 301 https://$host$request_uri;
}
server {
    server_name mcbme01.intern.example.com;
    listen mcbme01.intern.example.com:443 ssl; # managed by Harbich
    ssl_certificate /etc/ssl/certs/mcbme01.intern.example.com.crt; # managed by Harbich
    ssl_certificate_key /etc/ssl/private/mcbme01.intern.example.com.key; # managed by Harbich
    ssl_dhparam /etc/ssl/certs/dhparams.pem; # managed by Harbich
    location / {
        proxy_pass http://192.168.30.173:80;
        proxy_http_version 1.1;
        include /etc/nginx/proxy_params;
    }
    access_log /var/log/nginx/access.log;
    error_log /var/log/nginx/error.log;
}
Es funktioniert. Du bist mein wahrer Held heute Abend. Echt klasse.

reox
Beiträge: 2464
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: [geloest] Nginx Reverse Proxy (proxy_pass)

Beitrag von reox » 22.11.2023 20:45:06

War ehrlicherweise mehr geraten als gewusst ;) Nachdem die Kommunikation direkt klappte und über den Proxy zumindest das Gerät geantwortet hat, hab ich dem HTTP Status Code mal hinterher gesucht. 505 hab ich nämlich auch noch nie gehört gehabt...
Aber nachdem es ja auch schon http2 usw gibt, dachte ich daran, dass der proxy vermutlich einfach alles so weiter leitet wie er es bekommt.

Antworten