¿Qué impide que Apache acceda a un servidor propiedad de un usuario sin privilegios?

¿Qué impide que Apache acceda a un servidor propiedad de un usuario sin privilegios?

Existe una aplicación popular de código abierto escrita en Javascript Node.js que escucha el puerto localhost:1234 en mi cuenta habitual sin privilegios.

Al conectarse desde localhost todo funciona perfectamente. La idea, sin embargo, es hacer que ese servicio sea accesible para cualquier persona en la WWW.

Los esfuerzos para que Apache envíe solicitudes a ese puerto han fracasado. Consulte la configuración del host virtual/proxy a continuación. Las solicitudes se pasan, pero lo único que sucede es que se enumeran los contenidos del directorio. Conexiones ahttp://ejemplo.com:1234son ignorados. ¿Por qué?

¿Hay alguna manera de hacer que ese servidor sea "legítimo" o "confiable"?

Antes de intentar ejecutar ese servidor como root o Apache, prefiero buscar el consejo de su experto aquí.

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

NB: instalé un servidor "Hola, mundo", también basado en Node.js y funciona bien con una URL como:

http://ejemplo.com/hola-mundo

Respuesta1

Es bastante simple: se le dice a la aplicación que solo escuche en la dirección de loopback, localhost/127.0.0.1. Como solo escucha en esta dirección, se rechazará cualquier solicitud en cualquier otra interfaz. Debe reconfigurar su aplicación para escuchar en múltiples direcciones IP o escuchar en todas.

información relacionada