Quero gerar uma chave pública-privada no Sever 1 e armazená-la em um local que não seja o local padrão.
Depois disso, salve a chave pública no Servidor 2; mais uma vez NÃO no local padrão.
Em seguida, torne essa chave uma chave autorizada.
No entanto, não consigo encontrar o authorized_keys
arquivo na ~/.ssh
pasta. Como faço para autorizá-lo?
Respostas:
ssh-keygen -f filename
.scp filename username@server:filename-on-server
cat filename-on-server >> ~/.ssh/authorized_keys
Você também pode substituir as etapas 2 e 3 por
ssh-copy-id -i filename username@server
.fonte
Use o
ssh-keygen
comando No servidor (onde você deseja que o ssh) armazene a chave pública no arquivo~/.ssh/authorized_keys
. Se você ainda não possui um diretório .ssh em sua casa (~), crie-o (também tenha cuidado: parece que o sshd é exigente - por motivos de segurança - que nenhum outro usuário pode ler esse arquivo / diretório, é melhor emitir chmod 700 no diretório .ssh e chmod 600 no arquivo).Na máquina da qual você deseja ssh ("cliente"), você pode usar a chave privada para ssh no seu servidor. Você pode armazená-lo em qualquer lugar e usar a
-i
opção ssh, para fornecer a chave pública que será usada. Eu escrevo isso, já que você afirmou que "não está armazenando no local padrão". O local padrão seriafile id_dsa
(para a chave DSA) dentro do diretório .ssh. Então você não precisa da-i
opção para especificar sua chave, porque ela será selecionada automaticamente.fonte
Parece que você já fez as chaves. Caso contrário, basta executar o ssh-keygen e aceitar os padrões. Faça o arquivo allowed_keys você mesmo:
touch authorized_keys
Ao manter suas chaves particulares em um local não padrão, certifique-se de usar -i:
ssh -i /path/to/privatekey user@host
Aqui está um bom artigo sobre ssh-keygen e o uso de allowed_keys para simplificar os logins ssh:
http://www.debuntu.org/secure-your-ssh-server-with-publicprivate-key-authentification/
fonte