Proxy reverso vários servidores FTP internos

Proxy reverso vários servidores FTP internos

Eu configurei um proxy reverso para http usando Apache mod_proxy assim:

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

  • Cliente>http://def.domain2.com/>Servidor proxy reverso>192.168.50.2 (outro servidor interno)

Agora quero conseguir o mesmo para FTP:

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

  • Cliente>ftp:/def.domain2.com/>Servidor proxy reverso>ftp:/192.168.50.2 (outro servidor FTP interno)

Ambos os servidores FTP internos estão executando o vsftpd. Por favor, deixe-me saber a configuração do Redhat/Centos.

Motivo: tenho apenas um IP público disponível.

Responder1

Você pode usar o delegado como um proxy FTP reverso:

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

Um nome de usuário como usuário@servidor é decomposto em usuário e servidor e usado para combinar servidores diferentes.

Responder2

Existem dois problemas para configurar o que você procura:

  • ao contrário do http, os proxies reversos para ftp são uma raça bastante rara e aqueles que existem (como o antigo proxysuite Suse) não são - para ser educado - não são realmente uma alegria de configurar e trabalhar.
  • diferentemente do http 1.1, o ftp não tem provisões paraalojamento virtual, o que significa que um servidor não pode ver o nome do host com o qual você deseja conversar.

Aqui estão duas possíveis soluções alternativas que são relativamente fáceis de configurar, cada uma com suas próprias vantagens e limitações

  1. servir os dois servidores backend em portas diferentes (por exemploftp://abc.domain1.com/e ftp://def.domain2.com:8021/. muito fácil de configurar e sem necessidade de proxy reverso, apenas algumas portas extras para encaminhar. Desvantagem: um dos domínios terá que usar a url incluindo o número da porta, o que pode ou não ser um problema para você.
  2. EsmagarFTPé um servidor comercial, mas com preços razoáveis, para FTP, SFTP, etc., que pode ser facilmente configurado para atender vários back-ends de várias maneiras:
    1. como diretórios, o que levaria a uma configuração comoftp://abc.domain1.com/abceftp://abc.domain1.com/def.
    2. mostrar um back-end específico com base no perfil do usuário, entãoftp://abc.domain1.com/pareceria completamente diferente dependendo de quem fizer login.

Escolhemos a opção 2 porque nas operações diárias ela se mostrou a mais flexível e confiável. Como um bônus adicional, ele permite que você use outros protocolos além do FTP para o tráfego para seus back-ends, por exemplo, sftp.

Eles têm uma versão demo totalmente funcional que você pode baixar e testar (iirc é limitado a 5 conexões simultâneas).

Única desvantagem potencial: é um programa Java, portanto seu espaço ocupado (disco e memória) é maior que o de um servidor FTP normal.

Responder3

Como disse fvu, você não pode usar seu proxy http para rotear o FTP.

E a maneira mais fácil é usar o sftp. Mas você pode fazer isso usando MobaXterm, um software de conexão remota completo que oferece muitos recursos gratuitamente e mais por um preço correto.

Última maneira de proceder: crie 1 pasta/servidor e configure o rsync para usar apenas o frontend como ftp.

informação relacionada