SSHキー

SSHキー

そのため、sshを使用して複数の異なるユーザーとしてサーバーにログインする必要があり、ユーザーのパスワードを含むファイルから毎回パスワードをコピーするのに疲れました。パスワードを無効にすることはできません。私のパスワードではなく、ゲーム用のパスワードです。

私は以下を試してみました。

$ cat /path/to/myfile | ssh user@localhost

stdinが端末ではないため、疑似端末が割り当てられていないというメッセージが表示されます。

どのように動作するのか分かりません。

ベストアンサー1

SSHキー

まず、最善の解決策は新しいSSHキーペアを作成し、このキーを使用してすべてのサーバー(またはデフォルト設定に応じて一部のサーバー)にログインすることです。実行方法がわからない場合は、stackexchangeで複数回見つけることができますが、ショートカットは次のようになります。

ssh-keygen; ssh-copy-id your-host

デフォルトでは、1つのパスワードで一度だけログインしたら、キーにパスワードを設定する必要があります。

SSHパス

ただし、本当にファイルのパスワードを使用する必要がある場合は、コメントに記載されているように非常に簡単に使用できます。

sshpass -f /path/to/myfile ssh user@localhost

sshただし、これはプレーンテキストで保存されたパスワードを使用するのに実際には好まれる方法ではありません。

予想される

expect次のスクリプトを使用して同じことを実行できます。

#!/usr/local/bin/expect
spawn  ssh [email protected]
expect "password:"
send "your_password\n";
interact

おすすめ記事