- CORREO: info@fruteroloco.es
- FRUTEROLOCO : TIPS Linux, Macos, Windows ....
Copiar archivos a remoto desde terminal y viceversa (COMANDO SCP)
Los que vamos subiendo y bajando archivos a servidores sabemos lo vulnerables que son los datos
a "sniffeos"
,lo fácil que es sacar una clave ftp desde una red local etc etc etc. Bueno aquí un método más seguro
para la transferencia de archivos entre servidores ......
Ayer uno de los servidores que uso para mandar copias de seguridad tenía problemas de montado
con un hdd y aproveché para mandarme un backup ( de unos 14gb ) por scp.
Aquí a modo ejemplo subo una imagen iso debian, de mi notebook al servidor:
Secure Copy o SCP es un medio de transferencia segura de archivos entre un host local y un servidor
remoto o entre dos hosts remotos, usando el protocolo Secure Shell (SSH) Al igual que ssh, scp
nos pedirá autenticación para acceder a la máquina. También se puede crear el par de claves,
publica y privada para que el proceso de autenticación sea automático, es decir, que no nos solicite
el password. Especificando en el archivo authorized_keys del servidor remoto la clave publica del servidor local.
A continuación indico un par de ejemplos para copiar archivos entre varios servidores, primero copiando archivos
de un servidor remoto a nuestro ordenador local y copiando un archivo de nuestro ordenador o servidor
local a un servidor remoto.
Copiar archivos de un servidor remoto a local
scp -P 22 -pr USUARIO@IP_SERVER_REMOTO:/path/server/remoto /path/server/local
Copiar archivos de Pc local a servidor remoto
scp -P 22 -pr /path/local/pc/ USUARIO@IP_SERVER_REMOTO:/path/server/remoto
Modificadores:
-P numero de puerto, en caso que use un puerto diferente al de por defecto, 22. Ejemplo -P 22300.
-p Mantiene los registros de fecha de creación y última modificación,así como los permisos.
-r Copia recursivamente los directorios enteros.
Habría que poner este modificador antes de indicar el usuario y la ip. Ejemplo:
scp -P 22300 -pr USUARIO@IP_SERVER_REMOTO:/path/server/remoto /path/server/local
Nota: el puerto 22300, es un puerto aleatorio que estoy usando para este ejemplo. Copiar un archivo del
servidor local a un servidor remoto El comando scp también se puede utilizar para copiar archivos de
nuestro servidor local a un servidor remoto. Tan sólo hay que especificar antes del usuario y el host remoto,
el path del archivo o directorio que queremos copiar.
En el siguiente ejemplo, voy a copiar mi clave publica a el servidor remoto.
scp /home/pedro/.ssh/id_rsa.pub USUARIO@IP_SERVER_REMOTO:/home/pedro/clave_publica.txt
Como en el caso anterior, también se puede poner el modificador -P justo después de escribir el
comando scp para indicar que se conecte por otro puerto diferente al predeterminado.
scp -P 45459 /home/pedro/.ssh/id_rsa.pub USUARIO@IP_SERVER_REMOTO:/home/pedro/clave_publica.txt
Como siempre para cualquier duda desde la misma terminal podemos usar man o help ,
para tener más datos sobre el software.
$ scp --help
$ man scp