Crie uma chave ssh:
Comando:
ssh-keygen -t rsa –P ""
Movendo a chave para a chave autorizada:
Comando:
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
Crie uma chave ssh:
Comando:
ssh-keygen -t rsa –P ""
Movendo a chave para a chave autorizada:
Comando:
cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
Respostas:
Você precisa criar o .ssh
diretório e o authorized_keys
arquivo pela primeira vez.
Crie o .ssh
diretório:
mkdir ~/.ssh
Defina as permissões corretas:
chmod 700 ~/.ssh
Crie o authorized_keys
arquivo:
touch ~/.ssh/authorized_keys
Defina as permissões corretas:
chmod 600 ~/.ssh/authorized_keys
As permissões são importantes! Não funcionará sem as permissões corretas!
Agora você pode adicionar a chave pública ao authorized_keys
arquivo:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
Você precisa adicionar a chave pública do seu computador ao authorized_keys
arquivo do computador que deseja acessar usando as Chaves SSH !
Como o Terdon mencionou, você também pode usar este comando:
ssh-copy-id user@host
Isso colocará seu id_rsa.pub
(no seu ~/.ssh
diretório) no authorized_keys
arquivo do computador remoto , criando o .ssh
diretório e o authorized_keys
arquivo com as permissões corretas, se necessário.
cat
isso, ssh-copy-id
é para isso.
Caso você tenha recebido a chave pública em um email para instalar em um servidor remoto:
1) SSH no servidor. Eu usei o PuTTY no Windows.
2) Configure a chave:
mkdir ~/.ssh
chmod 700 ~/.ssh
vi ~/.ssh/authorized_keys
Tome cuidado para copiar a chave exatamente e colá-la em uma nova linha na janela do editor. Verifique se ele ocupa uma única linha e salve.
chmod 600 ~/.ssh/authorized_keys
Como não tenho reputação suficiente, estou adicionando isso aqui. Além da resposta de Louis Matthijssen, se você ainda não conseguir fazer login através do ssh como um usuário que você criou, como
ssh username@host
isso pode ser devido à ausência de permissão do proprietário que você deve adicionar à sua pasta /home/username/.ssh. Eu tive o mesmo problema e você pode dar essa permissão como:
chown -R username:username /home/username/.ssh
Provavelmente, isso pode acontecer simplesmente porque você estava criando o diretório e definindo as permissões como raiz , mas não como o nome de usuário com o qual deseja acessar o servidor.
Espero que isso ajude alguém.
Isso também pode falhar se, ao criar a chave ssh-keygen
, você der um nome de arquivo a ela. Digitei um nome my-ssh-file-name
e ele escreveu a chave em /Users/MyUserName
vez da .ssh
pasta. Se você deixar o nome do arquivo em branco, ele gravará .ssh
conforme o esperado.
~/.ssh/authorized_keys
são chaves de outros computadores aos quais você se conectou / confia, e não sua própria chave.