Crie um par de chaves e copie a chave pública para o servidor:
Exemplo:
ssh-keygen -t dsa
ssh-copy-id -i ~/.ssh/id_dsa user@remotehost
Eu instalei com sucesso em um dos nossos servidores Red Hat Linux 5 WS, e estou usando em nossa Intranet, não fora do nosso firewall.
Atualmente, eu sou solicitado a fornecer uma senha quando me conecto, então, quais etapas eu preciso fazer para garantir que o servidor tenha as chaves corretas para evitar a solicitação de uma senha? Acredito que isso seja uma questão de garantir que as chaves públicas estejam presentes. Eu não tenho certeza de como configurar isso.
OK, é fácil. A é o cliente, B é a máquina de destino. Você faz o login em A com suas credenciais. Você gera a chave ssh (se tiver, ignore essa etapa):
ssh-keygen -t dsa
Os padrões são OK. Você sabe que tem um arquivo ~ / .ssh / id_dsa e um ~ / .ssh / id_dsa.pub Faça o login em B e execute os comandos:
mkdir ~/.ssh
chmod 700 ~/.ssh
Vá para A novamente e scp o arquivo-chave:
scp ~/.ssh/id_dsa.pub <username_b>@B:~/.ssh/authorized_keys
onde é o nome de usuário de B. Vá em B e execute o comando:
chmod 600 ~/.ssh/authorized_keys
Agora, você deve estar bem.
Verifique o arquivo / etc / ssh / sshd_config que o opção
PubkeyAuthentication yes is set.
Além disso, esqueci de responder se você tentar com a conta root. Nesse caso, você precisa configurar a opção PermitRootLogin como
PermitRootLogin without-password