ftp - setup - ssh google cloud
Obteniendo "No abriré una conexión a" cuando me conecte al servidor FTP desde Google Compute Engine (3)
Me dirigí a la máquina virtual de mi motor de cómputo y quiero ir a otro servidor desde allí. Preguntó mi nombre de usuario y contraseña, pude iniciar sesión sin problema. pero cuando hago ls
u get
, recibo este error:
500 I won''t open a connection to 10.240.XX.XX (only to XX.XX.XX.XX)
ftp: bind: Address already in use
Ese 10.240.XX.XX es mi dirección IP interna que vi en el resultado de ifconfig
.
¿Cómo puedo transferir archivos desde otro servidor usando FTP? Sistema: Debian7
Está utilizando el modo activo de FTP para conectarse a un servidor que ejecuta Pure-FTPd. En el modo activo, un servidor tiene que conectarse de nuevo a un cliente para abrir una conexión de transferencia de datos (para transferencias de archivos o listado de directorios). Para eso, el cliente envía su dirección IP al servidor FTP en el comando PORT
.
Si el servidor FTP está fuera de la red privada de GCE, obviamente no puede conectarse a la máquina cliente, ya que la máquina está detrás de un firewall y NAT.
Y, en realidad, Pure-FTPd verifica explícitamente que la dirección IP en el comando PORT
coincide con la dirección IP del cliente de la conexión de control de FTP. No coincidirá si el cliente envía su dirección IP interna dentro de la red GCE. Si este es el caso, el servidor Pure-FTPd rechaza la transferencia directamente (sin siquiera intentar conectarse) con el mensaje de error, está obteniendo:
No abriré una conexión con ... (solo para ...)
(donde la primera ...
es la dirección IP proporcionada por el cliente en el comando PORT
[la dirección local dentro de la red privada de GCE), y la segunda ...
es la dirección IP externa [NATed] del cliente, como se conoce por el servidor).
Incluso si el cliente informó la dirección externa [NATed] en el comando PORT
, no funcionará ya que el intento de conexión no pasará de NAT y firewall.
Por este motivo, existe el modo FTP pasivo, en el que el cliente se conecta al servidor para abrir la conexión de transferencia de datos. En realidad, nadie usa el modo activo hoy en día.
Consulte (mi artículo) los modos de conexión FTP para obtener detalles sobre los modos.
Entonces, cambia al modo pasivo. Cómo se hace esto es específico del cliente.
En la mayoría de los clientes de la línea de comandos * nix
ftp
, use el-p
de la línea de comandos-p
, aunque el modo pasivo se usa por defecto de todos modos:-p
Usa el modo pasivo para las transferencias de datos. Permite el uso de ftp en entornos en los que un firewall evita que las conexiones del mundo exterior vuelvan a la máquina cliente. Requiere que el servidor ftp soporte el comando PASV. Este es el valor predeterminado ahora para todos los clientes (ftp y pftp) debido a problemas de seguridad al usar el modo de transferencia PORT. La bandera se mantiene solo por compatibilidad y ya no tiene efecto.Algunos clientes también admiten el comando
passive
.
Habilite su FTP con el modo pasivo, si ya se ha conectado, escriba
ftp> passive
Passive mode on.
Actualmente estás usando FTP en modo pasivo.