sftpを使って自動的に接続し、同じコマンドにパスワードをパラメータとして渡して、自動的にログインして一度実行する方法を知りたいです。
例:
私はこれをスクリプトで書いて、これを1つの文で完了しようとしています。
乾杯、
ベストアンサー1
パスワードのないSSH / SCPを実装する方法は4つあります。
クライアントは新しいパスワードなしのSSHキーを生成して
authorized_keys
サーバーに追加します。上記と同じですが、scpを実行する前にキーにパスワードを設定し、
ssh-agent
それを使用してロックを解除します。scpが実行される前に、SSH接続共有(適切に設定する必要がある場合があります
ControlPersist
)を使用してサーバーにログインしてください。 scpは同じ接続を再利用し、パスワードは必要ありません。秘密のスクリプトを使用してパスワードを入力しますが、ssh / scpはそれを積極的にブロックするので、望むほど簡単ではありません。
最初の2つのオプション(オプション2がより安全です)を見て、Authorized_keysが利用できない場合は、オプション3を調べることをお勧めします。これを行う方法に関するドキュメントがたくさんあります。
オプション4が可能です(他の人がソリューションを公開したのを見ました)。ただし、これを行うには、コンピュータの他のユーザーやスクリプトを読むことができるすべての人にパスワードが公開されることに注意してください。 SSHキーは、ルートを除くすべてのユーザーによって保護され、パスワードで保護されたキーはルートによっても保護されます(Ssh-agentハッカーを除く)。