Generación de claves SSH de Marketing Cloud: inconsistencia entre PuTTY y ssh-keygen

Generación de claves SSH de Marketing Cloud: inconsistencia entre PuTTY y ssh-keygen

Después de pasar dos meses yendo y viniendo con el soporte de Salesforce, finalmente descubrí que para cargar una clave SSH en Administración de claves, debes usar PuTTYgen, no ssh-keygen(en Mac).

¿Alguien puede explicarme cómo puedo ssh-keygengenerar el mismo tipo de clave RSA privada que PuTTY?

Aquí hay una clave de ejemplo que PuTTYgen creó (y que Salesforce Marketing Cloud aceptará felizmente):

-----BEGIN RSA PRIVATE KEY-----
MIIEoQIBAAKCAQEAj+derXf2g3PmS2+H+UCuPBt3YV29BUdFICznAcZUJxoMbf2q
670zwpIqoMt2+KnJxWMbs+miYpAjUJBwgr3HuFa2XrrDUJISDffXRpucOSArqSdz
6k6PyKKgZCqx1Cp7BdDsMB6NwJURfS/iqgcVUTpU0Q3kclySWgvspkaW5JwGM513
Bzt6ECZXYjbPC/3w0/kS8COBQFdOMVDhEvHoMoK6yHCnBTC+bRVemqV3WHDMYNbX
4Gg5Z7hjsXtrEgMMYtOlQrF/mZkEdcFVKpqujavl26mwyMG06FRZUQYvPmmcgGhy
J5PuwH2MJjo63vEflAf0MKBprJXSySmmTD0QqwIBJQKCAQBRrNTe/uXb59W8HLT1
QGLj2DzWZaKiIYgZLj3sQCHsrethBZhcSMpZrOfDC7I6Gy1UWthfMZOEDJ5r/vO/
038xRfjN+0xCfGscr0LVDDYSlbfqYoAPXQV/tj9bci2UGBxPaL1na0mI+qkPs2T4
t+mBIRth5UpOvutH3UEgGjn3XpoXggnos352fnklPrglwAmYnmaurzULUA8MeRDt
C00/b8ErmLVOdcJcccCdGsTkU0KBXZPtaw1sVNBF7hASoQuoNpmqOFOo9KfZzro+
ivAXCpmCQSJ3T3qMACIVVg4UxprpgROh6kfiHzIwLZtFEhVH/mQn726WZfbRoxbm
m20tAoGBAO6VYMtUEPaZ54EHAKKPovZLMzHgq3OX9vJN3d0z49zPxbTrtAY6cMVw
gQV2miYs3y46mdiC5gO/Q2paEBpM4JMXgPG8hWjXj0c4KyE4IE3eDJ69+sZsqEeS
ugejb49HOPsvNGvyyMfj6iTA5H2dItCJ8G529/OBx2MKiEU1PSnBAoGBAJpooLKf
Q5h0tVY+KTEtpxpjfgeSjH9v335TkYSGjGrmx1wuZm2Jp1ll5E7qq2P6zij5Kmhy
Drx734piTfd/vZWEeJiXNo+MKerWNijBPHCHBoHKeRtZH63MpkZjbLfq90c74uOd
nBXspZUQcxlmlhEpuNVCiLNSlLCuyyyM4d1rAoGBAKE0f6v6iACRgL725MDdl59+
6z1gc9h7b4Ef2xjrtaMI7V6Ra8zbYPQblXJk5LICpKKx+T9DsCwLnEDwvsWpkNIW
zL8C1q6ffHw6tVuidrEnVKKcCk64HqzmmV8bZw3IVu7oizQua/yuwMy5ryRxF4X8
Vlh55c4LlI8HHc3ls7RtAoGALefBEoJgND5fbKqyTOQPFa7gR3DB/F+HohjYPCgA
O3UK1jdO4kuEx4z+r62M5l9SDC5mjcELTMrhl9gJV2sqhmWnT/WamWEFiwFqDB3F
3EPRgIhNhKvLJdUO1qfv46a4N8WyJ/5srJJ2apYwDnhxzcBLtQXxShGh06mWWVpQ
/KMCgYAauXmOmtv+nq+wZD8Iz8cEZVB4T7Hq0+2rdLuHRZK8NiqEK+TJWqSh3ASU
QplcsWdhI6lyAj52A9mHzl3KMwXpdJaQzsb1Qy6hsNrjp80OpUwdFn47HR7nM2de
+dTldYpwQ+mF98P3INN0VeNBj2Zon+/1NAjDxEMDur1tEn/EGw==
-----END RSA PRIVATE KEY-----

Y aquí está la clave que ssh-keygen -t rsa -b 2048me está dando:

