1

現在、私は次のようなコードで ssh 接続を行っています。

Net::SSH.start( @HOST, @USER, :password => @PASS ) do|ssh|
   @result = ssh.exec!("ls")
   end

ここで、パスワードを指定せずに SSH 接続を行う必要があります。パスワードを指定せずに ssh 接続を開始するための正確な形式を見つけることができませんでした。

HOST の認証キー リストに SSH キーを追加しました。パスワードなしで ssh を参照したときに、ネット上のどこかで以下のコードを見たのを覚えています。

Net::SSH.start( @HOST, @USER) do|ssh|
       @result = ssh.exec!("ls")
       end

間違っていたら訂正してください

4

1 に答える 1

2

公開鍵ではなく、秘密鍵を指定する必要があります。

@USER = "me" 
@KEYS = ["my private key here"] 
@HOST = hostname  
Net::SSH.start( @HOST, @USER, :key_data=>@KEYS, :keys_only=>TRUE ) do|ssh|
  @result = ssh.exec!("ls")                 
end 

これで、パスワードは不要になりました。

于 2012-08-17T21:00:52.090 に答える