[Rundeck] CentOS8 accepteert geen OpenSSH keys

De ssh-keys gegenereerd met ssh-keygen wordt standaard aangemaakt in het OpenSSH formaat. Dit zie je terug aan de eerste en laatste regel in het certificaat:

-----BEGIN OPENSSH PRIVATE KEY-----
...
-----END OPENSSH PRIVATE KEY-----

Voor ssh-sessies naar andere hosts is dit prima, maar Rundeck (versie 3.3.4) geeft een foutmelding bij connecties naar andere hosts.

De oorzaak ligt in het feit dat het OpenSSH-formaat niet werkt en er een RSA_formaat wordt verwacht. Met het volgende commando kun je een bestaand OpenSSH formaat key omzetten naar een RSA-formaat:

$ ssh-keygen -p -m PEM -f id_rsa

De -p optie geeft de optie om een nieuw bestand te maken, de -m optie geeft aan dat dit dan in het PEM-formaat (RSA) dient te zijn, de -f is de ‘oude’ OpenSSH key.

De eerste en laatste regels geven weer dat het formaat nu RSA is:

-----BEGIN RSA PRIVATE KEY-----
...
-----END RSA PRIVATE KEY-----

Rundeck zal deze RSA-key nu wel kunnen gebruiken en de connecties komen tot stand.