Quando tento ssh para outra caixa, recebo esse erro estranho
$ ssh hostname
Bad owner or permissions on ~/.ssh/config
Mas eu me certifiquei de possuir e ter permissões rw no arquivo:
ls -la ~/.ssh/
total 40K
drwx------ 2 robert robert 4.0K Mar 29 11:04 ./
drwx------ 7 robert robert 4.0K Mar 29 11:04 ../
-rw-r--r-- 1 robert robert 2.0K Mar 17 20:47 authorized_keys
-rw-rw-r-- 1 robert robert 31 Mar 29 11:04 config
-rw------- 1 robert robert 1.7K Aug 4 2010 id_rsa
-rw-r--r-- 1 robert robert 406 Aug 4 2010 id_rsa.pub
-rw-r--r-- 1 robert robert 6.1K Mar 29 11:03 known_hosts
Eu precisava ter rw para permissões apenas de usuário no config. Isso resolveu.
Como outros notaram abaixo, pode ser o proprietário do arquivo. (aprová-los!)
Se toda a sua pasta tiver permissões inválidas, aqui está uma tabela de permissões possíveis:
id_rsa
) ( código )config
id_rsa.pub
)authorized_keys
( código )known_hosts
Fontes:
Esses comandos devem corrigir o problema de permissão:
Prefixe com
sudo
se os arquivos pertencem a um usuário diferente (ou você não tem acesso a eles).Se mais arquivos forem afetados, substitua
config
por*
.Em
man ssh
podemos ler:Para mim, foi um problema com minha conta de usuário não ser a proprietária do arquivo
Se no Windows Subsystem for Linux (WSL) e você apontar o diretório inicial do WSL para o diretório inicial do Windows (não recomendado!), o chmod não terá efeito. Antes de poder
chmod
os arquivos mencionados em outras respostas, você deve adicionarpara o seu
/etc/wsl.conf
reinicie o WSL (requer build 17093 ou posterior).Antes de montar diz:
Depois de montar diz:
Não se esqueça do grupo:
:-)
Eu encontrei esse problema no Windows 10 com o
vagrant ssh
. E tentei todos os métodos acima, mas não tive sorte. Finalmente eu deletei esse arquivo de configuração ssh e então funciona!