Está en la página 1de 6

Cómo usar el comando ftp de Linux para subir y

descargar archivos en el shell


Luis Eduardo Verenzuela 18/04/2019 22:31

En este tutorial, explicaré cómo usar el comando ftp de Linux en el shell. Le mostraré cómo conectarse
a un servidor FTP, subir y descargar archivos y crear directorios. Si bien hay muchos clientes FTP de
escritorio disponibles, el comando FTP sigue siendo útil cuando trabaja de forma remota en un servidor
durante una sesión SSH y, por ejemplo, desea obtener un archivo de copia de seguridad de su
almacenamiento FTP.

Paso 1: Establecer una conexión FTP


Para conectarnos al servidor FTP, tenemos que escribir la ventana del terminal ' ftp' y luego el nombre
de dominio 'domain.com ' o la dirección IP del servidor FTP.
Ejemplos:
ftp domain.com

ftp 192.168.0.1

ftp user@ftpdomain.com

Nota: para este ejemplo usamos un servidor anónimo.


Reemplace la IP y el dominio en los ejemplos anteriores con la dirección IP o el dominio de su servidor
FTP.
Paso 2: Iniciar sesión con usuario y contraseña
La mayoría de los inicios de sesión de los servidores FTP están protegidos por contraseña, por lo que el
servidor nos solicitará un " nombre de usuario" y una "contraseña ".
Si se conecta a un llamado servidor FTP anónimo, intente usar "anónimo" como nombre de usuario y
una contraseña vacía:
Name: anonymous

Password:

El terminal devolverá un mensaje como este:


230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

Cuando hayas iniciado sesión correctamente.

Paso 3: Trabajar con directorios


Los comandos para listar, mover y crear carpetas en un servidor FTP son casi los mismos que
utilizaríamos el shell localmente en nuestra computadora, ls significa list, cd para cambiar directorios,
mkdir para crear directorios ...
Listado de directorios con configuraciones de seguridad:
ftp> ls

El servidor volverá:
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
directory list
....
....
226 Directory send OK.

Cambiando directorios:
Para cambiar el directorio podemos escribir:
ftp> cd directory

El servidor volverá:
250 Directory succesfully changed.
Paso 4: Descarga de archivos con FTP
Antes de descargar un archivo, debemos configurar el directorio de descarga de archivos FTP local
mediante el comando 'lcd ':
lcd /home/user/yourdirectoryname

Si no especifica el directorio de descarga, el archivo se descargará en el directorio actual donde se


encontraba en el momento en que inició la sesión de FTP.
Ahora, podemos usar el comando 'get' para descargar un archivo, el uso es:
get file

El archivo se descargará en el directorio establecido previamente con el comando 'lcd '.


El servidor devolverá el siguiente mensaje:
local: file remote: file
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for file (xxx bytes).
226 File send OK.
XXX bytes received in x.xx secs (x.xxx MB/s).
Para descargar varios archivos podemos utilizar comodines. En este ejemplo, descargaré todos los
archivos con la extensión de archivo .xls.
mget *.xls

Paso 5: Subir archivos con FTP

Podemos cargar archivos que se encuentran en el directorio local donde hicimos la conexión FTP.

Para subir un archivo, podemos usar el comando 'put '.


put file

Cuando el archivo que desea cargar no se encuentra en el directorio local, también puede usar la ruta
absoluta que comienza con "/":
put /path/file

Para cargar varios archivos podemos usar el comando mput similar al ejemplo mget anterior:
mput *.xls

Paso 6: Cerrar la conexión FTP


Una vez que hayamos realizado el trabajo de FTP, deberíamos cerrar la conexión por razones de
seguridad. Hay tres comandos que podemos usar para cerrar la conexión:
bye

exit

quit

Cualquiera de ellos desconectará nuestra PC del servidor FTP y devolverá:


221 Goodbye
Si necesita ayuda adicional, una vez que se conecte al servidor FTP, escriba "ayuda" y esto le mostrará
todos los comandos FTP disponibles.

About Luis Eduardo Verenzuela


Luis Eduardo Verenzuela is a freelance system administrator and technical writer. He is working with
Linux Environments for more than 21 years, an Open Source enthusiast and highly motivated on Linux
installation and troubleshooting. Mostly working with Fedora/CentOS Linux and Ubuntu/Debian/Mint,
Nginx and Apache web server, Proxmox, Zimbra Administration, and Website Optimization.
moebius6357@gmail.com