Saltar al contenido principal

Vicente Gutiérrez

Cómo enviar archivos usando SCP y SSH

Table of Contents

# ¿Qué es SCP?

Si necesitas transferir archivos de manera rápida y segura entre dos máquinas usando SSH, scp (Secure Copy Protocol) es una herramienta de línea de comandos ideal para el trabajo. Diseñada para transferencias cifradas, es simple de usar y altamente efectiva, especialmente para tareas puntuales.

La estructura básica de un comando scp es:

scp [options] <source> <destination>

# ¿Qué necesitas antes de usar SCP?

Antes de transferir archivos con scp, necesitas asegurarte de que puedes autenticarte en el servidor remoto usando SSH. Esto puede hacerse de dos maneras principales:

  1. Con contraseña: Cuando ejecutes scp, se te pedirá la contraseña del usuario remoto.
  2. Con claves SSH: Configura una clave pública en el servidor remoto (generalmente en ~/.ssh/authorized_keys) y usa tu clave privada local para autenticarte sin contraseña. Esto es más seguro y conveniente para usos frecuentes.

Para probar la conexión, utiliza:

ssh user@server

# Algunos ejemplos prácticos

Enviar un archivo a un servidor remoto

scp file.txt user@server:/remote/path/

Este comando enviará file.txt al servidor remoto en la ruta especificada.

Descargar un archivo desde un servidor remoto

scp user@server:/remote/path/file.txt /local/path/

Esto descargará file.txt a tu máquina local.

Transferir directorios completos

Para copiar un directorio, usa la opción -r (recursivo):

scp -r directorio user@server:/remote/path/

Especificar un puerto SSH diferente

Si el servidor usa un puerto SSH diferente al predeterminado (22), agrega -P seguido del número de puerto:

scp -P 2222 file.txt user@server:/remote/path/

Transferir archivos directamente entre dos servidores remotos

scp user1@server1:/remote/path/file.txt user2@server2:/remote/path/

# Conclusión

scp es una herramienta sencilla pero poderosa para transferencias rápidas de archivos. Si buscas más flexibilidad o necesitas reiniciar transferencias interrumpidas, considera alternativas como rsync.