Transferir archivos a instancias de Linux mediante SCP
Una de las formas de transferir archivos entre el equipo local y una instancia de Linux consiste en utilizar el protocolo de copia segura (SCP). En esta sección se describe cómo transferir archivos con SCP. El procedimiento es similar al que se debe seguir para conectarse a una instancia con SSH.
Antes de conectarse a la instancia de Linux mediante SCP, complete las siguientes tareas:
-
Complete los requisitos previos generales.
-
Verifique que su instancia ha pasado las comprobaciones de estado. Puede que transcurran unos minutos hasta que la instancia esté lista para aceptar solicitudes de conexión. Para obtener más información, consulte Ver comprobaciones de estado.
-
-
Permita el tráfico entrante de SSH desde la dirección IP.
Asegúrese de que el grupo de seguridad asociado a la instancia permita el tráfico SSH que ingresa desde la dirección IP. Para obtener más información, consulte Reglas para conectarse a las instancias desde un equipo.
-
Instale un cliente SCP.
La mayoría de equipos Linux, Unix y Apple incluyen un cliente SCP de forma predeterminada. Si el equipo no lo incluye, el proyecto OpenSSH proporciona una implementación gratuita de toda la suite de herramientas de SSH, incluido un cliente SCP. Para obtener más información, consulte https://www.openssh.com
.
El procedimiento siguiente le guiará a través del uso de SCP para transferir un archivo utilizando el nombre DNS público de la instancia, o la dirección IPv6 si la instancia tiene una.
Para utilizar SCP para transferir archivos entre el equipo y la instancia
-
Determine la ubicación del archivo de origen en el equipo y la ruta de destino en la instancia. En los ejemplos siguientes, el nombre del archivo de clave privada es
key-pair-name.pem
, el archivo que se va a transferir esmy-file.txt
, el nombre de usuario de la instancia es ec2-user, el nombre DNS público de la instancia esinstance-public-dns-name
y la dirección IPv6 de la instancia esinstance-IPv6-address
.-
(DNS público) Para transferir un archivo al destino de la instancia, escriba el siguiente comando desde el equipo.
scp -i
/path/key-pair-name
.pem/path/my-file.txt
ec2-user
@instance-public-dns-name
:path/
-
(IPv6) Para transferir un archivo al destino de la instancia si la instancia tiene una dirección IPv6, escriba el siguiente comando desde el equipo. La dirección IPv6 se debe escribir entre corchetes (
[ ]
), a los que se deben aplicar escape (\
).scp -i
/path/key-pair-name
.pem/path/my-file.txt
ec2-user
@\[instance-IPv6-address
\]:path/
-
-
Si aún no se ha conectado a la instancia mediante SSH, verá una respuesta como la siguiente:
The authenticity of host 'ec2-198-51-100-1.compute-1.amazonaws.com (10.254.142.33)' can't be established. RSA key fingerprint is 1f:51:ae:28:bf:89:e9:d8:1f:25:5d:37:2d:7d:b8:ca:9f:f5:f1:6f. Are you sure you want to continue connecting (yes/no)?
(Opcional) Si lo desea, puede comprobar que la huella digital de la alerta de seguridad coincide con la huella digital de la instancia. Para obtener más información, consulte (Opcional) Obtenga la huella digital de la instancia.
Escriba
yes
. -
Si la transferencia se realiza correctamente, la respuesta será similar a la siguiente:
Warning: Permanently added 'ec2-198-51-100-1.compute-1.amazonaws.com' (RSA) to the list of known hosts. my-file.txt 100% 480 24.4KB/s 00:00
-
Para transferir un archivo en la otra dirección (desde la instancia Amazon EC2 al equipo), revierta el orden de los parámetros de host. Por ejemplo, puede transferir
my-file.txt
desde la instancia de EC2 al destino en el equipo localmy-file2.txt
, como se muestra en los siguientes ejemplos.-
(DNS público) Para transferir un archivo a un destino del equipo, escriba el siguiente comando desde el equipo.
scp -i
/path/key-pair-name
.pemec2-user
@instance-public-dns-name
:path/my-file.txt path/my-file2.txt
-
(IPv6) Para transferir un archivo a un destino del equipo si la instancia tiene una dirección IPv6, escriba el siguiente comando desde el equipo. La dirección IPv6 se debe escribir entre corchetes (
[ ]
), a los que se deben aplicar escape (\
).scp -i
/path/key-pair-name
.pemec2-user
@\[instance-IPv6-address
\]:path/my-file.txt path/my-file2.txt
-