我刚刚完成了安装CentOS 6昨晚(来自georgia技术存储库的netinstall),并且当我试图从我的家庭networking后面的CentOS框到我的一个面向公众的web服务器上时,遇到了一些奇怪的SSH问题。
在新的机器上运行ssh-keygen(让我们称之为服务器A),并将公钥复制到服务器B之后,我尝试从A到B进行SSH连接。我遇到了一些权限问题,所以做了几个chmod(尝试从644更改id_rsa.pub到0600,然后chmod'd的.ssh目录到0600)。
作为背景信息,我昨晚从服务器A成功地ssh(使用rsync -e“ssh -i …”)到服务器B。在7小时之前和当我开始遇到问题时没有任何更改早上。
这是当前的情况:
服务器A上的用户名是dwhite。 当我以root身份执行.ssh目录的ls -la时,我看到:drw ——-。 2 dwhite dwhite 4096 Nov 5 05:38 .ssh
但是当我试图做一个ls -la作为dwhite的时候,我被拒绝了。 所以我用sudo进入了根目录,把.ssh目录下的chmod改回644.我回到dwhite的账号,运行ls -la:
[dwhite@local ~]$ ls -la .ssh/ ls: cannot access /home/dwhite/.ssh/known_hosts: Permission denied ls: cannot access /home/dwhite/.ssh/..: Permission denied ls: cannot access /home/dwhite/.ssh/.: Permission denied ls: cannot access /home/dwhite/.ssh/id_rsa: Permission denied ls: cannot access /home/dwhite/.ssh/id_rsa.pub: Permission denied total 0 d????????? ? ? ? ? ? . d????????? ? ? ? ? ? .. -????????? ? ? ? ? ? id_rsa -????????? ? ? ? ? ? id_rsa.pub -????????? ? ? ? ? ? known_hosts
所以我sudo'd回到根目录并运行:chown -R dwhite.dwhite /home/dwhite/.ssh/
回到dwhite,跑了ls -la:同样的事情
世界正在发生什么? 我错过了什么? 由于这是全新的安装,我不得不相信这是用户错误,但我绝对难住。
然后稍后将.ssh目录改为0600
当我以root身份执行.ssh目录的ls -la时,我看到:
drw-------. 2 dwhite dwhite 4096 Nov 5 05:38 .ssh
~/.ssh
目录应该有700个权限。 由于缺less执行许可证,您在ls
输出中看到问题掩码。 所以,试试这个:
# chmod u+x /home/dwhite/.ssh