El siguiente comando genera un archivo que contiene tanto la clave pública como la privada:
openssl genrsa -des3 -out privkey.pem 2048
Fuente: aquí
Con OpenSSL, la clave privada también contiene la información de la clave pública, por lo que no es necesario generar una clave pública por separado.
¿Cómo podemos extraer la clave pública del archivo privkey.pem?
Gracias.
Respuestas:
Que escribe la clave pública para
key.pub
fuente
-out
por ejemplo: enopenssl rsa -in privkey.pem -pubout -out key.pub
lugar de redirigir stdout a un archivo.Sin embargo, la técnica anterior funciona para el caso general, no funcionó en archivos PEM de Amazon Web Services (AWS).
Encontré en los documentos de AWS el siguiente comando funciona:
ssh-keygen -y
http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
editar Gracias @makenova por la línea completa:
fuente
ssh-keygen -y -f key.pem > key.pub
ssh-keygen -y -f key.pem
key.pem
, lo que podría evitar que inicie sesión en instancias que requieran esa clave!ssh -i
, asegúrate de estar enlazando a tu clave privada allí, no a la públicaPara aquellos interesados en los detalles, pueden ver qué hay dentro del archivo de clave pública (generado como se explicó anteriormente), haciendo esto: -
o para el archivo de clave privada, esto: -
que genera como texto en la consola los componentes reales de la clave (módulo, exponentes, primos, ...)
fuente
Si busca cómo copiar un
.pem
par de claves de Amazon AWS en una región diferente, haga lo siguiente:Luego
fuente
openssl
se intercala en los encabezados PEM, que deberá eliminar antes de que la AWS CLI acepte la clave.Para AWS que importa una clave pública existente,
Exportar desde el .pem haciendo esto ... (en linux)
Esto producirá un archivo que si abre en un editor de texto con un aspecto como este ...
Sin embargo, AWS NO aceptará este archivo.
Tienes que quitar el
-----BEGIN PUBLIC KEY-----
y-----END PUBLIC KEY-----
del archivo. Guárdelo e importe y debería funcionar en AWS.fuente
ssh-rsa AAAAB3NzaC1y....
ejecutar:ssh-keygen -f PublicKey.pub -i -mPKCS8