SFTPを使用して多数のサーバーにログインし、特定のファイルをダウンロードして、問題が発生したときに問題をデバッグできるようにしたいと考えています。クライアントを使用することもできますが、すべてを合理化するためにプロセスの自動化を開始したいと考えていました。
私の最初の試みは次のようになります。
def download(files_to_download, destination_directory)
Net::SFTP.start(@server, @username, :password => @password) do |sftp|
files_to_download.each do |f|
local_path = File.join(destination_directory, File.basename(f))
sftp.download!(f, local_path)
end
end
end
これは機能しますが、パスワードが必要であることを意味します。理想的には、公開鍵認証を使用したいのですが、ドキュメントやオンラインでこれへの参照を確認できません-これは可能ですか?
チルカットは使いたくないです。
ありがとう