O problema mais comum ao configurar o login sem senha com o SSH é obter as permissões do diretório .ssh
e os arquivos authorized_keys
incorretos. O SSH é exigente quanto a permissões - com um bom motivo; as permissões erradas podem comprometer sua segurança.
As permissões devem ser pelo menos tão restritivas:
$ ls -la .ssh
total 28
drwx------ 2 user group 4096 2011-10-05 16:08 .
drwxr-xr-x 4 user group 4096 2012-04-03 12:16 ..
-rw------- 1 user group 405 2011-10-05 16:08 authorized_keys
-rw-r--r-- 1 user group 15912 2012-03-24 10:17 known_hosts
Você pode conseguir isso com:
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
O segundo erro mais comum é a ortografia de authorised_keys
corretamente e o SSH ignora o arquivo porque foi escrito por americanos.
As mensagens de erro para as permissões aparecem no servidor, nos logs e não no cliente, por isso pode ser difícil encontrar isso.
Eu também encontrei o problema com minha chave pública sendo dividida em duas linhas em .ssh/authorized_keys
. Devido à divisão que acontece exatamente no final da linha, não é óbvio. Um editor como vi
facilita a contagem. O redimensionamento de sua janela de terminal também deve fazer com que ela seja novamente envolvida e mostre claramente as linhas de divisão.
Presumi que você quis dizer .ssh
em sua pergunta e não .svn
. Se você realmente criou um diretório .svn
, será necessário alterá-lo para ssh
.