Possível duplicata:
Como converter a chave .ppk em chave OpenSSH *no Linux*?
(unix, aqui: Ubuntu 10.4)
Eu sei como criar pares de chaves ssh no unix (ssh-keygen) e como fazê-lo no windows (puttygen). a parte que falta no meu caso seria como usar um par de chaves, gerado no windows (puttygen), em um shell unix.
onde preciso colocar a chave pública, neste caso específico, para usá-la como chave ssh no git.
Responder1
Dependendo de qual chave você precisa...
Chave privada – para fazer logindeum sistema Unix em outro Unix
Você deve primeiro converter a chave, usando PuTTYgen, do formato PuTTY para um que o OpenSSH possa usar.
Na versão Windows do PuTTYgen, use oConversões → Exportar chave OpenSSHitem do menu;
na versão Linux,
puttygen mykey.ppk -O private-openssh -o mykey
.
Somente chave pública – para fazer login no WindowsparaUnix
Veja a resposta de Daniel.
Responder2
A janela do Puttygen contém uma área de texto com a chave pública no formato esperado pelo SSH.
Copie-o e adicione-o ao arquivo ~/.ssh/authorized_keys
no servidor em sua própria linha separada. Certifique-se de que o arquivo e o diretório não sejam legíveis/graváveis por grupo e outros, ou seja, run chmod go-rwx ~/.ssh ~/.ssh/authorized_keys
.
Então o servidor aceitará seu login usando a chave privada para autenticação.
Responder3
Ok, acho que não fui muito claro, mas encontrei a solução:
- iniciar o puttygen
- carregar chave privada
- Conversões de menu|Exportar chave OpenSSH
- Salve em algum lugar, abra, copie o conteúdo para a área de transferência, cole no linux no arquivo: $HOME/.ssh/id_dsa
- (opcionalmente) copie o conteúdo da área de texto "Chave pública para colar no arquivo OpenSSHauthorized_keys", cole no linux no arquivo: $HOME/.ssh/id_dsa.pub
agora você pode usar esta chave SSH de um shell para fazer login em sistemas remotos.
observação lateral: para usar perfeitamente o git do windows putty em um shell do linux para conectar-se ao git, defina estas opções na sessão do putty:
(e você deve colocar a chave pública em ~/.ssh/authorized_keys, claro..)