問題タブ [sshpass]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
windows - Cygwin を使用して Windows に sshpass をインストールする方法は?
CygWin のパッケージ ウィンドウで、sshpass と入力しても何も表示されません。そのうちの1つにsshpassが含まれていることを期待して、opensshなどの同様のパッケージをインストールしようとしましたが、うまくいきませんでした。
shell - シェルで「if-fi」を使用して、特定のケースで複数行のコマンドを sshpass に供給する方法
上記のこのコードは、私が使用しているシェルスクリプトの一部です
問題 :
私が直面している問題は、一連のコマンドを実行してリモート tomcat サーバーに webapp をデプロイしようとしていることです。関心のある懸念は、上記のように sshpass を使用して複数行のコマンドを実行できるようにしたいことですが、以下のようにエラーが発生します:
-bash: 2 行目: 構文エラー: 予期しないファイルの終わり
このユースケースの実用的な例を探しています。関連する支援があれば非常に役立ちます。
Google検索結果から多くの例を試しましたが、できません
linux - 新しい Hadoop クラスターの SSH 構成を自動化する
これは何度も行われたと思いますが、明確な答えを見つけることができなかったので、より良い解決策についてあなたの専門知識に訴えています:
目的: 中程度のサイズの RHEL Hadoop クラスターをセットアップしており、すべてのノード間の SSH 接続の構成を自動化したいと考えています。最初のノードでは、ファイル 'remote_ips' にすべての IP のリストがあり、ファイル 'hduser_pw' (chmod 600) に hduser パスワードがあります。
ステップ 1) 各ホストで「hduser_pw」パスワード ファイルを作成する
for x in $(cat remote_ips); do sshpass -p$(cat hduser_pw) ssh -o StrictHostKeyChecking=no hduser@$x "echo $(cat hduser_pw) > hduser_pw; chmod 600 hduser_pw"; done
ステップ 2) クラスター内の各ノードの RSA キーを生成します。
for x in $(cat remote_ips); do sshpass -p$(cat hduser_pw) ssh -o StrictHostKeyChecking=no hduser@$x "echo -e 'y'| ssh-keygen -t rsa -N \"\"
"; done
ステップ 3) ファイル「remote_ips」をクラスター内の各ノードにコピーします。
for x in $(cat remote_ips); do sshpass -p$(cat hduser_pw) scp -o StrictHostKeyChecking=no remote_ips hduser@$x:~; done
ステップ 4) 各ノードについて、RSA 公開鍵を他のすべてのノードの「authorized_keys」にコピーします。
for x in $(cat remote_ips); do sshpass -p$(cat hduser_pw) ssh -o StrictHostKeyChecking=no hduser@$x 'for y in $(cat remote_ips); do cat /home/hduser/.ssh/id_rsa.pub | sshpass -p$(cat hduser_pw) ssh -o StrictHostKeyChecking=no hduser@$y '\''cat >> .ssh/authorized_keys'\'' ; done '; done
これを行うより良い方法はありますか?本当にありがとうございました。
編集:ここに私のリビジョンがあります:
@janos と @likewhoa からのフィードバックを取り入れました --> UUOC をリダイレクトで処理し、各 IP でループし、変数を使用してシェル履歴から pwd を削除しました。どうもありがとうございました!
shell - 自動化での sshpass 終了
合計 6 つの IP アドレスがあり、6 つのうち 2 つの IP アドレスのみが有効です。sshpass を使用して各 IP をテストするシェル スクリプトを作成しました。
問題は、スクリプトが動作している IP に到達したときに、システム (Cisco スイッチ) にログが記録され、そこにとどまり、残りの IP をテストするループを続行しないことです。システムで「exit」と入力すると、ループが続行されます。
ログインに成功した後、ログに記録されたシステムからスクリプトを自動的に取得し、残りの IP のテストを続行するにはどうすればよいですか?
/usr/bin/sshpass -p $ADMINPASS ssh -oStrictHostKeyChecking=no -oCheckHostIP=no -t $ADMINLOGIN@$IP exit
終了ステータスを使用して、どの IP が機能し、どの IP が機能しなかったかを把握できます。
linux - sshpass リモート コマンドとリモート マシンでのユーザー アカウントの切り替え
要件は、リモート マシンに対して ssh を実行sudo su - "wasadmin/user" -c "whoami"
し、user1 がリモート マシン上の特定のアプリケーション ユーザーへの sudo アクセス権を持っているかどうかを確認することです。
以下で試してみました。しかし、私のコマンドに何かが欠けています。上記のシナリオで私を助けてください。
linux - sshpass: コマンドが見つかりませんエラー
あるサーバーから別のサーバーへのファイル転送または FTP を自動化しようとしています。
このシェル スクリプトを実行すると、 putty で次のエラーが発生します。
および他の手順で ssh パスワードなしの方法を使用してみました ssh-keygen -t dsa
が、次の手順を実行できないため、2 番目のサーバーのパテにアクセスできません。
親切に助けて
bash - sshpass と組み合わせた ssh 上の tar
私は(非常に)最近、ssh上のtarに関してこの質問を投稿しました。
質問には答えがあり、別の質問をしています。
次のコマンドを実行して、ローカル マシンからコードを実行するサーバーにコードをプッシュします。
ssh
/scp
を使用sshpass -p password
して、毎回パスワードを要求するコマンドを停止できることを知っています。別の認証方法を使用できないことに注意してください。
上記のコマンドと組み合わせsshpass
て、パスワードを何度も入力する必要がないようにすることはできますか?
つまり、上記のコマンドを実行するたびにパスワードを入力する必要がないように、上記のコマンドを編集して含めるにはどうすればよいですか?sshpass
編集:以下が機能することに注意してください
例えば