Introducción
FTP (Protocolo de transferencia de archivos) es un protocolo de red utilizado para transferir archivos de un sistema informático a otro. Aunque la seguridad de FTP tiende a generar mucha discusión, sigue siendo un método efectivo para transferir archivos dentro de una red segura.
En este tutorial, le mostraremos cómo usar el ftp
comando para conectarse a un sistema remoto, transferir archivos y administrar archivos y directorios.
Requisitos previos
- Acceso a un sistema local y un servidor FTP remoto (aprende a instalar un servidor FTP en Ubuntu, CentOS 7 o Raspberry Pi).
- Una conexión a Internet que funcione.
- Acceso a la ventana de terminal.
IMPORTANTE: El tráfico FTP no está encriptado y, por lo tanto, se considera inseguro. No se recomienda transferir archivos a través de Internet mediante FTP. Para obtener más información sobre alternativas seguras a FTP, consulte nuestros artículos sobre SFTP y TSL frente a SSL.
Sintaxis del comando ftp de Linux
El ftp
de Linux El comando utiliza la siguiente sintaxis básica:
ftp [options] [IP]
La IP
es la dirección IP del sistema al que se está conectando.
Las opciones disponibles para el ftp
comando son:
Opciones de comando FTP | Descripción |
---|---|
-4 | Usar solo IPv4. |
-6 | Usar solo IPv6. |
-e | Desactiva la edición de comandos y la compatibilidad con el historial. |
-p | Utiliza el modo pasivo para las transferencias de datos, lo que le permite usar FTP a pesar de un firewall que podría impedirlo. |
-i | Desactiva las indicaciones interactivas durante varias transferencias de archivos. |
-n | Desactiva los intentos de inicio de sesión automático en la conexión inicial. |
-g | Desactiva la inclusión de nombres de archivos. |
-v | Habilita la salida detallada. |
-d | Habilita la depuración. |
Comando | Descripción |
---|---|
! | Escape temporalmente al shell local. |
$ | Ejecutar una macro. |
? | Mostrar texto de ayuda. |
account | Proporcione una contraseña para el sistema remoto. |
append | Anexar un archivo local a un archivo en el sistema remoto. |
ascii | Establezca el tipo de transferencia de archivos en red ASCII (tipo predeterminado). |
bell | Habilite una alerta de sonido después de que se complete cada transferencia. |
binary | Establezca el tipo de transferencia de archivos en transferencia de imagen binaria. |
bye | Salga de la interfaz FTP. |
case | Alternar la sensibilidad entre mayúsculas y minúsculas cuando se mapea ID durante el mget comando. |
cd | Cambia el directorio de trabajo actual en el sistema remoto. |
cdup | Cambia al directorio principal del directorio de trabajo actual en el sistema remoto. |
chmod | Cambiar permisos de archivo en el sistema remoto. |
close | Salga de la interfaz FTP. |
cr | Alternar eliminación de retornos de carro en transferencias de archivos ASCII. |
debug | Alternar modo de depuración. |
delete | Eliminar un archivo del sistema remoto. |
dir | Lista el contenido de un directorio en el sistema remoto. |
disconnect | Termine la sesión de FTP. |
exit | Termine la sesión FTP y salga de la interfaz FTP. |
form | Establecer el formato de transferencia de archivos. |
get | Transferir un archivo desde el sistema remoto a la máquina local. |
glob | Alternar la expansión de metacaracteres de nombres de archivos locales. |
hash | Alternar mostrar el signo de almohadilla ("# ") por cada bloque de datos transferido. |
help | Mostrar texto de ayuda. |
idle | Establezca un temporizador de inactividad para el sistema remoto. |
image | Establezca el tipo de transferencia de archivos en transferencia de imagen binaria. |
ipany | Permitir cualquier tipo de dirección IP. |
ipv4 | Permitir solo direcciones IPv4. |
ipv6 | Permitir solo direcciones IPv6. |
lcd | Cambia el directorio de trabajo actual en la máquina local. |
ls | Lista el contenido de un directorio en el sistema remoto. |
macdef | Definir una macro. |
mdelete | Eliminar varios archivos en el sistema remoto. |
mdir | Lista el contenido de varios directorios en el sistema remoto. |
mget | Transfiere múltiples archivos desde el sistema remoto a la máquina local. |
mkdir | Cree un directorio en el sistema remoto. |
mls | Lista el contenido de varios directorios en el sistema remoto. |
mode | Establece el modo de transferencia de archivos. |
modtime | Muestra la última vez que se modificó un archivo en el sistema remoto. |
mput | Transfiere múltiples archivos desde la máquina local al sistema remoto. |
newer | Transfiera un archivo del sistema remoto a la máquina local solo si la hora de modificación del archivo remoto es más reciente que la del archivo local (si no existe una versión local del archivo, el archivo remoto se considerado más nuevo). |
nlist | Lista el contenido de un directorio en el sistema remoto. |
<a href="https://phoenixnap.com/kb/nmap-scan-open-ports" target="_blank" rel="noreferrer noopener">nmap</a> | Establecer plantillas para la asignación de nombres de archivos predeterminados. |
ntrans | Establecer la tabla de traducción para la asignación de nombre de archivo predeterminada. |
open | Establecer una conexión con un servidor FTP. |
passive | Habilitar el modo de transferencia pasiva. |
prompt | Forzar avisos interactivos al transferir varios archivos. |
proxy | Ejecutar comando en una conexión alternativa (proxy). |
put | Transferir un archivo desde la máquina local al sistema remoto. |
pwd | Muestra el directorio de trabajo actual en el sistema remoto. |
qc | Alternar la visualización de un carácter de control ("? ") en la salida de comandos de tipo ASCII. |
exit | Termine la sesión FTP y salga de la interfaz FTP. |
quote | Especifique un comando como argumento y envíelo al servidor FTP. |
recv | Transferir un archivo desde el sistema remoto a la máquina local. |
reget | Transfiere un archivo desde el sistema remoto a la máquina local si el archivo local es más pequeño que el archivo remoto. La transferencia comienza al final del archivo local. Si no hay una versión local del archivo, el comando no se ejecuta. |
rename | Renombrar un archivo en el sistema remoto. |
reset | Borrar respuestas de comandos en cola. |
restart | Reiniciar un comando de transferencia de archivos en un marcador establecido. |
rhelp | Mostrar texto de ayuda para el sistema remoto. |
rmdir | Eliminar un directorio en el sistema remoto. |
rstatus | Muestra el estado del sistema remoto. |
runique | Alternar el almacenamiento de archivos en la máquina local con nombres de archivo únicos. |
send | Transferir un archivo desde la máquina local al sistema remoto. |
sendport | Alternar el uso de comandos PORT. |
site | Especifique un comando como argumento y envíelo al servidor FTP como un comando SITE. |
size | Muestra el tamaño de un archivo en el sistema remoto. |
status | Muestra el estado de la interfaz FTP. |
struct | Establecer la estructura de transferencia de archivos. |
sunique | Alternar el almacenamiento de archivos en el sistema remoto con nombres de archivo únicos. |
system | Mostrar el sistema operativo en el sistema remoto. |
tenex | Establezca el tipo de transferencia de archivos para permitir la conexión a máquinas TENEX. |
tick | Alternar la impresión del contador de bytes durante las transferencias. |
trace | Alternar rastreo de paquetes. |
type | Establezca un tipo de transferencia de archivos. |
máscara | Establezca una máscara de permisos predeterminada para la máquina local. |
user | Proporcione el nombre de usuario y la contraseña para el servidor FTP remoto. |
verbose | Alternar salida detallada. |