protocolo de copia segura


El protocolo de copia segura ( SCP ) es un medio para transferir de forma segura archivos informáticos entre un host local y un host remoto o entre dos hosts remotos. Se basa en el protocolo Secure Shell (SSH). [1] "SCP" comúnmente se refiere tanto al Protocolo de copia segura como al programa en sí. [2] Según los desarrolladores de OpenSSH en abril de 2019, SCP está desactualizado, es inflexible y no se repara fácilmente; recomiendan el uso de protocolos más modernos como sftp y rsync para la transferencia de archivos. [3]

El SCP es un protocolo de red , basado en el protocolo BSD RCP , [4] que admite transferencias de archivos entre hosts en una red. SCP utiliza Secure Shell (SSH) para la transferencia de datos y utiliza los mismos mecanismos para la autenticación, lo que garantiza la autenticidad y confidencialidad de los datos en tránsito . Un cliente puede enviar (cargar) archivos a un servidor, incluyendo opcionalmente sus atributos básicos (permisos, marcas de tiempo). Los clientes también pueden solicitar archivos o directorios desde un servidor (descarga). SCP se ejecuta en el puerto TCP 22 de forma predeterminada. [5] Al igual que RCP, no hay RFC que defina los detalles del protocolo.

Normalmente, un cliente inicia una conexión SSH con el host remoto y solicita que se inicie un proceso SCP en el servidor remoto. El proceso SCP remoto puede operar en uno de dos modos:

Para la mayoría de los clientes SCP, el modo fuente generalmente se activa con la -fbandera (desde), mientras que el modo receptor se activa con -t(a). [2] Estas banderas se usan internamente y no están documentadas fuera del código fuente de SCP.

En el pasado, en la copia segura de remoto a remoto, el cliente SCP abre una conexión SSH al host de origen y solicita que, a su vez, abra una conexión SCP al destino. (El modo remoto a remoto no admitía la apertura de dos conexiones SCP y el uso del cliente de origen como intermediario). Es importante tener en cuenta que SCP no se puede utilizar para copiar de forma remota desde el origen al destino cuando se opera en modo de autenticación interactiva con contraseña o teclado, ya que esto revelaría las credenciales de autenticación del servidor de destino al origen. Sin embargo, es posible con métodos basados ​​en claves o GSSAPI que no requieren la entrada del usuario. [2]

Recientemente, el modo remoto a remoto admite el enrutamiento del tráfico a través del cliente que originó la transferencia, aunque sea un tercero en la transferencia. De esta forma, las credenciales de autorización deben residir únicamente en el cliente de origen, el tercero. [6]