4

Rex を使用して fi-ware クラウド インスタンスを構成しようとしています。これらのインスタンス (およびおそらく他の OpenStack ベースのシステム) が証明するのは、それらに接続するために使用できる単一の秘密鍵である「ID ファイル」です。私はこれのバリエーションを使用しています:

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 は単一の秘密鍵を使用してホストに接続できますか?」という質問になるかもしれません。

4

1 に答える 1

3

最後に、ドキュメントで提案されているように、秘密鍵から公開鍵を生成しました。

$ sshkey-gen -y -f /path/to/your/private.key >public.key

次に、その public.key を Rexfile で使用します

于 2014-12-01T09:12:03.087 に答える