Anmelden

Archiv verlassen und diese Seite im Standarddesign anzeigen : NGINX - Reverse Proxy



newPanic
16.01.2020, 09:50
Hallo,
hab mich bei euch registriert, da ich schon einige Beiträge über NGINX Reverse Proxy als Gast lesen konnte. Diese waren zwar schon älter, aber den Hilfesuchenden wurde ja netterweise geholfen. Ich hoffe, ihr könnt mir auch weiterhelfen. Ich beschäftige mich schon etwas länger nun mit diesem Thema, finde aber keinen Ansatz zur Lösung zu meinem Problem. Vielleicht liegt dies auch an meinem Alter :emoji56:

Zu meinem Problem: was muß auf dem Proxyerver in die Configs unter
1. /etc/nginx/nginx.conf
2. /etc/nginx/sites-available/default
eingetragen werden, damit die eigentliche IP für den Hauptserver verschleiert wird und was müßte ich die jeweiligen Configs des Hauptservers zusätzlich ändern?

Ich kann nur mit den Standard-Configs aufwarten, da ich diesbezüglich alles wieder gelöscht habe bzw zurückgesetzt ist. Ich hoffe, ihr könnt und wollt mir als alter Neuling da weiterhelfen. :emoji25:
LG

Raki
19.01.2020, 23:47
Ich bin mir nicht ganz sicher, was dein Ziel ist? Beschreibe mal bitte genauer, was du vor hast.

newPanic
20.01.2020, 10:45
Ich versuche einfach die echte IP von meinem Blog zu verschleiern. Mit CloudFlare klappt das zwar ganz gut, aber das möchte ich jetzt nicht mehr.

Ich habe hier schon einiges gelesen und versucht umzusetzen, aber so richtig will das nicht klappen. Ich bin jetzt schon die Tage ziemlich viele Tutorials aus dem www durchgegangen, aber nichts davon hilft wirklich.

klemmt
20.01.2020, 11:14
https://github.com/duy13/vDDoS-Protection

Nimbus
20.01.2020, 12:44
Ich habe hier schon einiges gelesen und versucht umzusetzen, aber so richtig will das nicht klappen. Ich bin jetzt schon die Tage ziemlich viele Tutorials aus dem www durchgegangen, aber nichts davon hilft wirklich.
Ich denke mal nicht, dass alle Tutorials falsch waren oder etwas anderes erreichen wollen.
Was genau ist dein Problem? Wo hakts?

Hast du außerdem auf dem Schirm, dass zum effektiven "verstecken" der IP (genauso, wie bei CloudFlare) unter Umständen auch diverse zusätzliche Einstellungen nötig sind? Firewall für eingehende Verbindungen (nur von CloudFlare/Reverse-Proxy). Ausgehende Verbindungen nur, wenn dadurch keine IP publik wird.

newPanic
21.01.2020, 07:39
Hast du außerdem auf dem Schirm, dass zum effektiven "verstecken" der IP (genauso, wie bei CloudFlare) unter Umständen auch diverse zusätzliche Einstellungen nötig sind? Firewall für eingehende Verbindungen (nur von CloudFlare/Reverse-Proxy). Ausgehende Verbindungen nur, wenn dadurch keine IP publik wird.
Nein, dass wurde zum ersten mal nun von dir genannt. In keinen Tutorial hier oder im www war davon die Rede.


Was genau ist dein Problem? Wo hakts?
Ich bin allen Beiträgen (die man hier unter der SuFu finden kann) gefolgt. Keines führt zum Erolg. Entweder es kommt zu 400 oder zu 500er Fehler. Auch bleibt unter CMD -> ping domain.com die Ip die gleiche.

Bisher habe ich angenommen, dass man den nginx Reverse Proxy so konfiguriert:

