問題タブ [net-ssh]

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.

0 投票する
2 に答える
1405 参照

ruby-on-rails - Ruby Net:SSHコントロールマスター?

私は現在、多くの短いSSH接続を確立する必要があるRuby(Rails)アプリケーションを持っています。これは、Ruby Net :: SSHライブラリを使用して正常に機能しますが、コマンドを実行するたびにアプリがログインしてキーをネゴシエートする必要があるため、速度が遅すぎます。

Ruby Net :: SSHでコントロールマスターを有効にする方法はありますか?コマンドラインでのテストでは、接続がすでに開いている(キーがネゴシエートされるなど)ため、これにより(最初のログインの後の)ログインが非常に高速になります。

Net :: SSHでこれを行う方法がない場合、誰かがそれを行うことができる代替ライブラリを提案できますか?

これは一般的な要件であるに違いないと思いますので、誰かが助けてくれることを願っています。

ありがとう!

0 投票する
3 に答える
461 参照

ruby - `authorized_keys`を使用したユーザー名なしのRubyとのSSH接続

authorized_keysシステムからコマンドを実行ssh 192.168.1.101し、サーバー経由で接続できるように、プッシュを使用してサーバーを認証しました。

今、私は図書館で試しました、それは私のために働きませんでした

as、これは必須のユーザー名フィールドです。ユーザー名なしで欲しい。

だから、私はこれを試しました

コマンドを実行してくれます。@outputしかし、最初の例のように、出力を変数にしたいと思います。解決策を得ることができる宝石や方法はありますか?

0 投票する
2 に答える
3149 参照

ruby-on-rails-3 - rubygemnet-sshを使用してJuniperルーターを構成する

ruby net-ssh gemを使用して、JuniperM10iルーターに変更を加えられるようにしたいと思います。ただし、「configure」を送信した後、構成コマンドを送信できません。

たとえば、ssh経由でルーターにログインした後、次の3つのコマンドを発行したいと思います。

net-sshライブラリを使用して、次のことを試しましたが成功しませんでした。

実行すると、次の出力が得られます。

では、「configure」の後に「showsystem」コマンドを正しく渡すにはどうすればよいですか?

解決済み:

私は次の投稿に出くわしました:https ://stackoverflow.com/a/6807178/152852

0 投票する
3 に答える
4277 参照

ruby - Net:SSH 経由のエラー「非絶対ホーム」

問題のコード

これは「非絶対ホーム」を返します。実際、「ユーザー」にはホームディレクトリがあります。提案されたアプローチの 1 つは、~/.ssh/config を IdentityFile へのフル パスで変更することでした。これで問題は解決しませんでした。

これのクレイジーな部分は、irb またはコンソールから呼び出された場合にコードが正常に機能することです。クラスメソッド内から(同じコードで)呼び出そうとすると、「非絶対ホーム」エラーが返されます。

「ユーザー」は、コマンドラインから問題なくサーバーに ssh することもできます。サーバーはUbuntuを実行しています。

アップデート

@Phrogz に感謝 - これに対する修正は、ENV['HOME'] を '/home/deploy' に設定することでした。しかし、なぜ $HOME が "." に設定されているのかわかりません。サーバー上。したがって、私または他の誰かがそれを理解するまで、「回答」なしでこの質問を残します. 手動で HOME を設定しなければならないというのは、適切な解決策というよりも「ハック」のように感じますが、うまくいきます。

0 投票する
1 に答える
372 参照

ruby - Net::SSH.exec コマンドによって返されるデータのサイズ制限はありますか?

以下のコードを使用して、リモート マシンのファイル リストを作成しようとしています。

ファイルの数が多い場合、exec コマンドから返されるデータは切り捨てられ、ファイルの部分的なリストのみが返されます。サイズの制限があるようです。増やす方法知ってる人いますか?

0 投票する
3 に答える
5016 参照

ruby-on-rails - そのようなファイルを読み込めません -- net/ssh/authentication/agent/socket (LoadError)

私が走ればrails s

Gemfile

1 秒は機能し、次の秒は機能しません。

このガイドに従って CKeditor 統合を修正しようとした後、作業を​​停止しました: https://github.com/galetahub/ckeditor

アップデート

このエラーは、私が Capistrano を使用していて、その gem に が必要なために発生しましたnet-sshnet-sshgem が 2.4 から 2.5.0 に更新されたため、問題が発生しました。

Gemfile を更新しました:

それから走った$ gem update net-ssh

そして、rails s コマンドのエラーが消えました。Capistrano をまだデプロイに使用していないため、デプロイを使用してエラーが発生しているかどうかはわかりません。

更新 2

Capistrano がデプロイに失敗したので、めちゃくちゃです。使用cap deployすると、投稿の冒頭に表示されるエラー メッセージが表示されます。

