我们一直在尝试使用opennebula来模拟星系团,但是ssh让我们抓狂。出于一些未知的原因,有必要让用户oneadmin (由opennebula创建)能够ssh到本地主机。opennebula的“主”目录(由它创建)是/var/lib/one,在"one“中我们可以找到.ssh目录。下面是我到目前为止所做的:
sudo -su oneadmin
oneadmin@pc:$ cd /var/lib/one/.ssh
oneadmin@pc:/var/lib/one/.ssh$ ssh-keygen -t rsa
oneadmin@pc:/var/lib/one/.ssh$ cat id_rsa.pub >> authorized_keys此外,我还更改了所有权限:所有文件和目录的所有者都是oneadmin和600 (我可以从opennebula指南中读到)
最后,从根本上说,我是这样做的
service ssh restart然后,我再次以oneadmin身份从一个终端登录,但当我执行以下操作时:
ssh oneadmin@localhost以下是我得到的结果
Permission denied (publickey).我在哪里犯了这个该死的错误?为了所有这些权限,我们已经浪费了一天多的时间!
发布于 2014-01-17 07:17:37
我刚刚遇到了一个类似的问题--原来Open Nebula与selinux的关系并不好。
最终在这里找到了解决方案- http://n40lab.wordpress.com/2012/11/26/69/ -我们需要将上下文恢复到~/.ssh/authorized_keys:
$ chcon -v --type=ssh_home_t /var/lib/one/.ssh/authorized_keys
$ semanage fcontext -a -t ssh_home_t /var/lib/one/.ssh/authorized_keyshttps://stackoverflow.com/questions/20529597
复制相似问题