SSH出力をファイルにリダイレクトする方法

SSH出力をファイルにリダイレクトする方法

私のサーバーにSSH接続を設定したいのですが、パスワードを入力したくありません。出力を次のファイルに保存したいと思います。

$ ssh [email protected] -p 22 1>output 2>&1

ただし、実行すると、出力に次のように表示されます。

[email protected]'s password:

この状態を私には表示せずにファイルにリダイレクトし、すぐにSSH接続を閉じたいと思います。

どうすればいいですか?

答え1

あなたは何も間違っていませんでした。ただパスワード入力が特別だっただけです。

ssh何もしないようにパスワードを入力したくないとします。本物/dev/tty代わりに、パスワードプロンプトで使用されるようにパイプが必要ですstdout

ssh次のようにパスワードを要求しないようにすることができます。

ssh -o BatchMode=yes [email protected]

これで、利用可能なキーや既存の接続がない場合は終了します。

しかし、「Password:」プロンプトテキストをキャプチャする直接的な方法はないと思います。

答え2

パスワードを使用しないでください。パスワードが空の公開 - 秘密鍵を使用してください。
ssh -2 -I /home/localloginame/.ssh/astroboy -l ログインホスト名 \"cd inbox; ls -l; 終了"

スティーブン・ユニバースはどんな作品ですか?これはファイルです。これは秘密鍵です。キーを作成すると、プライベート部分:/home/localloginname/.ssh/astroboyと公開部分:/home/localloginname/.ssh/astroboy.pub

今、そのキーを作成する方法.... /???/ssh/bin/key-gen -t dsa astroboy

その後、パスワードを求めます。空のパスワードを入力できます。文句を言うが、続けてください。それからそこにあります。

私が間違っていると言ったら、誰かが私を修正することを願っています。

関連情報