Proxy inverso para múltiples servidores FTP internos

Proxy inverso para múltiples servidores FTP internos

Configuré un proxy inverso para http usando Apache mod_proxy de esta manera:

  • Cliente>http://abc.dominio1.com>Servidor proxy inverso>192.168.50.1 (servidor interno)

  • Cliente>http://def.dominio2.com/>Servidor proxy inverso>192.168.50.2 (otro servidor interno)

Ahora quiero lograr lo mismo para FTP:

  • Cliente>ftp:/abc.dominio1.com/>Servidor proxy inverso>ftp:/192.168.50.1 (servidor FTP interno)

  • Cliente>ftp:/def.dominio2.com/>Servidor proxy inverso>ftp:/192.168.50.2 (otro servidor FTP interno)

Ambos servidores FTP internos ejecutan vsftpd. Déjame saber la configuración de Redhat/Centos.

Motivo: Sólo tengo una IP pública disponible.

Respuesta1

Puede utilizar delegado como proxy FTP inverso:

http://www.delegate.org/delegate/Manual.htm?serv_FTP

Un nombre de usuario como usuario@servidor se descompone en usuario y servidor y se utiliza para hacer coincidir diferentes servidores.

Respuesta2

Hay dos problemas para configurar lo que buscas:

  • A diferencia de http, los proxies inversos para ftp son una especie bastante rara y los que existen (como el antiguo Suse proxysuite) no son, para ser educados, realmente un placer configurarlos y trabajar con ellos.
  • a diferencia de http 1.1, ftp no tiene disposiciones paraalojamiento virtual, lo que significa que un servidor no puede ver el nombre de host con el que desea hablar.

Aquí hay dos posibles soluciones alternativas que son relativamente fáciles de configurar, cada una con sus propias ventajas y limitaciones.

  1. servir a los dos servidores backend en diferentes puertos (p. ej.ftp://abc.dominio1.com/y ftp://def.dominio2.com:8021/. bastante fácil de configurar y no se necesita proxy inverso, solo algunos puertos adicionales para reenviar. Desventaja: uno de los dominios tendrá que usar la URL que incluye el número de puerto, lo que puede ser un problema para usted o no.
  2. CrushFTPes un servidor comercial pero de precio razonable para ftp, sftp, etc. que se puede configurar fácilmente para varios backends de varias maneras:
    1. como directorios, lo que llevaría a una configuración comoftp://abc.dominio1.com/abcyftp://abc.dominio1.com/def.
    2. mostrar un backend específico basado en el perfil del usuario, por lo queftp://abc.dominio1.com/se vería completamente diferente dependiendo de quién inicie sesión.

Elegimos la opción 2 porque en las operaciones diarias resultó ser la más flexible y confiable. Como ventaja adicional, le permite utilizar otros protocolos además de ftp para el tráfico hacia sus servidores, por ejemplo, sftp.

Tienen una versión de demostración completamente funcional que puedes descargar y probar (iirc está limitado a 5 conexiones simultáneas).

El único inconveniente potencial: es un programa Java, por lo que su espacio (tanto en disco como en memoria) es un tamaño mayor que el de un servidor ftp normal.

Respuesta3

Como dijo fvu, no puede usar su proxy http para enrutar ftp.

Y la forma más sencilla es utilizar sftp. Pero puedes hacerlo usando MobaXterm, un software de conexión remota todo en uno que ofrece muchas funciones de forma gratuita y, además, a un precio correcto.

Última forma de proceder: cree 1 carpeta/servidor y configure rsync para usar solo la interfaz como ftp.

información relacionada