Gerei uma chave e a copiei no meu destino:
ssh-keygen
ssh-copy-id username@hostname
Deixei o local da chave como padrão e não defini nenhuma senha.
Por um pequeno tempo depois disso, consegui ssh username@hostname
sem ser solicitada uma senha e, em seguida, ela parou de funcionar por algum motivo.
ssh
key-authentication
tshepang
fonte
fonte
Respostas:
Se a autenticação de chave pública não funcionar: verifique se, no lado do servidor, seu diretório pessoal (
~
), o~/.ssh
diretório e o~/.ssh/authorized_keys
arquivo são todos graváveis apenas pelo proprietário . Em particular, nenhum deles deve ser gravável pelo grupo (mesmo que o usuário esteja sozinho no grupo).chmod 755
ouchmod 700
está ok,chmod 770
não está.O que verificar quando algo está errado:
ssh -vvv
para ver muita saída de depuração. Se você postar uma pergunta perguntando por que não pode se conectar ao ssh, inclua esta saída (você pode anonimizar o host e os nomes de usuário)./var/log/daemon.log
ou/var/log/auth.log
ou similares.fonte
authorized_keys
não deve ser gravável pelo grupo? O SSH rejeita isso por questões de segurança?authorized_keys
pode adicionar sua própria chave e fazer login na conta. Portanto, apenas o usuário deve ser permitido. (Ter o arquivo de grupo gravável é realmente seguro se nenhum outro usuário estiver nesse grupo, mas isso é difícil de detectar de forma confiável quando os membros do grupo podem vir de bancos de dados de rede.)O diretório inicial do destino era
755 drwxr-xr-x
. Mudar para ser gravável em grupo775 drwxrwxr-x
interrompeu a configuração sem senha.fonte
Depois de verificar se as permissões estavam corretas e se reenviam chaves, ele ainda não estava funcionando.
Então me deparei com isso que não havia feito anteriormente e que nunca vi ninguém mencionar.
Não foi possível usar -o allow_other com sshfs (opção ativada no fuse.conf)
Após ativar, executei meus comandos sshfs sem o sudo e tudo funcionou perfeitamente.
fonte
Supondo RHEL / CentOS, e supondo que você tenha acesso de administrador ao servidor remoto no qual o usuário
newuser
deseja fazer o ssh.Obter
newuser's
existenteid_rsa.pub
e ter pronto.Siga os passos:
Têm
newuser
tentativa de login.fonte