When I try to create an SSH key using
sudo ssh-keygen -t rsa
I get the request:Enter file in which to save the key (/root/.ssh/id_rsa):
Ao usar sudo
, você pede para executar o programa em outra conta , especificamente o root. Assim, o keygen será executado como root, criará uma chave que pertence ao root e, claro, usará o diretório inicial do root para armazenar essa chave.
Para criar arquivos que pertençam a você (e para usar seus próprios caminhos, etc.), simplesmente não use sudo
.
E se não usar sudo
levar a erros estranhos de permissão, investigue e corrija melhor esses - eles não se corrigirão silenciosamente se você apenas sudo
a coisa toda; muitas vezes isso só vai piorar.
when I remove sudo I get this problem:
Generating public/private rsa key pair. Enter file in which to save the key (/home/hduser/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Saving key "/home/hduser/.ssh/id_rsa" failed: Not a directory
But shouldn't SSH create the directory?
Deveria. Mas o que a mensagem de erro realmente significa é que /home/hduser/.ssh
já existe - é apenas algo diferente de um diretório. Pode ser um arquivo, um link simbólico quebrado, um link simbólico para um arquivo, etc. p>
Novamente: investigue a situação. Para ver o que é .ssh
, execute ls -ld
nele. Se necessário, renomeie o arquivo / link / item ou exclua-o completamente.