Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Administración de claves
En esta sección, encontrará información sobre SSH las claves, incluyendo cómo generarlas y cómo girarlas. Para obtener más información sobre el uso de Transfer Family with AWS Lambda para administrar las claves, consulte la entrada del blog Habilitar la administración de claves de autoservicio del usuario con A AWS Transfer Family y AWS Lambda
nota
AWS Transfer Family acepta RSAECDSA, y ED25519 claves.
En esta sección también se explica cómo generar y administrar las claves de Pretty Good Privacy (PGP).
Temas
Algoritmos admitidos para las claves de usuario y del servidor
Los siguientes algoritmos clave son admitidos con los pares de claves de usuario y de servidor dentro de AWS Transfer Family.
nota
Para ver los algoritmos que se pueden usar con el PGP descifrado en los flujos de trabajo, consulte Algoritmos compatibles con los pares de PGP claves.
-
Para: ED25519
ssh-ed25519
-
ParaRSA:
-
rsa-sha2-256
-
rsa-sha2-512
-
-
ParaECDSA:
-
ecdsa-sha2-nistp256
-
ecdsa-sha2-nistp384
-
ecdsa-sha2-nistp521
-
nota
ssh-rsa
Respaldamos nuestras políticas de seguridad más antiguas. SHA1 Para obtener más información, consulte Algoritmos criptográficos.
Genere SSH claves para los usuarios gestionados por el servicio
Puede configurar su servidor para autenticar a los usuarios mediante el método de autenticación gestionada por el servicio, en el que los nombres de usuario y SSH las claves se almacenan en el servicio. La SSH clave pública del usuario se carga en el servidor como propiedad del usuario. El servidor utiliza esta clave como parte de un proceso de autenticación estándar basado en claves. Cada usuario puede tener varias SSH claves públicas archivadas en un servidor individual. Para conocer los límites en la cantidad de claves que se pueden almacenar por usuario, consulte los puntos de conexión y cuotas de AWS Transfer Family en Referencia general de Amazon Web Services.
Como alternativa al método de autenticación gestionado por el servicio, puede autenticar a los usuarios mediante un proveedor de identidad personalizado, o bien AWS Directory Service for Microsoft Active Directory. Para obtener más información, consulte Uso de proveedores de identidad personalizados o Uso del proveedor de identidad de AWS Directory Service.
Un servidor solo puede autenticar a los usuarios mediante un método (administrado por el servicio, servicio de directorio o proveedor de identidad personalizado), y ese método no se puede cambiar una vez creado el servidor.
Temas
Creación de SSH claves en macOS, Linux o Unix
En los sistemas operativos macOS, Linux o Unix, se utiliza el ssh-keygen
comando para crear una clave SSH pública y una clave SSH privada, también conocidas como key pair.
Para crear SSH claves en un sistema operativo macOS, Linux o Unix
-
En los sistemas operativos macOS, Linux o Unix, abra una terminal de comandos.
-
AWS Transfer Family acepta RSA claves con los ED25519 formatos ECDSA -, - y. Elija el comando apropiado en función del tipo de par de claves que esté generando.
nota
En los ejemplos siguientes, no especificamos una frase de contraseña: en este caso, la herramienta le pide que introduzca la frase de contraseña y, a continuación, que la repita para verificarla. La creación de una frase de contraseña ofrece una mejor protección para la clave privada y, también, podría mejorar la seguridad general del sistema. No puede recuperar la frase de contraseña: si la olvida, debe crear una clave nueva.
Sin embargo, si va a generar una clave de host de servidor, debe especificar una frase de contraseña vacía especificando la opción
-N ""
en el comando (o pulsandoEnter
dos veces cuando se le solicite), ya que los servidores de Transfer Family no pueden solicitar una contraseña al inicio.-
Para generar un key pair de RSA 4096 bits:
ssh-keygen -t rsa -b 4096 -f
key_name
-
Para generar un par de claves de ECDSA 521 bits (ECDSAtiene tamaños de bits de 256, 384 y 521):
ssh-keygen -t ecdsa -b 521 -f
key_name
-
Para generar un ED25519 key pair:
ssh-keygen -t ed25519 -f
key_name
nota
es el nombre del archivo del par de SSH claves.key_name
A continuación se muestra un ejemplo del resultado
ssh-keygen
.ssh-keygen -t rsa -b 4096 -f key_name Generating public/private rsa key pair. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in key_name. Your public key has been saved in key_name.pub. The key fingerprint is: SHA256:8tDDwPmanTFcEzjTwPGETVWOGW1nVz+gtCCE8hL7PrQ bob.amazon.com The key's randomart image is: +---[RSA 4096]----+ | . ....E | | . = ... | |. . . = ..o | | . o + oo = | | + = .S.= * | | . o o ..B + o | | .o.+.* . | | =o*+*. | | ..*o*+. | +----[SHA256]-----+
nota
Al ejecutar
ssh-keygen
como se ha mostrado, el comando crea las claves pública y privada como archivos en el directorio actual.El SSH key pair ya está listo para usarse. Siga los pasos 3 y 4 para almacenar la clave SSH pública para los usuarios gestionados por el servicio. Estos usuarios utilizan las claves cuando transfieren archivos en los puntos finales del servidor Transfer Family.
-
-
Desplácese hasta el archivo
y ábralo.key_name
.pub -
Copie el texto y péguelo en la clave SSH pública del usuario gestionado por el servicio.
-
Abra la AWS Transfer Family consola en y https://console.aws.amazon.com/transfer/
, a continuación, seleccione Servidores en el panel de navegación. -
En la página Servidores, seleccione el ID de servidor para el servidor que contiene el usuario que desea actualizar.
-
Seleccione el usuario para el que va a añadir una clave pública.
-
En el panel de claves SSH públicas, selecciona Añadir clave SSH pública.
-
Pegue el texto de la clave pública que ha generado en el cuadro de texto de clave SSH pública y, a continuación, seleccione Añadir clave.
La nueva clave aparece en el panel de claves SSH públicas.
-
Creación de SSH claves en Microsoft Windows
Windows usa un formato de SSH key pair ligeramente diferente. La clave pública debe tener el formato PUB
, mientras que la clave privada debe tener el formato PPK
. En Windows, puede usar P uTTYgen para crear un SSH key pair en los formatos adecuados. También puede usar P uTTYgen para convertir en un .ppk
archivo una clave privada generada mediantessh-keygen
.
nota
Si le SCP proporciona a Win un archivo de clave privada que no tiene ese .ppk
formato, ese cliente le ofrecerá convertir la clave a ese .ppk
formato por usted.
Para ver un tutorial sobre cómo crear SSH claves mediante P uTTYgen en Windows, visita el sitio web SSH .com
Convierte una clave SSH2 pública en PEM formato
AWS Transfer Family solo acepta claves públicas PEM formateadas. Si tiene una clave SSH2 pública, debe convertirla. Una clave SSH2 pública tiene el siguiente formato:
---- BEGIN SSH2 PUBLIC KEY ---- Comment: "rsa-key-20160402" AAAAB3NzaC1yc2EAAAABJQAAAgEAiL0jjDdFqK/kYThqKt7THrjABTPWvXmB3URI : : ---- END SSH2 PUBLIC KEY ----
Una clave PEM pública tiene el siguiente formato:
ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAA...
Ejecute el siguiente comando para convertir una clave pública SSH2 con formato en una clave pública PEM con formato. Reemplazar ssh2-key
con el nombre de tu clave, y SSH2 PEM-key
con el nombre de tu PEM llave.
ssh-keygen -i -f
ssh2-key
.pub >PEM-key
.pub
Gire SSH las teclas
Por motivos de seguridad, la mejor práctica es rotar las SSH llaves. Normalmente, la rotación se especifica como parte de una política de seguridad y se implementa con algún mecanismo automático. Según el nivel de seguridad, en el caso de una comunicación muy sensible, es posible que un SSH key pair solo se utilice una vez. Esto elimina cualquier riesgo derivado del almacenamiento de las claves. Sin embargo, es mucho más común almacenar SSH las credenciales durante un período de tiempo y establecer un intervalo que no suponga una carga excesiva para los usuarios. Un intervalo de tres meses es habitual.
Se utilizan dos métodos para realizar la rotación de SSH claves:
-
En la consola, puede cargar una clave SSH pública nueva y eliminar una clave SSH pública existente.
-
Con ellaAPI, puede actualizar los usuarios existentes DeleteSshPublicKeyAPIpara eliminar la clave pública de Secure Shell (SSH) de un usuario y ImportSshPublicKeyAPIañadir una nueva clave pública de Secure Shell (SSH) a la cuenta del usuario.
Genera y gestiona PGP las claves
Puede utilizar el descifrado de Pretty Good Privacy (PGP) con los archivos que Transfer Family procesa con los flujos de trabajo. Para utilizar el descifrado en un paso del flujo de trabajo, debe proporcionar una PGP clave.
El blog sobre AWS almacenamiento tiene una entrada que describe cómo cifrar y descifrar archivos, cifrar y descifrar archivos con y
Generar claves PGP
El método que utilices para generar PGP las claves depende del sistema operativo y de la versión del software de generación de claves que utilices.
Si utiliza Linux o Unix, utilice el instalador de paquetes para realizar la instalación de gpg
. Dependiendo de su distribución de Linux, uno de los siguientes comandos debería funcionar para usted.
sudo yum install gnupg
sudo apt-get install gnupg
Para Windows o macOS, puede descargar lo que necesite desde https://gnupg.org/download/
Tras instalar el software generador de PGP claves, ejecute el gpg --gen-key
comando gpg
--full-gen-key
o para generar un par de claves.
nota
Si utiliza la versión 2.3.0 o posterior de GnuPG
, debe ejecutar gpg --full-gen-key
. Cuando se le pida el tipo de clave que desea crear, elija RSA oECC. Sin embargo, si lo deseaECC, asegúrese de elegir una de las dos NIST o BrainPool para la curva elíptica. No elija Curve 25519.
Algoritmos compatibles con los pares de PGP claves
Los pares de PGP claves admiten los siguientes algoritmos:
-
RSA
-
ElGamal
-
ECC:
-
NIST
-
BrainPool
-
nota
No se admiten claves Curve25519.
Subcomandos de gpg
útiles
Los siguientes son algunos subcomandos útiles para gpg
:
-
gpg --help
: este comando muestra las opciones disponibles y puede incluir algunos ejemplos. -
gpg --list-keys
: este comando muestra los detalles de todos los pares de claves que ha creado. -
gpg --fingerprint
: este comando muestra los detalles de todos los pares de claves, incluida la huella digital de cada clave. -
gpg --export -a
: este comando exporta la parte de la clave pública de la clave parauser-name
que se utilizó cuando se generó la clave.user-name
Administra PGP las claves
Para administrar sus PGP claves, debe usar AWS Secrets Manager.
nota
Su nombre secreto incluye su ID de servidor de Transfer Family. Esto significa que ya debe haber identificado o creado un servidor antes de poder almacenar su información PGP clave AWS Secrets Manager.
Si quieres usar una clave y una frase de contraseña para todos tus usuarios, puedes almacenar la información del bloque de PGP claves bajo el nombre secretoaws/transfer/
, que server-id
/@pgp-default
es el ID de tu servidor Transfer Family. Esta clave predeterminada se usa si no hay ninguna clave en la que server-id
coincida con el usuario que está ejecutando el flujo de trabajo. user-name
Si lo prefiere, puede crear una clave para un usuario específico. En este caso, el formato del nombre secreto es aws/transfer/
, en el cual server-id
/user-name
coincide con el usuario que ejecuta el flujo de trabajo para un servidor de Transfer Family.user-name
nota
Puedes almacenar un máximo de 3 claves PGP privadas por servidor Transfer Family y por usuario.
Para configurar PGP las claves para su uso con el descifrado
-
Según la versión GPG que utilice, ejecute uno de los siguientes comandos para generar un PGP key pair que no utilice un algoritmo de cifrado Curve 25519.
-
Si utiliza la versión 2.3.0 de
GnuPG
o posterior, ejecute el siguiente comando:gpg --full-gen-key
Puede elegir
RSA
o, si eligeECC
, puede elegirNIST
oBrainPool
para la curva elíptica. Si,gpg --gen-key
en su lugar, ejecuta, crea un par de claves que utilice el algoritmo de cifrado ECC Curve 25519, que actualmente no admitimos para PGP las claves. -
Para las versiones
GnuPG
anteriores a la 2.3.0, puedes usar el siguiente comando, ya que RSA es el tipo de cifrado predeterminado.gpg --gen-key
importante
Durante el proceso de generación de claves, debe proporcionar una frase de contraseña y una dirección de correo electrónico. Asegúrese de tomar nota de estos valores. Debe proporcionar la frase de contraseña cuando introduzca los detalles de la clave en AWS Secrets Manager más adelante en este procedimiento. Además, debe proporcionar la misma dirección de correo electrónico para exportar la clave privada en el siguiente paso.
-
-
Ejecute el siguiente comando para exportar la clave privada. Para usar este comando, reemplace
por el nombre del archivo en el que se va a guardar el bloque de clave privada, y reemplaceprivate.pgp
por la dirección de correo electrónico que utilizó al generar el par de claves.marymajor@example.com
gpg --output
private.pgp
--armor --export-secret-keymarymajor@example.com
-
Se usa AWS Secrets Manager para almacenar la PGP clave.
-
Inicie sesión en AWS Management Console y abra la AWS Secrets Manager consola en https://console.aws.amazon.com/secretsmanager/
. -
En el panel de navegación izquierdo, seleccione Secretos.
-
En la página Secretos, seleccione Almacenar un nuevo secreto.
-
En la página Seleccionar tipo de secreto, en Tipo de secreto, seleccione Otro tipo de secreto.
-
En la sección de Pares clave-valor, seleccione la pestaña Clave/valor.
-
Clave: introduzca
PGPPrivateKey
.nota
Debe introducir la cadena
PGPPrivateKey
con precisión: no añada espacios antes o entre los caracteres. -
valor: pegue el texto de su clave privada en el campo valor. Puede encontrar el texto de la clave privada en el archivo (por ejemplo,
private.pgp
) que especificó al exportar la clave al principio de este procedimiento. La clave comienza con-----BEGIN PGP PRIVATE KEY BLOCK-----
y termina con-----END PGP PRIVATE KEY BLOCK-----
.nota
Asegúrese de que el bloque de texto contenga solo la clave privada y que no contenga también la clave pública.
-
-
Seleccione Agregar fila y en la sección Pares clave/valor, seleccione la pestaña Clave/valor.
-
Clave: introduzca
PGPPassphrase
.nota
Debe introducir la cadena
PGPPassphrase
con precisión: no añada espacios antes o entre los caracteres. -
valor: introduce la contraseña que utilizaste al generar el key pairPGP.
nota
Puede agregar hasta 3 conjuntos de claves y frases de contraseña. Para añadir un segundo conjunto, añada dos filas nuevas, introduzca
PGPPrivateKey2
yPGPPassphrase2
para las claves, y pegue otra clave privada y frase de contraseña. Para añadir un tercer conjunto, los valores de la clave deben serPGPPrivateKey3
yPGPPassphrase3
. -
-
Seleccione Siguiente.
-
En la página Configurar secreto, introduzca un nombre y una descripción para el secreto.
-
Si va a crear una clave predeterminada, es decir, una clave que pueda utilizar cualquier usuario de Transfer Family, introduzca
aws/transfer/
. Reemplaceserver-id
/@pgp-default
por el ID del servidor que contiene el flujo de trabajo que tiene un paso de descifrado.server-id
-
Si va a crear una clave para que la utilice un usuario específico de Transfer Family, introduzca
aws/transfer/
. Reemplaceserver-id
/user-name
por el ID del servidor que contiene el flujo de trabajo que tiene un paso de descifrado y reemplaceserver-id
por el nombre del usuario que ejecuta el flujo de trabajo.user-name
se almacena en el proveedor de identidad que utiliza el servidor de Transfer Family.user-name
-
-
Seleccione Siguiente y acepte los valores predeterminados de la página Configurar rotación. A continuación, seleccione Siguiente.
-
En la página de Revisión, elija Guardar para crear y almacenar el secreto.
-
La siguiente captura de pantalla muestra los detalles del usuario marymajor
para un servidor de Transfer Family específico. En este ejemplo, se muestran tres claves y sus frases de contraseñas correspondientes.
Clientes compatibles PGP
Los siguientes clientes se han probado con Transfer Family y se pueden utilizar para generar PGP claves y cifrar los archivos que desee descifrar con un flujo de trabajo.
-
Gpg4win + Kleopatra.
nota
Cuando seleccione Firmar/cifrar archivos, asegúrese de borrar la selección de Firmar como: actualmente no se admite la firma de archivos cifrados.
-
Versiones principales de GnuPG: 2.4, 2.3, 2.2, 2.0 y 1.4.
Tenga en cuenta que otros PGP clientes también podrían funcionar, pero solo los clientes mencionados aquí han sido probados con Transfer Family.