apt-get install nginx
rm /etc/nginx/sites-*/*
nano /etc/nginx/nginx.conf
#ganz nach unten fahren

stream {
server {
listen 80;
proxy_pass ip+port zum blog;
}
}
# nano zu und abspeichern
service nginx restart
Und am Blogserver am besten nur die ReserveIP auf den Webserverport zugreifen lassen.

Das es jetzt noch komplizierter wird, war mir so nicht bewusst. Es wäre sehr nett, wenn mir da jemand freundlicherweise unter die Arme greifen könnte. In Form einer vollständigen Anleitung oder über PM.
LG

4nn8
21.01.2020, 09:52
Du schreibst so wirr, deshalb: Hat dein Reverse Proxy auch eine andere IP als dein "Hauptserver"?

Nach deiner Config verwendest du auch einen TCP-Load-Balancer. Das ist schon ziemlich advanced. Willst du nicht lieber einen HTTP-Load-Balancer?

Dafür sähe die Config so aus:

server {
listen 80 default_server;
server_name _;

location / {
proxy_pass http://ip;
proxy_http_version 1.1;
proxy_set_header Connection "";
}
}
Das muss dann in den http-Block der Config.
TLS-Terminierung müsstest du dann im Load-Balancer machen.

proxy_http_version ist für keepalives und proxy_set_header damit vom Client der Header nicht forwarded wird und das keepalive kaputt macht. Also für Performance.

newPanic
21.01.2020, 10:57
Du schreibst so wirr, deshalb: Hat dein Reverse Proxy auch eine andere IP als dein "Hauptserver"?
Ja, nutze 2 Server. Meinen Blogserver und dann zusätzlich den Proxyserver.


Nach deiner Config verwendest du auch einen TCP-Load-Balancer. Das ist schon ziemlich advanced. Willst du nicht lieber einen HTTP-Load-Balancer?
Wie ich schon geschrieben habe, nutze ich nur die Standardkonfiguration von nginx auf beiden Servern.


Das muss dann in den http-Block der Config. TLS-Terminierung müsstest du dann im Load-Balancer machen.
proxy_http_version ist für keepalives und proxy_set_header damit vom Client der Header nicht forwarded wird und das keepalive kaputt macht. Also für Performance.
In welcher Config, die vom Blog oder im Proxyserver?
LG

Nimbus
21.01.2020, 13:28
Nein, dass wurde zum ersten mal nun von dir genannt. In keinen Tutorial hier oder im www war davon die Rede.
Das liegt daran, dass Reverse-Proxies oft nicht primär zum "verstecken" der eigentlichen IP genutzt werden.

Die Config von 4nn8 ist die für einen Proxy-Server. Diesen könntest du einfach in eine neue Datei "/etc/nginx/sites-enabled/default.conf" packen und nginx neu starten (falls du tatsächlich "rm /etc/nginx/sites-*/*" ausgeführt hast).

Alexej
22.01.2020, 13:00
Hast du außerdem auf dem Schirm, dass zum effektiven "verstecken" der IP (genauso, wie bei CloudFlare) unter Umständen auch diverse zusätzliche Einstellungen nötig sind? Firewall für eingehende Verbindungen (nur von CloudFlare/Reverse-Proxy). Ausgehende Verbindungen nur, wenn dadurch keine IP publik wird.

Suche auch eine Anleitung für NGINX oder Apache um die Backend IP vernünftig zu verstecken. Haut doch Mal eine Schritt-für-Schritt-Anleitung für Dummies raus Leute. ;)

PollMan
22.01.2020, 13:36
https://docs.nginx.com/nginx/admin-guide/web-server/reverse-proxy/

?

Alexej
22.01.2020, 18:08
@PollMan, beinhaltet die Anleitung auch das was Nimbus sagt?

Ich dachte eigentlich an ein Tutorial auf Deutsch, wo jeder kleine Schritt aufgeführt ist. Von Back-End bis Front-End.

PollMan
23.01.2020, 10:34
@PollMan, beinhaltet die Anleitung auch das was Nimbus sagt?

Ich dachte eigentlich an ein Tutorial auf Deutsch, wo jeder kleine Schritt aufgeführt ist. Von Back-End bis Front-End.

google.de? Ich versteh jetzt das Problem nicht. Das wird hier keiner für dich schritt für schritt erklären. Besonders nicht, bei der recht umfangreichen Doku die es zu nginx bereits gibt. Schau dich einfach selbst danach um, du wirst schon was finden.

Nimbus
23.01.2020, 13:39
Ihm geht es vermutlich um den Aspekt, dass die Anleitungen die IP des Servers nicht aktiv geheim halten wollen/müssen. Folglich werden spezielle Firewall-Regeln für eingehende Verbindungen (relativ trivial) und Vorsichtsmaßnahmen für ausgehende Verbindungen (je nach Einsatzzweck potentiell komplexer) in der Regel nicht behandelt.

Das Thema ist nicht furchtbar schwierig, aber es ist (zumindest mir) nicht direkt möglich eine allgemeingültige Anleitung zu verfassen. Zumindest nicht mit der angesprochenen/gewünschten Zielgruppe, denn man muss potentiell jede Stelle an der Verbindungen ein und ausgehen daraufhin untersuchen, ob diese eventuell die IP "verraten".

Alexej
24.01.2020, 18:29
Ihm geht es vermutlich um den Aspekt, dass die Anleitungen die IP des Servers nicht aktiv geheim halten wollen/müssen. Folglich werden spezielle Firewall-Regeln für eingehende Verbindungen (relativ trivial) und Vorsichtsmaßnahmen für ausgehende Verbindungen (je nach Einsatzzweck potentiell komplexer) in der Regel nicht behandelt.
Genau darum gehts mir.

Hier sind doch so viele Leute mit Ahnung, kann sich denn keiner erbarmen? :D

Oder nur gegen Geld/BTC?