Breve introducción al protocolo SSH:
El protocolo SSH (Secure Shell) se creó como una alternativa a Telnet para iniciar sesión y acceder a dispositivos remotos de forma segura. A diferencia de Telnet, SSH proporciona cifrado a la comunicación entre ambos lados. Para entender SSH y Telnet imagina un túnel en el que la información viaja de un dispositivo a otro, con Telnet el túnel es transparente permitiendo que los actores externos vean la información que pasa a través de él, mientras que con SSH se pinta el mismo túnel evitando que la gente vea el información que pasa en su interior. Si bien el protocolo SSH se desarrolló inicialmente para que los usuarios accedan a dispositivos remotos a través de la consola, puede ser útil para cifrar otras funciones o protocolos como FTP.
Usando scp:
SCP nos permite transferir archivos de forma segura desde el cliente al servidor (consulte aquí cómo configurar SSH como servidor), recuperar archivos del servidor y entregar archivos del servidor al cliente.
La sintaxis es bastante fácil de entender, digamos que tenemos 3 computadoras, A, B y C:
Usando scp para buscar archivos del dispositivo B usando el dispositivo A (Obteniendo archivos):
nombre de usuario scp @ X.X.X.X: / ruta / a / remoto / archivo / local / directorio / donde / a / guardar / el / archivoDónde:
scp = llama al programa
Nombre de usuario = reemplácelo por el nombre de usuario adecuado
@ = separa el nombre de usuario y el host / ip
X.X.X.X = reemplácelo por el host / ip adecuado.
: / ruta / a / remoto / archivo = determinar la ubicación remota del archivo a buscar.
/ local / directorio / donde / para / guardar / el / archivo = reemplácelo por el directorio local donde desea almacenar el archivo.
Uso de scp para copiar archivos del dispositivo A al dispositivo B (envío de archivos):
scp NOMBRE DE ARCHIVO nombre de usuario @ X.X.X.X: / directorio / remotoDónde:
scp = llama al programa
NOMBRE DEL ARCHIVO = nombre del archivo a transferir
Nombre de usuario = reemplácelo por el nombre de usuario adecuado
@ = separa el nombre de usuario y el host / ip
X.X.X.X = reemplácelo por el host / ip adecuado
: / directorio / remoto = determinar la ubicación remota para almacenar el archivo transferido.
Usando scp para copiar archivos del dispositivo B al dispositivo C mientras opera el dispositivo A:
scp username1 @ X.X.X.X: / ruta / a / remoto / nombre de usuario de archivo2 @ Y.Y.Y.Y: / ruta / al directorio / destinarion /Dónde:
scp = llama al programa
Nombre de usuario = reemplácelo por el nombre de usuario adecuado en el dispositivo B.
@ = separa el nombre de usuario y el host / ip
X.X.X.X = reemplácelo por el host / ip adecuado para el dispositivo B.
Nombre de usuario2 = reemplácelo por el nombre de usuario adecuado del dispositivo C
@ = separa el nombre de usuario y el host / ip
Y.Y.Y.Y = reemplácelo por el host / ip adecuado para el dispositivo C.
: / ruta / al directorio / destinarion / = determinar la ubicación remota para almacenar el archivo transferido.
Usando scp para copiar un directorio completo (no un solo archivo) desde el dispositivo A al dispositivo B:
Al igual que con el comando "cp", podemos agregar el parámetro -r para transferir directorios completos:
scp -r / local / nombre de usuario del directorio @ X.X.X.X: / directorio / remotoDonde -r especifica que el contenido a copiar no es un archivo sino un directorio completo, al igual que usamos el comando "cp -r"
Añadiendo el parámetro -r podemos transferir directorios en lugar de archivos individuales.
Si queremos acelerar la transferencia de archivos podemos agregar el parámetro -C que comprimirá archivos o directorios durante la transferencia, incluso dejando la copia de destino sin comprimir (si la fuente lo fuera).
Un ejemplo para acelerar scp puede ser:
scp -C NOMBRE DE ARCHIVO nombre de usuario @ X.X.X.X: / directorio / remotoNota: No confunda -C con -c, mientras que -C es para acelerar la transferencia del archivo comprimiendo el contenido, -c determina el chiper.
Además podemos especificar el número de puerto. Por defecto, SCP usa el puerto SSH 22, pero algunos administradores de sistemas lo cambian por razones de seguridad. Para especificar un puerto diferente, simplemente agregue -P como parámetro:
scp -P 2048 NOMBRE DE ARCHIVO nombre de usuario @ X.X.X.X: / remoto / directorDónde:
-PAG: Especifica un puerto.
2048: reemplácelo por el puerto correcto.
Espero que este artículo le haya resultado útil y productivo; siga LinuxHint para obtener más consejos y actualizaciones sobre Linux.