FTP (sigla en inglés de File Transfer Protocol – Protocolo de Transferencia de Archivos) en informática, es un protocolo de red para la transferencia de archivos entre sistemas conectados a una red TCP, basado en la arquitectura cliente-servidor. Desde un equipo cliente se puede conectar a un servidor para descargar archivos desde él o para enviarle archivos, independientemente del sistema operativo utilizado en cada equipo.
El Servicio FTP es ofrecido por la capa de Aplicación del modelo de capas de red TCP/IP al usuario, utilizando normalmente el puerto de red 20 y el 21. Un problema básico de FTP es que está pensado para ofrecer la máxima velocidad en la conexión, pero no la máxima seguridad, ya que todo el intercambio de información, desde el login y password del usuario en el servidor hasta la transferencia de cualquier archivo, se realiza en texto plano sin ningún tipo de cifrado, con lo que un posible atacante puede capturar este tráfico, acceder al servidor, o apropiarse de los archivos transferidos.
Para solucionar este problema son de gran utilidad aplicaciones como SCP y sftp, incluidas en el paquete SSH, que permiten transferir archivos pero cifrando todo el tráfico.
SCP o Secure Copy es un medio de transferencia segura de archivos informáticos entre un host local y otro remoto o entre dos hosts remotos, usando el protocolo Secure Shell (SSH).
SSH Secure Shell, protocolo informático que sirve para acceder a máquinas remotas.
| COMANDO Y ARGUMENTOS | ACCIÓN QUE REALIZA |
|---|---|
| open servidor | Inicia una conexión con un servidor FTP |
| close o disconnect | Finaliza una conexión FTP sin cerrar el programa cliente |
| bye o quit | Finaliza una conexión FTP y la sesión de trabajo con el programa cliente |
| cd directorio | Cambia el directorio de trabajo en el servidor |
| delete archivo | Borra un archivo en el servidor |
| mdelete patrón | Borra múltiples archivos basado en un patrón que se aplica al nombre |
| dir | Muestra el contenido del directorio en el que estamos en el servidor |
| get archivo | Obtiene un archivo |
| noop No Operation | Se le comunica al servidor que el cliente esta en modo de no operacion, el servidor usualmente responde con un “ZZZ” y refrescael contador de tiempo inactivo del usuario. |
| mget archivos | Obtiene múltiples archivos |
| hash | Activa la impresión de caracteres # a medida que se transfieren archivos, a modo de barra de progreso |
| lcd directorio | Cambia el directorio de trabajo local |
| ls | Muestra el contenido del directorio en el servidor |
| prompt | Activa/desactiva la confirmación por parte del usuario de la ejecución de comandos. Por ejemplo al borrar múltiples archivos |
| put archivo | Envía un archivo al directorio activo del servidor |
| mput archivos | Envía múltiples archivos |
| pwd | Muestra el directorio activo en el servidor |
| rename archivo | Cambia el nombre a un archivo en el servidor |
| rmdir directorio | Elimina un directorio en el servidor si ese directorio esta vacío |
| status | Muestra el estado actual de la conexión |
| bin o binary | Activa el modo de transferencia binario |
| ascii | Activa el modo de transferencia en modo texto ASCII |
| ! | Permite salir a línea de comandos temporalmente sin cortar la conexión. Para volver, teclear exit en la línea de comandos |
| ? nombre de comando | Muestra la información relativa al comando |
| ? o help | Muestra una lista de los comandos disponibles |
| append nombre del archivo | Continua una descarga que se ha cortado previamente |
| bell | Activa/desactiva la reproducción de un sonido cuando ha terminado cualquier proceso de transferencia de archivos |
| glob | Activa/desactiva la visualización de nombres largos de nuestro PC |
| literal | Con esta orden se pueden ejecutar comandos del servidor de forma remota. Para saber los disponibles se utiliza: literal help |
| mkdir | Crea el directorio indicado de forma remota |
| quote | Hace la misma función que literal |
| send nombre del archivo | Envía el archivo indicado al directorio activo del servidor |
| user | Para cambiar nuestro nombre de usuario y contraseña sin necesidad de salir de la sesión ftp.– |

