Creación de un par de claves para la instancia de Amazon EC2 - Amazon Elastic Compute Cloud

Creación de un par de claves para la instancia de Amazon EC2

Puede utilizar Amazon EC2 para crear los pares de claves, o bien usar una herramienta de terceros para crearlos e importarlos luego en Amazon EC2.

Amazon EC2 admite claves ED25519 y RSA SSH-2 de 2048 bits para instancias de Linux. Amazon EC2 admite claves RSA SSH-2 de 2048 bits para instancias de Windows. Las claves ED25519 no son compatibles con instancias de Windows.

Para ver los pasos de cómo conectarse a una instancia de Windows mediante RDP después de crear un par de claves, consulte Conexión a una instancia de Windows.

Crear un par de claves mediante Amazon EC2

Cuando se crea un par de claves con Amazon EC2, la clave pública se almacena en Amazon EC2, y usted almacena la clave privada.

Puede crear hasta 5000 pares de claves por región. Para solicitar un aumento, cree un caso de asistencia. Para obtener más información, consulte Creación de un caso de soporte en la Guía del usuario de AWS Support.

Console
Para crear un par de claves mediante Amazon EC2
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, en Network & Security, seleccione Key Pairs.

  3. Elija Create key pair (Crear par de claves).

  4. En Name (Nombre), escriba un nombre descriptivo para el par de claves. Amazon EC2 asocia la clave pública al nombre que especifique como nombre de la clave. El nombre de una clave puede incluir hasta 255 caracteres ASCII. No puede incluir espacios iniciales ni finales.

  5. En Key pair type (Tipo de par de claves), elija RSA. Tenga en cuenta que las claves ED25519 no son compatibles con instancias de Windows.

  6. En Private key file format (Formato de archivo de la clave privada), elija el formato en el que desea guardar la clave privada. Para guardar la clave privada en un formato que se pueda utilizar con OpenSSH, elija pem. Para guardar la clave privada en un formato que se pueda utilizar con PuTTY, elija ppk.

  7. Para agregar una etiqueta a la clave pública, elija Add tag (Agregar etiqueta) e ingrese la clave y el valor de la etiqueta. Repita este proceso para cada etiqueta.

  8. Elija Create key pair (Crear par de claves).

  9. Su navegador descargará el archivo de clave privada automáticamente. El nombre del archivo base es el nombre especificado como el nombre del par de claves y la extensión del nombre de archivo la determina el formato de archivo elegido. Guarde el archivo de clave privada en un lugar seguro.

    importante

    Esta es la única oportunidad para guardar el archivo de clave privada.

AWS CLI
Para crear un par de claves mediante Amazon EC2
  • Utilice el comando create-key-pair como se indica a continuación para generar el par de claves y guardar la clave privada en un archivo .pem.

    En --key-name, especifique un nombre para la clave pública. El nombre puede incluir hasta 255 caracteres ASCII.

    En --key-type, especifique rsa o ed25519. Si no incluye el parámetro --key-type, se crea una clave rsa de forma predeterminada. Tenga en cuenta que las claves ED25519 no son compatibles con instancias de Windows.

    En --key-format, especifique pem o ppk. Si no incluye el parámetro --key-format, se crea un archivo pem de forma predeterminada.

    --query "KeyMaterial" imprime el material de clave privada en la salida.

    --output text > my-key-pair.pem guarda el material de clave privada en un archivo con la extensión especificada. La extensión puede ser .pem o .ppk. La clave privada puede tener un nombre diferente del nombre de la clave pública, pero para facilitar su uso, utilice el mismo nombre.

    aws ec2 create-key-pair \ --key-name my-key-pair \ --key-type rsa \ --key-format pem \ --query "KeyMaterial" \ --output text > my-key-pair.pem
PowerShell
Para crear un par de claves mediante Amazon EC2

Utilice el comando New-EC2KeyPair de AWS Tools for Windows PowerShell como se indica a continuación para generar la clave y guardarla en un archivo .pem o .ppk.

En -KeyName, especifique un nombre para la clave pública. El nombre puede incluir hasta 255 caracteres ASCII.

En -KeyType, especifique rsa o ed25519. Si no incluye el parámetro -KeyType, se crea una clave rsa de forma predeterminada. Tenga en cuenta que las claves ED25519 no son compatibles con instancias de Windows.

En -KeyFormat, especifique pem o ppk. Si no incluye el parámetro -KeyFormat, se crea un archivo pem de forma predeterminada.

KeyMaterial imprime el material de clave privada en la salida.

Out-File -Encoding ascii -FilePath C:\path\my-key-pair.pem guarda el material de clave privada en un archivo con la extensión especificada. La extensión puede ser .pem o .ppk. La clave privada puede tener un nombre diferente del nombre de la clave pública, pero para facilitar su uso, utilice el mismo nombre.

PS C:\> (New-EC2KeyPair -KeyName "my-key-pair" -KeyType "rsa" -KeyFormat "pem").KeyMaterial | Out-File -Encoding ascii -FilePath C:\path\my-key-pair.pem

Crear un par de claves con AWS CloudFormation

Cuando crea un nuevo par de claves con AWS CloudFormation, la clave privada se guarda en un almacén de parámetros de AWS Systems Manager. El formato del nombre del parámetro es el siguiente:

/ec2/keypair/key_pair_id

Para obtener más información, consulte Almacén de parámetros de AWS Systems Manager en la Guía del usuario de AWS Systems Manager.

