ssh返回“〜/ .ssh / config的权限不好”

当我试图ssh到另一个盒子,我得到这个奇怪的错误

$ ssh hostname Bad owner or permissions on ~/.ssh/config 

但是我确信我拥有并拥有rw文件的权限:

 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 

    我需要在config上拥有用户权限的权限。 这固定它。

     chmod 600 ~/.ssh/config 

    正如其他人已经注意到,它可能是文件的所有者。 (upvote他们!)

     chown $USER ~/.ssh/config 

    这些命令应该修复权限问题:

     chown $USER ~/.ssh/config chmod 644 ~/.ssh/config 

    如果这些文件是由不同用户拥有的(或者您无权访问它们),则使用sudo前缀。

    如果更多文件受到影响,请用*replaceconfig

    man ssh我们可以阅读:

    由于存在滥用的可能性,该文件必须具有严格的权限:对用户进行读取/写入,而不能被其他人写入。 如果所涉及的群组仅包含用户,则它可以是可分组的。

    对我来说,这是我的用户帐户不是文件的所有者的问题

     sudo chown myuser ~/.ssh/config