すべてのサーバーから一度にファイルを取得できるスクリプトを作成しています。サーバーにログインするためのSSHキーを用意しています。ただし、SSHキーにはパスワードが必要です。
私が書いているスクリプトは自動化されず、手動でのみ実行されます。そのため、私のスクリプトはユーザーにSSHキーのパスワードの入力を求めます。
SSHキーが各サーバーに接続するときに、パスワードをSSHキーに送信するにはどうすればよいですか。サーバーごとにパスワードを入力する必要がないようにしています。
'expect'を使用できることはわかっていますが、これを行う簡単な方法があることを望んでいます。多分いくつかの環境変数?
ありがとう。
これにssh-agent
を使用してみませんか?
詳細については、manページを参照してください。 :)
パスキーのないSSHキーを使用します。安全性は低いかもしれませんが、無人での使用を許可する方法には同じ欠陥があります。
これが私の2セントです!
このように私はすることができます:
期待は最初に頭に浮かぶ解決策です...
このスクリプトの例を確認してください これは、探しているものに近いためです。
最も簡単な解決策は、パッケージsshpass
をインストールし、次のように使用することです。sshpass -p password ssh -i keyfile.pem user@server