Para crear un par de claves con AWS CloudFormation
  1. Especifique el recurso AWS::EC2::KeyPair en su plantilla.

    Resources: NewKeyPair: Type: 'AWS::EC2::KeyPair' Properties: KeyName: new-key-pair
  2. Utilice el comando describe-key-pairs como se indica a continuación para obtener el ID del par de claves.

    aws ec2 describe-key-pairs --filters Name=key-name,Values=new-key-pair --query KeyPairs[*].KeyPairId --output text

    A continuación, se muestra un ejemplo del resultado.

    key-05abb699beEXAMPLE
  3. Utilice el comando get-parameter como se indica a continuación para obtener el parámetro de su clave y guardar el material de la clave en un archivo .pem.

    aws ssm get-parameter --name /ec2/keypair/key-05abb699beEXAMPLE --with-decryption --query Parameter.Value --output text > new-key-pair.pem
Permisos de IAM necesarios

Para que AWS CloudFormation pueda administrar los parámetros del Almacén de parámetros en su nombre, el rol de IAM asumido por AWS CloudFormation o su usuario tiene que tener los permisos siguientes:

  • ssm:PutParameter: otorga permiso para crear un parámetro para el material de clave privada.

  • ssm:DeleteParameter: concede permiso para eliminar el parámetro que almacenaba el material de la clave privada. Este permiso es necesario independientemente de si AWS CloudFormation creó o importó el par de claves.

Cuando AWS CloudFormation elimina un par de claves que la pila creó o importó, hace una comprobación de los permisos para determinar si tiene permiso para eliminar parámetros, aunque AWS CloudFormation crea un parámetro solo cuando crea un par de claves, no cuando importa un par de claves. AWS CloudFormation comprueba el permiso necesario mediante un nombre de parámetro inventado que no coincide con ningún parámetro de su cuenta. Por lo tanto, es posible que vea un nombre de parámetro inventado en el mensaje de error AccessDeniedException.

Crear un par de claves con una herramienta de terceros e importar la clave pública a Amazon EC2

En lugar de utilizar Amazon EC2 para crear el par de claves, puede crear un par de claves RSA con una herramienta de terceros, y luego importar la clave pública en Amazon EC2.

Requisitos para pares de claves
  • Tipos compatibles: RSA Amazon EC2 no acepta claves DSA.

    nota

    Las claves ED25519 no son compatibles con instancias de Windows.

  • Formatos admitidos:

    • Formato de claves públicas de OpenSSH

    • El formato del archivo de clave privada de SSH debe ser PEM o PPK

    • (Solo RSA) Formato DER codificado en Base64

    • (Solo RSA) Formato de archivo de claves públicas de SSH tal y como se especifica en RFC 4716

  • Las longitudes admitidas son 1024, 2048 y 4096.

Para crear su par de claves con una herramienta de terceros
  1. Genere un par de claves con la herramienta de terceros de su elección. Por ejemplo, puede usar ssh-keygen (una herramienta proporcionada con la instalación de OpenSSH estándar). Además, Java, Ruby, Python y otros muchos lenguajes de programación ofrecen bibliotecas estándar que puede utilizar para crear un par de claves RSA .

    importante

    La clave privada debe estar en formato PEM o PPK. Por ejemplo, use ssh-keygen -m PEM para generar la clave OpenSSH en el formato PEM.

  2. Guarde la clave pública en un archivo local. Por ejemplo, C:\keys\my-key-pair.pub. La extensión de este archivo no es importante.

  3. Guarde la clave privada en un archivo local con la extensión .pem o .ppk. Por ejemplo: C:\keys\my-key-pair.pem o C:\keys\my-key-pair.ppk. La extensión del nombre de este archivo es importante porque solo se pueden seleccionar archivos .pem al conectarse a la instancia de Windows desde la consola EC2.

    importante

    Guarde el archivo de clave privada en un lugar seguro. Deberá proporcionar el nombre de su clave pública al lanzar una instancia y la clave privada correspondiente cada vez que se conecte a dicha instancia.

Una vez creado el par de claves, use uno de los métodos siguientes para importar la clave pública a Amazon EC2.

Console
Para importar la clave pública a Amazon EC2
  1. Abra la consola de Amazon EC2 en https://console.aws.amazon.com/ec2/.

  2. En el panel de navegación, seleccione Key Pairs (Pares de claves).

  3. Elija Import key pair (Importar par de claves).

  4. En Name (Nombre), escriba un nombre descriptivo para la clave pública. El nombre puede incluir hasta 255 caracteres ASCII. No puede incluir espacios iniciales ni finales.

    nota

    Cuando se conecta a la instancia desde la consola EC2, dicha consola sugiere este nombre para el nombre del archivo de clave privada.

  5. Elija Browse (Examinar) para desplazarse hasta la clave pública y seleccionarla, o pegue el contenido de la clave pública en el campo Public key contents (Contenido de la clave pública).

  6. Elija Import key pair (Importar par de claves).

  7. Compruebe que la clave pública importada aparezca en la lista de pares de claves.

AWS CLI
Para importar la clave pública a Amazon EC2

Utilice el comando de la AWS CLI import-key-pair:

Para comprobar que el par de claves se importó correctamente

Utilice el comando de la AWS CLI describe-key-pairs:

PowerShell
Para importar la clave pública a Amazon EC2

Utilice el comando de la AWS Tools for Windows PowerShell Import-EC2KeyPair:

Para comprobar que el par de claves se importó correctamente

Utilice el comando de la AWS Tools for Windows PowerShell Get-EC2KeyPair: