我正在尝试使用Rex来配置fi云实例。这些实例(可能还有其他基于OpenStack的系统)所证明的是一个“身份文件”,您可以使用它来连接到它们。我一直在使用这些变体:
user "root";
private_key "/home/jmerelo/.ssh/jj-iv.pem";
public_key "/home/one/public/key.dsa";
key_auth;
group fiware => "130.206.x.y";
desc "Install git";
task "git", group => "fiware", sub {
install "git";
};私钥是由fi-ware提供的,而公钥是,嗯,不管我怎么想,或者什么都没有。如果未提供公钥,则错误为
[2014-11-30 11:45:45] WARN - Error running task/batch: No public_key file defined. at /home/jmerelo/perl5/perlbrew/perls/perl-5.20.0/lib/site_perl/5.20.0/Rex/Task.pm line 621.
at /home/jmerelo/perl5/perlbrew/perls/perl-5.20.0/lib/site_perl/5.20.0/Rex/TaskList/Base.pm line 273.这很明显是真的。但是,如果我尝试其他公钥,错误是:
[2014-11-30 11:48:37] WARN - Error running task/batch: Wrong username/password or wrong key on 130.206.127.211. Or root is not permitted to login over SSH. at /home/jmerelo/perl5/perlbrew/perls/perl-5.20.0/lib/site_perl/5.20.0/Rex/TaskList/Base.pm line 273.使用
ssh -i ~/.ssh/jj-iv.pem root@130.206.x.y正确连接到实例。因此,问题可能是“Rex能否使用单个私钥连接到主机?”
发布于 2014-12-01 09:12:03
最后,我使用建议的by the documentation从私钥生成了一个公钥,
$ sshkey-gen -y -f /path/to/your/private.key >public.key然后在Rexfile中使用这个public.key
https://stackoverflow.com/questions/27212465
复制相似问题