アップデート 3

誰かが言及したコメントで壊れていたため、にアップグレードnet-sshしました。アップグレード後、必要な問題は解決されましたが、Capistrano はまだデプロイされません。2.5.12.5.0

更新 4 (および回避策)

以下のコメントで、回避策が投稿されました。

  • net-ssh のバージョンを 2.5.1 に保つ
  • Capistrano でデプロイする前に、~/.ssh/known_hosts ファイルからサーバーの行を削除してください
  • 一度デプロイできるようになりました。デプロイするたびに繰り返します。
0 投票する
3 に答える
971 参照

ruby - net-ssh 接続のセットアップ時の SUPPORTED_TYPE エラー

誰かが以前にこのエラーを見たことがありますか? ソースでSUPPORTED_TYPEへの参照を見つけることができませんでした...

8/gems/net-ssh-2.5.1/lib/net/ssh/known_hosts.rb:33: /usr/lib/ruby/gems/1.8/gems/net-ssh-2.5.1/ からの「マップ」 lib/net/ssh/known_hosts.rb:33: /usr/lib/ruby/gems/1.8/gems/net-ssh-2.5.1/lib/net/ssh/known_hosts.rb:27 からの「search_in」内: /usr/lib/ruby/gems/1.8/gems/net-ssh-2.5.1/lib/net/ssh/transport/algorithms.rb:237 の「search_for」で:「prepare_preferred_algorithms!」で from /usr/lib/ruby/gems/1.8/gems/net-ssh-2.5.1/lib/net/ssh/transport/algorithms.rb:120:in `initialize' from /usr/lib/ruby/gems/ 1.8/gems/net-ssh-2.5.1/lib/net/ssh/transport/session.rb:79:/usr/lib/ruby/gems/1.8/gems/net-ssh-2.5 から「新規」に。 1/lib/net/ssh/transport/session.rb:79: /usr/lib/ruby/gems/1.8/gems/net-ssh-2.5.1/lib/net/ssh.rb から「初期化」します: 186: /usr/lib/ruby/gems/1 からの `new' で。
0 投票する
2 に答える
5409 参照

ruby - Ruby Net-SSH-Shell は実行から標準出力を取得します! 方法

.executeNet-SSH-Shellのメソッドから stdout を取得するにはどうすればよいですか

古き良き Net-SSH を使えば、これは簡単です

私に与えますTue Jun 19 23:43:53 EDT 2012

しかし、シェルを使用しようとすると、プロセス オブジェクトが取得されます

私に与えます#<Net::SSH::Shell::Process:0x007fc809b541d0>

標準出力を簡単に取得する方法について、まばらなドキュメントには何も見つかりません。方法はありますが、その方法on_outputを使用しても効果がないようですexecute!

私も.execute!好きにブロックを渡そうとしました

しかし、私はまだプロセスを取得します#<Net::SSH::Shell::Process:0x007fc809b541d0>

使用できる変数に標準出力が必要であり、実際のステートフル ログイン シェルが必要です。

何か案は?

編集

@vikhyatの提案と同じアイデアに沿って、私は試しました

しかしb、コマンドが結果を返すことがわかっている場合でも、常に空です。

0 投票する
0 に答える
241 参照

ruby - net:ssh から scp を呼び出す

セットアップは次のとおりです。

RubyスクリプトとサーバーBとCを実行しているサーバーAがあります.BからCにファイルを転送できる必要があります.

Net:SCP を使ってみましたが、2 つのリモート サーバー間の転送をセットアップする方法が見つかりませんでした。私ができる最善のことは、BからAに行き、次にAからCに行くことでした.

他の場所で見たコード例に基づいて、B に ssh し、そのサーバーから scp を呼び出そうとしています。

これは私にとってはうまくいきません。これは可能ですか?

0 投票する
1 に答える
315 参照

ruby-on-rails - ruby on rails net ssh strickhostkeychecking=no

こんにちは、 にnet:sshつながりがありcontrollerます。host name接続の確立中に動的に変更する場合があります。ただし、初めてログインするときに、シェルは接続するかどうかの許可を求める場合があります。ウェブ経由で接続しているので、私に尋ねるポップアップが表示されませんでした。したがって、私は https://groups.google.com/group/comp.lang.tcl/browse_thread/thread/ca0cd6ec905eb702"-oStrictHostKeyChecking=no"を読み、ホストへの接続中にこのタグを 追加したいと考えています。私たちが知っているように、以下はレールの net::ssh の標準形式です

"-oStrictHostKeyChecking=no"接続を確立するときに、この追加のパラメーターをどこに渡しますか?

私はすでに試しました

しかし、うまくいきません。助けてください