-----BEGIN OPENSSH PRIVATE KEY-----
b3BlbnNzaC1rZXktdjEAAAAABG5vbmUAAAAEbm9uZQAAAAAAAAABAAABFwAAAAdzc2gtcn
NhAAAAAwEAAQAAAQEA4EEMDSLlscX+/ZMwE/+VNuNYyWPMOks1uW/76zRyYmEmYNPh+WC6
m+/TtisPrsHqmw8WxyGSsp/zDwQ8NBLIbuXOmwQYSwVeveqhcowY/thpqKJ5kmp06gCIH6
rCh8b5+rf8i53UsLrPK1RwDoTWAK6Pn4F74OIMUJbY8pRmRlgJ/iENTkzXHBVVtVq5yltP
aG3CuVB56TRV8O//KMEvaEum45okj9PuMTn4okCYr7k/BUIrGYgl2GHsb7CTLP1LOjSV6q
XhhiTAJvEriGsivSH9wTBkmRXZtwJMCn8i5SfaDRyQ/cjIFKGgXJQv6pXKXWBk0R0YsN7q
xCC03lBMoQAAA9BccOaWXHDmlgAAAAdzc2gtcnNhAAABAQDgQQwNIuWxxf79kzAT/5U241
jJY8w6SzW5b/vrNHJiYSZg0+H5YLqb79O2Kw+uweqbDxbHIZKyn/MPBDw0Eshu5c6bBBhL
BV696qFyjBj+2GmoonmSanTqAIgfqsKHxvn6t/yLndSwus8rVHAOhNYAro+fgXvg4gxQlt
jylGZGWAn+IQ1OTNccFVW1WrnKW09obcK5UHnpNFXw7/8owS9oS6bjmiSP0+4xOfiiQJiv
uT8FQisZiCXYYexvsJMs/Us6NJXqpeGGJMAm8SuIayK9If3BMGSZFdm3AkwKfyLlJ9oNHJ
D9yMgUoaBclC/qlcpdYGTRHRiw3urEILTeUEyhAAAAAwEAAQAAAQA5TgXxWWiOvATD8ZfI
lHgh1Yi7tcfbYZqx7z7VxMox/5daCOrm2eP1sxxLocdZJe54fyuX6SlegecPgEqOF/ql9A
2OqUY37YBfUZS9+7TrcovVbudYFeIYZdhjFzSsk5kPi3J6jvNp0eLctLAJ1cIF3JWQ8fqg
5cK12UZI/sj/0kbY5kXaW9Y/Qn+PQotlsgvwT9/LPGQltvTr4WbVTfKCCszhAghcHpEPro
DXQ2FthgVW+hM4xKicGMAhXuVGt1nz/j349SyPuW0qM4czCqvFIIYeZ8t2SOyOM7SPfpxT
LHHURf47n2oYlaUUASPnOqXQZhiISPStm+ZDyYP9fPMtAAAAgQDHUkYmhD4mEDk+Nnp4iM
BwHb08wC2wDij3Fj2bSVUFoOgGz7OcQ722BsDdPKDNqNn6kCv2+B4BGL94UyEFWKTlcRuy
/e/rSQuwA6sMaQDPEN/W8dzWQiepxZxzGm2yTDcZCgpVUcLxbwNURGiHmzaOgn1NB8cT/I
LiE+C6VefXHQAAAIEA/hVGc5lkVy8299TiNnL4i6+hYf/CLHeTaMaHNU7AoDxjLUxdmiO4
/txqBBeDUeoG1dq/jCIYM2pRocBYXJON0bRPkqgZRX4l+BFtGd7RSjfXeVYLM8UFZrjMNJ
rOf9ESdbOlsRPmzDwDBkFNhoIBW4SzN++L95oM8iJ6d9GCBxcAAACBAOHyKVQo2Com+c70
FN3k0sXjFUq9zXmau2CYW+A8OFtxWWGEiuxf7FL6oTOh1WcqWbi/JegJnVOIShnjn5crQe
FzDxDghA53V0qDOwJxo8T84wKEN1ZudykRAm1rNV7zW+xLhqR0qEg/SVMjNM8JrIYI96LT
FVNvA3COspvHf50HAAAAGGphbWVzYUBzdXFsZC1sMDEwOC5sb2NhbAEC
-----END OPENSSH PRIVATE KEY-----

Una observación rápida dice que los títulos BEGIN RSAy BEGIN OPENSSHson diferentes. También parece que PuTTY hace sus saltos de línea en 65 caracteres y ssh-keygenrompe la línea en 71 caracteres.

Las instrucciones exactas que utilicé para crear la clave en PuttyGen son las siguientes:

  1. DescargarPuTTYgen
  2. Hacer clicGenerary mueve el ratón para crear aleatoriedad
  3. Una vez generada la clave, noGuardar clave privada, pero ve alConversionesmenú y haga clicExportar clave OpenSSH
  4. Deje el código de acceso en blanco y guárdelo como*.ppkarchivo
  5. Subir a Gestión de claves en Marketing Cloud.

¿Alguien sabe algún truco para hacer esto ssh-keygen(para no tener que seguir pidiendo prestada una máquina con Windows)?

Respuesta1

Las últimas versiones de OpenSSH ssh-keygen(7.8 y posteriores) generan claves en un nuevo formato ( BEGIN OPENSSH PRIVATE KEY).

Su software (Salesforce Marketing Cloud) no parece admitir ese formato.

Usar-m PEMbandera, para hacer nuevas, ssh-keygengenere las claves en el formato anterior (como BEGIN RSA PRIVATE KEY):

ssh-keygen -m PEM -t rsa -b 2048

También puede utilizar ssh-keygenpara convertir su clave existente en el nuevo formato al formato antiguo "abusando" del-pcambiar:

ssh-keygen -p -f file -m PEM -P passphrase -N passphrase

(si la clave no está cifrada con una frase de contraseña, utilícela ""en lugar de passphrase)


PuTTYgen también puede generar ambos formatos. Pero, a menos que uses el comando con"(forzar nuevo formato de archivo)"o, a menos que genere la clave Ed25519 (no compatible con el formato anterior), el formato predeterminado será el anterior. Ese fue también elcomportamiento de ssh-keygenen 6.5–7.7.

Por cierto, también hay unlínea de comandos Linuxputtygen.

información relacionada