Convertendo uma chave privada OpenSSL para uma chave pública/privada do OpenSSH
Dica publicada em Linux / Segurança
Convertendo uma chave privada OpenSSL para uma chave pública/privada do OpenSSH
Essa dica demostra como converter uma chave privada OpenSSL para uma chave pública/privada do OpenSSH.
Isso é muito útil para aplicações e/ou usuários que tenham um certificado válido SSL e desejam se conectar via SSH utilizando-se chaves para autenticação. Então o usuário criará a sua chave privada e certificado com o OpenSSL e a partir dele criará sua chave pública/privada para o OpenSSH.
Para facilitar, nessa dica a chave privada SSL terá o nome de "usuario_key.pem".
A conversão é muito simples, basta seguir os passos abaixo:
1 - Copiar a chave privada do SSL para o diretório ~/.ssh/:
cp usuario_key.pem ~/.ssh/id_ssl
$ chmod 600 ~/.ssh/id_ssl
2 - Extrair a chave pública do SSH a partir da chave privada do SSL utilizando o comando ssh-keygen:
ssh-keygen -y -f ~/.ssh/id_ssl > ~/.ssh/id_ssl.pub
$ chmod 600 ~/.ssh/id_ssl.pub
3 - Adicionar a chave pública no arquivo authorized_keys:
cat ~/.ssh/id_ssl.pub >> ~/.ssh/authorized_keys
4 - Realizar o teste de conexão:
ssh -i ~/.ssh/id_ssl localhost
Isso é muito útil para aplicações e/ou usuários que tenham um certificado válido SSL e desejam se conectar via SSH utilizando-se chaves para autenticação. Então o usuário criará a sua chave privada e certificado com o OpenSSL e a partir dele criará sua chave pública/privada para o OpenSSH.
Para facilitar, nessa dica a chave privada SSL terá o nome de "usuario_key.pem".
A conversão é muito simples, basta seguir os passos abaixo:
1 - Copiar a chave privada do SSL para o diretório ~/.ssh/:
cp usuario_key.pem ~/.ssh/id_ssl
$ chmod 600 ~/.ssh/id_ssl
2 - Extrair a chave pública do SSH a partir da chave privada do SSL utilizando o comando ssh-keygen:
ssh-keygen -y -f ~/.ssh/id_ssl > ~/.ssh/id_ssl.pub
$ chmod 600 ~/.ssh/id_ssl.pub
3 - Adicionar a chave pública no arquivo authorized_keys:
cat ~/.ssh/id_ssl.pub >> ~/.ssh/authorized_keys
4 - Realizar o teste de conexão:
ssh -i ~/.ssh/id_ssl localhost