2010-04-26 17:36:01 +0000 2010-04-26 17:36:01 +0000
164
164

¿Cuál es la diferencia entre SCP y SFTP?

Normalmente, uso el comando scp para transferir archivos en *nixes.

¿Cuál es la diferencia entre SFTP y SCP? ¿No funcionan ambos en SSH?

Respuestas (5)

105
105
105
2010-04-26 19:36:45 +0000

De Wikipedia :

En comparación con el anterior protocolo SCP, que sólo permite la transferencia de archivos, el protocolo SFTP permite una serie de operaciones sobre archivos remotos - es más como un protocolo de sistema de archivos remoto. Las capacidades adicionales de un cliente SFTP en comparación con un cliente SCP incluyen la reanudación de transferencias interrumpidas, listados de directorios y eliminación de archivos remotos. 1] Por estas razones es relativamente sencillo implementar un cliente SFTP GUI comparado con un cliente SCP GUI.

y

Aunque tanto SCP como SFTP utilizan la misma encriptación SSH durante la transferencia de archivos con el mismo nivel general de sobrecarga, SCP suele ser mucho más rápido que SFTP en la transferencia de archivos, especialmente en redes de alta latencia. Esto ocurre porque SCP implementa un algoritmo de transferencia más eficiente, que no requiere esperar confirmaciones de paquetes. Esto conduce a una mayor velocidad, pero viene a costa de no poder interrumpir una transferencia, por lo que, a diferencia de SFTP, la transferencia SCP no puede ser cancelada sin terminar la sesión.

100
100
100
2010-04-26 18:10:26 +0000

En pocas palabras, SCP sólo se puede utilizar para transferir archivos, y no es interactivo (es decir, todo tiene que ser especificado en la línea de comandos). SFTP es más elaborado, y permite comandos interactivos para hacer cosas como crear directorios, borrar directorios y archivos (todo sujeto a los permisos del sistema, por supuesto), etc.

9
9
9
2016-01-20 11:04:11 +0000

Desde una perspectiva puramente de línea de comandos :

  • scp no tiene un modo interactivo ni puede leer scripts de comandos, eso significa que todo debe ser escrito en la línea de comandos.
  • sftp tiene un modo interactivo y puede leer comandos desde un archivo.

Otra diferencia importante entre los 2 comandos es que sftp no puede poner un archivo local en una ubicación remota usando una sola línea de comando, aunque puede obtener el archivo remoto, mientras que scp puede hacer ambas cosas.

sftp get remote file

sftp user@host:/path/to/remote.file [/path/to/local.file]

scp get remote file

scp user@host:/path/to/remote.file [/path/to/local.file]

scp put remote file

scp /path/to/local.file user@host:[/path/to/remote.file]
3
3
3
2016-05-25 03:52:12 +0000

SSH ( S ecure SH ell) es un protocolo de red criptográfico que permite el inicio de sesión remoto y otros servicios de red para operar de forma segura en una red no segura.

Diferencias: SFTP funciona en modo interactivo (sesión) y SCP funciona en modo no interactivo. Usando SFTP podemos acceder al sistema de archivos remoto, es decir, crear, borrar y listar archivos.

Similitudes: Tanto SCP ( S ecure C opy P rotocol) como SFTP ( S SH F ile T ransfer P rotocol) son protocolos de red, que soportan la gestión de archivos entre hosts en una red. Ambos utilizan SSH. más

2
2
2
2017-08-13 19:46:17 +0000

La mayoría de las diferencias de los dos protocolos ya se han dicho en otras respuestas, y más verbosamente en https://unix.stackexchange.com/q/8707/19088

Otra diferencia, según la documentación de curl , es que el protocolo SCP no es muy portable y normalmente sólo funciona entre sistemas Unix.

Por cierto, curl implementa ambos protocolos y a diferencia de la implementación por defecto del cliente SFTP de OpenSSH, es no interactivo tanto para SFTP como para SCP.

Y ten en cuenta que también existe el protocolo FISH , que permite transferir ficheros vía SSH sin necesidad de SCP o SFTP. Por lo que sé, FISH no es muy popular, actualmente está implementado sólo en unos pocos gestores de archivos Midnight Commander y algunos que están basados en KDE) y Lftp .