scp — Copia segura de archivos de OpenSSH
SINOPSIS
scp [-346ABCOpqRrsTv] [-c cifra] [-D ruta_servidor_sftp] [-F archivo_ssh_config] [-i archivo_identidad]
[-J destino] [-l límite] [-o opción_ssh] [-P puerto] [-S programa] [-X opción_sftp] origen
... destino
DESCRIPCIÓN
scp copia archivos entre hosts en una red.
scp utiliza el protocolo SFTP a través de una conexión ssh(1) para la transferencia de datos, y utiliza la misma autenticación y proporciona la misma seguridad que una sesión de inicio de sesión.
scp solicitará contraseñas o frases de contraseña si son necesarias para la autenticación.
El origen y el destino se pueden especificar como una ruta de archivo local, un host remoto con una ruta opcional en el formato [usuario@]host:[ruta], o un URI en el formato scp://[usuario@]host[:puerto][/ruta]. Los nombres de archivo locales se pueden especificar utilizando rutas absolutas o relativas para evitar que scp trate los nombres de archivo que contienen ‘:’ como especificadores de host.
Cuando se copia entre dos hosts remotos, si se utiliza el formato URI, no se puede especificar un puerto en el destino si se utiliza la opción -R.
Las opciones son las siguientes:
-3 Las copias entre dos hosts remotos se transfieren a través del host local. Este modo es el
predeterminado, pero consulte también la opción -R para copiar datos directamente entre dos hosts remotos.
Tenga en cuenta que cuando se utiliza el protocolo SCP heredado (a través del indicador -O), esta opción selecciona el modo por lotes para el segundo host, ya que scp no puede solicitar contraseñas o frases de contraseña para ambos hosts.
-4 Fuerza a scp a utilizar solo direcciones IPv4.
-6 Fuerza a scp a utilizar solo direcciones IPv6.
-A Permite el reenvío de ssh-agent(1) al sistema remoto. El valor predeterminado es no reenviar un
agente de autenticación.
-B Selecciona el modo por lotes (evita solicitar contraseñas o frases de contraseña).
-C Habilita la compresión. Pasa el indicador -C a [ssh]({filename}../../ssh)(1) para habilitar la compresión.
-c cifra
Selecciona el cifrado que se utilizará para cifrar la transferencia de datos. Esta opción se pasa directamente a ssh(1).
-D ruta_servidor_sftp
Conéctese directamente a un programa de servidor SFTP local en lugar de a uno remoto a través de ssh(1). Esta opción puede ser útil para depurar el cliente y el servidor.
-F archivo_ssh_config
Especifica un archivo de configuración alternativo por usuario para ssh. Esta opción se pasa directamente a ssh(1).
-i archivo_identidad
Selecciona el archivo del que se lee la identidad (clave privada) para la autenticación de clave pública. Esta opción se pasa directamente a ssh(1).
-J destino
Conéctese al host de destino primero estableciendo una conexión scp al host de salto descrito por destino y luego estableciendo un reenvío TCP al destino final desde allí. Se pueden especificar varios saltos separados por comas. Esta es una forma abreviada de especificar una directiva ProxyJump. Esta opción se pasa directamente a ssh(1).
-l límite
Limita el ancho de banda utilizado, especificado en Kbit/s.
-O Utilice el protocolo SCP heredado para las transferencias de archivos en lugar del protocolo SFTP. Forzar el
uso del protocolo SCP puede ser necesario para los servidores que no implementan SFTP, para la compatibilidad con versiones anteriores de patrones de comodines de nombres de archivo específicos y para expandir las rutas
con un prefijo ‘~’ para los servidores SFTP más antiguos.
-o opción_ssh
Se puede utilizar para pasar opciones a ssh en el formato utilizado en ssh_config(5). Esto es útil para especificar opciones para las que no hay un indicador de línea de comandos scp separado. Para obtener información completa sobre las opciones que se enumeran a continuación y sus posibles valores, consulte ssh_config(5).
AddKeysToAgent
AddressFamily
BatchMode
BindAddress
BindInterface
CASignatureAlgorithms
CanonicalDomains
CanonicalizeFallbackLocal
CanonicalizeHostname
CanonicalizeMaxDots
CanonicalizePermittedCNAMEs
CertificateFile
ChannelTimeout
CheckHostIP
Ciphers
ClearAllForwardings
Compression
ConnectTimeout
ConnectionAttempts
ControlMaster
ControlPath
ControlPersist
DynamicForward
EnableEscapeCommandline
EnableSSHKeysign
EscapeChar
ExitOnForwardFailure
FingerprintHash
ForkAfterAuthentication
ForwardAgent
ForwardX11
ForwardX11Timeout
ForwardX11Trusted
GSSAPIAuthentication
GSSAPIDelegateCredentials
GatewayPorts
GlobalKnownHostsFile
HashKnownHosts
Host
HostKeyAlgorithms
HostKeyAlias
HostbasedAcceptedAlgorithms
HostbasedAuthentication
Hostname
IPQoS
IdentitiesOnly
IdentityAgent
IdentityFile
IgnoreUnknown
Include
KbdInteractiveAuthentication
KbdInteractiveDevices
KexAlgorithms
KnownHostsCommand
LocalCommand
LocalForward
LogLevel
LogVerbose
MACs
NoHostAuthenticationForLocalhost
NumberOfPasswordPrompts
ObscureKeystrokeTiming
PKCS11Provider
PasswordAuthentication
PermitLocalCommand
PermitRemoteOpen
Port
PreferredAuthentications
ProxyCommand
ProxyJump
ProxyUseFdpass
PubkeyAcceptedAlgorithms
PubkeyAuthentication
RekeyLimit
RemoteCommand
RemoteForward
RequestTTY
RequiredRSASize
RevokedHostKeys
SecurityKeyProvider
SendEnv
ServerAliveCountMax
ServerAliveInterval
SessionType
SetEnv
StdinNull
StreamLocalBindMask
StreamLocalBindUnlink
StrictHostKeyChecking
SyslogFacility
TCPKeepAlive
Tag
Tunnel
TunnelDevice
UpdateHostKeys
User
UserKnownHostsFile
VerifyHostKeyDNS
VisualHostKey
XAuthLocation
-P puerto
Especifica el puerto al que conectarse en el host remoto. Tenga en cuenta que esta opción se escribe con una ‘P’ mayúscula, porque -p ya está reservada para preservar los tiempos y los bits de modo del archivo.
-p Conserva los tiempos de modificación, los tiempos de acceso y los bits de modo de archivo del archivo de origen.
-q Modo silencioso: deshabilita el medidor de progreso, así como los mensajes de advertencia y de diagnóstico de [ssh]({filename}../../ssh)(1).
-R Las copias entre dos hosts remotos se transfieren a través del host local de forma predeterminada. Esta opción
en su lugar, copia entre dos hosts remotos conectándose al host de origen y ejecutando scp allí. Esto requiere que el host de origen esté configurado correctamente.
-s Omite la modificación de los tiempos de archivo.
-v Modo detallado.
-z Comprime los datos durante la transferencia.
-c cifra
Especifica el cifrado que se utilizará.
-o opción
Permite especificar opciones adicionales que se pasarán a ssh.
-T desactiva la desmultiplexación del host.
-A solicita la autenticación del agente.
-B solicita la autenticación Kerberos.
-i archivo
Especifica el archivo de clave privada que se utilizará.
-p puerto
Especifica el puerto al que conectarse.
-r copia recursivamente los directorios.
-l límite
Especifica el número máximo de paquetes simultáneos.
-k desactiva la compresión.
-e comando
Especifica un comando para ejecutar antes de la transferencia.
-x no hace ping al host antes de conectarse.
-n redirige la salida estándar a /dev/null.
-y asume que la respuesta es sí a todas las preguntas.
-z desactiva la compresión.
-C habilita la compresión.
-h habilita el hash.
-i ignora la autenticación de la clave del host.
-q modo silencioso.
-v modo detallado.
-w desactiva el control de escritura.
-x desactiva la autenticación de la clave del host.
-y asume que la respuesta es sí a todas las preguntas.
-z desactiva la compresión.
ESTADO DE SALIDA
El comando scp devuelve 0 si la operación se realiza correctamente y un valor mayor que 0 si se produce un error.
VÉASE TAMBIÉN
sftp(1), ssh(1), ssh-add(1), ssh-agent(1), ssh-keygen(1), ssh_config(5), sftp-server(8), sshd(8)
HISTORIA
`scp` se basa en el programa `rcp` del código fuente de BSD de la Universidad de California.
A partir de OpenSSH 9.0, scp utiliza el protocolo SFTP para las transferencias de forma predeterminada.
AUTORES
Timo Rinne <_> Tatu Ylonen <_>
PRECAUCIONES
El protocolo SCP heredado (seleccionado mediante la opción -O) requiere la ejecución del shell del usuario remoto para realizar la coincidencia de patrones glob(3). Esto requiere una cita cuidadosa de cualquier carácter que tenga un significado especial para el shell remoto, como los caracteres de cita.