oneadmin opennebula ssh localhost

2.6k views Asked by At

We've been trying to use opennebula to simulate a cluster but ssh is driving us crazy. For some, still unknown reasons, it is necessary that user oneadmin (created by opennebula) is able to ssh to local host. The "home" directory of opennebula (created by it) is /var/lib/one and inside "one" we can find .ssh directory. So here's what I've done up to now:

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

Moreover, I've changed all permissions: all files and directory have oneadmin as owner and 600 (as I can read from the opennebula guide)

and finally, by root, I do

service ssh restart

Then I login from one terminal as oneadmin again but when I perform:

ssh oneadmin@localhost

here's what I get

Permission denied (publickey).

where am I making this damned mistake? We've lost more than one day for all these permissions!

1

There are 1 answers

0
robw On

I've just run into a similar problem - turns out Open Nebula didn't get on with selinux.

Finally found the solution over here - http://n40lab.wordpress.com/2012/11/26/69/ - we need to restore the context to ~/.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_keys