Was verhindert, dass ein Server, der einem nicht privilegierten Benutzer gehört, von Apache erreicht werden kann?

Was verhindert, dass ein Server, der einem nicht privilegierten Benutzer gehört, von Apache erreicht werden kann?

Es gibt eine beliebte Open-Source-Anwendung, die in Javascript Node.js geschrieben ist und unter meinem regulären, nicht privilegierten Konto auf Port localhost:1234 lauscht.

Bei einer Verbindung vom lokalen Host funktioniert alles einwandfrei. Die Idee ist jedoch, diesen Dienst für jeden im WWW zugänglich zu machen.

Versuche, Apache dazu zu bringen, Anfragen an diesen Port zu senden, sind fehlgeschlagen. Siehe Konfiguration des virtuellen/Proxy-Hosts weiter unten. Die Anfragen werden weitergeleitet, aber es passiert lediglich, dass der Verzeichnisinhalt aufgelistet wird. Verbindungen zuhttp://example.com:1234werden ignoriert. Warum?

Gibt es eine Möglichkeit, diesen Server „legitim“ oder „vertrauenswürdig“ zu machen?

Bevor ich versuche, diesen Server als Root oder Apache auszuführen, suche ich lieber hier Ihren Expertenrat.

#
# Potree Plain Protoserver
#
<Location /potree-1234>
  ProxyPass http://localhost:1234
  ProxyPassReverse http://localhost:1234
</Location>
#

NB: Ich habe einen „Hallo Welt“-Server installiert, der ebenfalls auf Node.js basiert, und er funktioniert gut mit einer URL wie der folgenden:

http://example.com/hallo-welt

Antwort1

Es ist ganz einfach: Die Anwendung wird angewiesen, nur auf der Loopback-Adresse localhost/127.0.0.1 zu lauschen. Da sie nur auf dieser Adresse lauscht, werden alle Anfragen auf anderen Schnittstellen abgelehnt. Sie müssen Ihre Anwendung neu konfigurieren, um auf mehreren IP-Adressen oder auf allen zu lauschen.

verwandte Informationen