Depois de passar dois meses indo e voltando com o suporte do Salesforce, finalmente descobri que, para fazer upload de uma chave SSH no Key Management, você precisa usar PuTTYgen, não ssh-keygen
(no Mac).
Alguém pode me explicar como posso ssh-keygen
gerar o mesmo tipo de chave RSA privada que o PuTTY?
Aqui está um exemplo de chave que PuTTYgen criou (e que o Salesforce Marketing Cloud aceitará com prazer):
-----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-----
E aqui está a chave que ssh-keygen -t rsa -b 2048
está me 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-----
A observação rápida diz que os títulos BEGIN RSA
e BEGIN OPENSSH
são diferentes. Parece também que o PuTTY quebra a linha em 65 caracteres e ssh-keygen
quebra a linha em 71 caracteres.
As instruções exatas que usei para criar a chave no PuttyGen são as seguintes:
- DownloadPuTTYgen
- CliqueGerare mova o mouse para criar aleatoriedade
- Depois que a chave for gerada, nãoSalvar chave privada, mas vá para oConversõesmenu e cliqueExportar chave OpenSSH
- Deixe a senha em branco e salve como*.ppkarquivo
- Faça upload para o gerenciamento de chaves no Marketing Cloud.
Alguém conhece um truque para fazer isso ssh-keygen
(para não precisar continuar pegando emprestada uma máquina Windows)?
Responder1
As versões mais recentes do OpenSSH ssh-keygen
(7.8 e mais recentes) geram chaves em um novo formato ( BEGIN OPENSSH PRIVATE KEY
).
Seu software (Salesforce Marketing Cloud) parece não suportar esse formato.
Usar-m PEM
bandeira, para fazer new ssh-keygen
gerar as chaves no formato antigo (como BEGIN RSA PRIVATE KEY
):
ssh-keygen -m PEM -t rsa -b 2048
Você também pode ssh-keygen
converter sua chave existente no novo formato para o formato antigo, "abusando" do-p
trocar:
ssh-keygen -p -f file -m PEM -P passphrase -N passphrase
(se a chave não estiver criptografada com uma senha, use ""
em vez de passphrase
)
PuTTYgen também pode gerar ambos os formatos. Mas, a menos que você use o comando com"(forçar novo formato de arquivo)"ou, a menos que você gere a chave Ed25519 (não suportada pelo formato antigo), o padrão é o formato antigo. Esse também foi ocomportamento de ssh-keygen
6,5–7,7.
Aliás, há também umlinha de comando Linuxputtygen
.