Zunächst einmal, Entschuldigung, dass ich diesen fast 10 Jahre alten Beitrag wiederbelebe, aber ich kann ernsthaft nicht glauben, dass dies niemanden sonst stört?
Ich habe es jetzt geschafft, meinen Host-Server und seine IP-Adresse hinter Cloudflare zu verstecken, und nach stundenlanger Suche ist es mir gelungen, nur eingehenden Netzwerkverkehr von Cloudflare zuzulassen, damit Port-Scanner das Forum nicht versehentlich unter der IP-Adresse entdecken. Sicherheit ist mir einfach sehr wichtig. Der Mailserver ist extern, fast alles ist geschützt – aber es ist ein Witz, dass jemand nur ein Köderbild im Beitrag einfügen muss und Discourse es direkt herunterlädt, um es einzubetten oder etwas Ähnliches. Ich konnte nichts finden, was dies irgendwo deaktiviert. Sogar diese Oneboxen, die die Vorschauen sein sollen – selbst wenn man diese auf 0 setzt, passiert nichts – der IP-Logging-Pixel wurde sofort eingebettet und könnte dem Angreifer die echte IP des Hosts preisgeben – Cloudflares Schutz ist in diesem Fall also absolut nutzlos. Entweder man schützt seine Dienste richtig oder gar nicht – was nützt uns Cloudflare, wenn der Angreifer keine 5 Minuten braucht, um sich zu registrieren, ein Bild zu posten und so die echte IP des Hosts herauszufinden?
Ich habe heute stundenlang mit KI, Tor und Torsocks herumprobiert – aber es hat nie wirklich funktioniert. Der Neuaufbau stürzt normalerweise ab, sobald ich es wage, etwas an den Umgebungseinstellungen zu ändern. Wenn es jemandem irgendwie gelungen ist, dies zu tun, flehe ich ihn fast an, es bitte mit uns zu teilen. Meistens schlägt der Neuaufbau fehl, weil der Zugriff auf Github nicht funktioniert, da Github Tor-Verkehr wahrscheinlich verbietet.
Und all das müsste nicht sein, wenn man Discourse einfach davon abhalten könnte, die Links im Voraus zu laden.
Danke! Ich habe dein Plugin hinzugefügt und Discourse neu erstellt – danach dachte ich, wenn ich die ersten beiden Kontrollkästchen aktiviere, wird die Verwendung eines Proxys erzwungen – egal ob einer eingerichtet ist oder nicht –, aber es spielt keine Rolle, ob ich die Informationen des Proxys eingebe oder ob die Werte leer waren und nur die beiden Kontrollkästchen aktiviert waren – es lädt den Tracking-Pixel immer noch mit der VPS-IP-Adresse.
Ich werde jetzt versuchen, Docker komplett oder nur das Discourse-Image so zu konfigurieren, dass es einen Proxy verwendet. Vielleicht funktioniert es mit einem normalen Proxy-Anbieter und schlägt beim Neuerstellen nicht fehl wie bei Tor.
Sie können einfach etwas wie Tinyproxy auf einem separaten Host einrichten und Umgebungsvariablen konfigurieren, um diesen zu verwenden. Stellen Sie sicher, dass die IP-Header-Weiterleitung auf Tinyproxy deaktiviert ist, und es kann hilfreich sein, Github auszuschließen, um die Themens-Installation ebenfalls zu erleichtern.
Sie sollten einen solchen Mechanismus verwenden, wenn Discourse läuft, nicht wenn es gebaut wird.
Ich gebe das fürs Erste auf; ich arbeite schon viel zu lange daran. Ich dachte, es wäre nicht so schwierig, aber jetzt bin ich bei all den Proxy-Themen wie SOCKS und SOCKS5 etwas überfordert. Ich ging davon aus, dass es so einfach wäre, ein paar Parameter oder Konfigurationen zum env-Bereich von app.yml hinzuzufügen, aber es scheint, als müsste ich viel mehr Stunden in eine benutzerdefinierte Lösung investieren. Generell habe ich Schwierigkeiten, mit einem Proxy eine Verbindung nach außen herzustellen, zum Beispiel zu https://check.torproject.org/api/ip mit curl. Ich denke, ich müsste mich viel tiefer mit dem Proxying beschäftigen.
Es wäre schön gewesen, wenn ich die Host-IP auf alle Arten verbergen könnte, wie ich weiß, dass sie leaken kann, aber ich schätze, das ist der Kompromiss für die Nutzung einer so leistungsstarken Plattform wie Discourse. Discourse hat so viele Konfigurationsmöglichkeiten; wäre es möglich, ein Feature anzufordern, das verhindert, dass Links und Vorschauen vorgeladen oder allgemeiner externe Ressourcen, die von Benutzern bereitgestellt werden, abgerufen werden? Ich konnte hier kein Unterforum für Anfragen finden
Ja, aber ich möchte, dass die Proxy-Konfiguration nach dem Aktualisieren oder Neubaubildung von Discourse bestehen bleibt. Die Arbeit mit Docker kann etwas knifflig sein.