- 締切済み
unixからwindowsへリモートシェルを実行したい
unixからwindows2000serverのプログラム(VBのexeファイル)を リモートで実行したいのですが、何か良い方法がありました教えて下さい。 また、unix側、windows側でインストールすべきS/W等がありました教えて頂けますでしょうか。 よろしくお願い致します。 参考までに、以下の内容は自分で調査しましが、実現には至りませんでした (何かが間違ってるのかもしれませんが・・・) ・SSH(unix・winそれぞれに設定方法がよくわからない) ・unixからtelnetログイン(telnetログイン・UID/PASSWD入力・winプログラム 実行を自動化(シェル化)の仕方がわからない) ・unixからrshを実行(windows2000ではrshを受付けない?)
- みんなの回答 (7)
- 専門家の回答
みんなの回答
- a-kuma
- ベストアンサー率50% (1122/2211)
仕事の予定が少し空いたので試してみました。 結果から言うと、紹介した rshd の最新版は、動作しましたよ。 -d を使うときは、サービスとして開始する必要が無くて、コマンドプロンプトから ひとつのプログラムとして実行できました。 すんなりと、ではなかったけど、.rhosts の IP アドレス表記を見てくれないとか、 クライアントサイドの .rhosts の編集とかだけで、bind は素直に通りました。 No.6 の回答にあるように、ポートが使われているのかなあ? でも、エラーコードでないの変だよね。 駄目元で、サービスではない古い方(参考URL の rshd.zip の方)を使ってみる、というのは? # うう~ん
#3補足より >*** [0] ERROR: Cannot bind to the rshd daemon port. > 既に514/tcpが開かれているのでは? netstat -anで確認してみてください。 例えば、RSH Deamonサービスが開始されているのに、 コマンドプロンプトからrshdを再度起動しようとしているとか。
- a-kuma
- ベストアンサー率50% (1122/2211)
> servicesにポート番号を登録または修正する必要があるのか、クライアントからrshコマンドを実行時に、 (snip) いや、ソースをちょろっと見てみたけど、well-known なポートを使っているから、大丈夫だと思う。 念のため、というのであれば cmd で 514/tcp があるのを確認してみて。 # ああん、自分でやってみたいけど、今週は時間が取れないの
お礼
毎々、ご回答ありがとうございます。 > 念のため、というのであれば cmd で 514/tcp があるのを確認してみて。 説明不足でしたが、servicesには「cmd 514/tcp」があります。 また、デバッグをすると「[0] ERROR: Cannot bind to the rshd daemon port.」 となるのですが、試しにwindowsクライアント上で 「rshd ホスト名(W2Kサーバ) notepad」を実行すると ホスト名:接続はピアによってリセットされました rsh: can't establish connection と表示され、rshdをインストールしたW2Kサーバでは、rshdのサービスが 停止してしまいます。 とりあえず、現象だけを書かせて頂きました。 もしわかる方がいらっしゃいましたらご教授願います。
- mann555
- ベストアンサー率46% (29/62)
よく調べていませんが Service for UNIX というものがありますよ
- a-kuma
- ベストアンサー率50% (1122/2211)
> さっそく使用してみたのですが、rshd.exeをwinで実行しても > rshdサーバとして立ち上がったようには思えず、 どれを落としたの? Readme.txt は、読んでからやってる?
お礼
> どれを落としたの? http://home.us.net/~silviu/rshd/から、「rshd16」をDLしました。 > Readme.txt は、読んでからやってる? 読みました。 インストール、サービスの起動まではできたのですが、 デバッグ「コマンド:rshd -d」を行うと、以下のメッセージが出力されてしまいます。 Debugging RSH Daemon. [0] Checking winsock.dll version... [0] Loading C:\WINNT\.rhosts... [0] Trusting host 10.32.21.72... [0] Creating socket... [0] Binding socket... *** [0] ERROR: Cannot bind to the rshd daemon port. [0] Winsock error: Error number = 0. servicesにポート番号を登録または修正する必要があるのか、クライアントからrshコマンドを実行時に、 ポート番号を指定するのか、そうであればどのようにポート番号を指定するのか、 等々、不明な点がまだ多々あります。 もしわかる方がいたらご教授下さい。
- Te-Sho
- ベストアンサー率52% (247/472)
VNCを使用するとか。 フリーのリモートソフトです。 ブラウザからWindowsのデスクトップが覗けます。
お礼
回答ありがとうございます。 質問内容に不足がありましたが、unix上でシュル化してwindows上のPGを実行したい と考えています。
- a-kuma
- ベストアンサー率50% (1122/2211)
参考URL においてある rshd (リモートシェル・デーモン) はどうですか? # 私は、使ったことありません
お礼
回答ありがとうございます。 さっそく使用してみたのですが、rshd.exeをwinで実行しても rshdサーバとして立ち上がったようには思えず、 また、unixからrshコマンドを実行しても 「rsh: can't establish connection」が出力し、 接続に至りません。 もうちょいがんばってみます。 引き続き何かわかることがありましたら、ご教授下さい。 よろしくお願い致します。
お礼
回答ありがとうございます。 また、回答が遅くなり申し訳ありません。 結果としては、rshd.zipで動きました。 rshd(16)サービスをもちいて、rshコマンドを実行した時の ホスト名:接続はピアによってリセットされました rsh: can't establish connection に関しては原因がわかりません。 ただ一つ間違っていたのは、a-kumaさんが書いている通り、 .rhostsにはIPアドレスを記述していたので、hostsには 全く記述をしていませんでした。 なので、.rhostsには「ホスト名 ユーザ名」、hostsには「ホスト名 IPアドレス」を設定しましたが、 rshd(16)では permission denied となります。 この原因もわかりません。 また、rshd(16)のサービスを起動するとイベントログに以下の内容が表示されていました。 イベント ID (0) (ソース rshd 内) に関する説明が見つかりませんでした。 リモート コンピュータからメッセージを表示するために必要なレジストリ情報または メッセージ DLL ファイルがローカル コンピュータにない可能性があります。 次の情報はイベントの一部です: RSH Daemon service stopped.. とりあえず、rshd.zipを使用すればうまく動いてくれたので、当面はこれを使おうと 思います。 上記に書いたエラーの原因は合間を見て調べてみます。 いろいろと助けて頂きありがとうございました。 勉強になりました。