- ベストアンサー
sshやtelnetでログイン後、シェル(bash, csh)プロンプトからコマンド実行する方法は?
下記掲示板(CGI)の設置で至急、「sshもしくはtelnet」の情報が必要になりました。(メールによる掲示板への投稿機能で必要) http://www.megumi-island.net/cgi.html#bbs sshやtelnetでログイン後、シェル(bash, csh)プロンプトからコマンド実行する一番簡単な方法を教えてください。なお、当方OSはWindowsXP環境です。 シェルから下記コマンドを実行したいのです。 $ ./mi_mlpost.pl (と入力し、Enterキーを押す) これでとりあえず第一難関クリアです。 付属のmi_mlpost.txtによれば、まだcronの設定があるようですが・・・
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
>SMTPサーバーにログインしたようです。 >C:\>telnet www.****.com 25 SMTP(25番)サーバーにログインしちゃ駄目です。シェルが使えません。 単に、telnet www.***.com としてtelnetサーバーにログインしてください。 ユーザーIDとパスワードを聞いて来るのでそれを入れると、$ などと出るので、./mi_mlpost.pl と入れればいいです。 なお、暗号化されない件ですが、確かにsshの方がいいですが、ちょっと1,2度使う程度なら気にしなくていいと思います。
その他の回答 (4)
- notnot
- ベストアンサー率47% (4900/10358)
#2,#4です。 ○プレインテキストを使う(L) でいいです。パスフレーズのところにパスワードを入れてください。 「プレインテキスト」というと暗号化されていないような気がしますが、英語版ではここは「use plain password」となっていて、実際には暗号化されて送信されます。 sshの場合は、暗号化鍵を生成してサーバーに送り、パスフレーズで認証するやり方が使われることが多いです。検索すればいろいろ情報はあるでしょうが例えば、http://www.asahi-net.or.jp/~aa4t-nngk/sshd.html#utftterm まああまり使わないのなら上記の方法でも暗号化はされているのでいいと思います。
お礼
おかげさまで、質問に対する良回答が得られたのでもう少しで締め切らせていただきます。 余談ですが・・・ テストサーバーでCGIの自動実行が成功しました。(cronによるスクリプト自動実行) ただ、今回はTelnet接続ですのでセキュリティの問題があると思います。 あまり使わないと書きましたが、cronの自動実行で気がつきましたが、Telnet接続はやめてSSH接続を常時使う事になりそうです。 まだレンタルサーバーのSSH接続でcronによるスクリプト自動実行の手法がわかりません。 SSH接続でcronを実行するにはどうしたらいいのでしょうか? ちなみにレンタルサーバー(XREA)の仕様は -------------------------------------------------- SSHは1時間を越えると接続できなくなります。再度登録しなおして下さい。 ・SSHは一部のプロバイダーからは接続できない場合があります。 ・SSHシェルはデータベース操作の時のみお使い下さい。 -------------------------------------------------- SSH接続で手動によるスクリプト実行は正常動作確認したのですが、cronが使えるか わからないのと上記制約があるのではたしてスクリプトの自動実行(5分間隔に実行)が できるかどうか不明です。 何か心当たりがあればアドバイスいただけると幸いです。 なければ締め切って別途質問します。
補足
プレインテキストを使う(L)を選択したところ、おかげさまで bash-2.05a$ という入力画面がでました。 bash-2.05a$ ./mi_mlpost.pl も実行できたようです。 とりあえず第一難関クリアしたようです。
- notnot
- ベストアンサー率47% (4900/10358)
#2です。 >接続中:www.***.com...ホストへ接続できませんでした。 >ポート番号 23:接続に失敗しました。 > >やはりSSH対応のTera Termでログインする必要があるのでしょうか? これはお使いのサーバーでtelnetサーバーが稼動していない、つまりtelnetでログインできないということです。ssh でログインできるかどうかは、 telnet www.***.com 22 と22番でログインしてみればわかります。標準のtelnetだとsshに対応していないので実際のログインは出来ませんが、上記のように「接続に失敗しました」と出るか、なんらかの接続がされるか、どちらかわかります。 22番でも接続に失敗するようなら、ssh サービスも提供されていないということです。つまり、そのサーバーにはログインできません。サーバーのサービス内容をよく調べてみてください。ftpのみのサービスじゃないですか?その場合は、mi_mlpost.cgi という名前に変えるなどしてCGIとしてブラウザから実行するという方法が考えられます。 「接続に失敗しました」じゃなければSSH対応のTeraTermもしくは、PuTTYというソフトを入れるとsshでログインできます。使い方は別途検索してください。 パスワードは、unix系ではセキュリティーのため何も表示されないのが普通です。Windowsだと****と表示されたりしますが、これだとパスワードが何文字かばれちゃうのでその分パスワードが推測されやすくなります。 プロンプトが、$ でなく > であったのは、サーバー側の設定でプロンプトは色々変更できるので、たまたまそのサーバーでは慣例とは異なる設定だったということだと思います。
補足
sshでログインできるかどうか下記のように打ち込みました。 telnet www.***.com 22 結果は「接続に失敗しました」ではなく C:\>に戻っただけです。 レンタルサーバーに問い合わせたところ「Telnet接続には対応してないのでSSHでログインして下さい」と返答がありました。 只今、Tera Term Professional Version 4.20(SSH対応版)で SSHでログインを試みておりますが下記メッセージがでます。 「www.***.comにログインしてます。認証が必要です」 下記箇所は何を入力すればいいのでしょうか? ユーザー名(N): パスフレーズ(P): また、以下のラジオボタンのどれを選択すればよいのでしょうか? ○プレインテキストを使う(L) ○RSA/DSA鍵を使う 秘密鍵(K) ○rhosts(SSH1)を使う ローカルのユーザー名(U): ホスト鍵(F): ○チャレンジレスポンス認証を使う(キーボードインタラクティブ)(C)
- yambejp
- ベストアンサー率51% (3827/7415)
もっともスタンダードなやり方としては teratermのssh対応版でやることです とりあえずインターネットでtelnetは ご法度でしょう。
お礼
他サーバーですが、telnet接続によりなんとか./mi_mlpost.pl の実行は成功しました。 ただ、質問のサーバーでは相変わらず下記メッセージにて接続できません。 接続中:www.***.com...ホストへ接続できませんでした。 ポート番号 23:接続に失敗しました。 やはりSSH対応のTera Termでログインする必要があるのでしょうか?
補足
早速Tera Term Pro version 2.3で試してみましたが No.2と全く同じ表示になります。 sshは使用してませんが、何度も使うようでしたら導入してみます。
- ballville
- ベストアンサー率47% (233/487)
そのスクリプトをどこに、置こうとしているので しょうか。 sshとかtelnetとかおっしゃっているということは、 perlシステムを備えたレンタルサーバでも、ご利用 されるのでしょうか。 もし、そうなら、お使いのWindows側には、sshかtelnet があれば十分です。bashとかcshとかのコマンドシェル は、向こうにありますから、レンタルサーバにログイン して必要な設定を行えばいいだけです。最初は、その スクリプトをサーバー側にアップすることから始まる と思いますが。 ただ、telnetはパスワードが平文でネットワーク上を 流れますから、避けたほうが無難です。sshを使うこと を*強く*お勧めします。 telnetはWindowsが標準で持っていますから、単に 起動するだけです。sshを使うなら、専用の端末ソフト もありますが、Cygwinをインストールしてしまった ほうが何かと便利です。 Cygwinの入手方法、その他は http://pcweb.mycom.co.jp/special/2002/cygwin/ で。 もし、自宅サーバで、そのスクリプトを使うなら、 前掲のCygwinもありですが、LinuxやFree Bsdなど PC Unixをインストールしたほうが何かと便利だと 思います。 どうやら、あまりUnix系のOSについてご存知なさそう (違っていたらごめんなさい)なので、簡単な入門書 などをお読みになったほうがよいと思います。
補足
早速のお返事ありがとうございます。 現在perlシステムを備えたレンタルサーバ(www.****.com)を使用中です。 スクリプトmi_mlpost.plは下記のxxxxの位置に置きました。 /virtual/xxxx/public_html/ +--- mi_mlpost.pl (700) telnetの起動は何とかDOS窓からできました。 SMTPサーバーにログインしたようです。 C:\>telnet www.****.com 25 sshを強くお勧めのようですのでそちらでトライしてみます。 最後に自宅サーバでそのスクリプトを使う予定はありません。 確かにUnix系OSの超初心者でございます。
お礼
Passwordが入力できない(全く文字が映らない)のは そういう仕様になっていたようで、 無事ftpサーバーwww.***.com にログインできました。 ただ、$は表示されず、>が表示されます。これで正常なのでしょうか? OSはWindowsXP(Pro)です。 > ./mi_mlpost.pl(と入力し、Enterキーを押す) でどうやら実行できたようです。
補足
回答ありがとうございます。 25番は送信メールサーバーのようでしたね(^_^;) 単純にtelnet www.***.comでログインできましてユーザーIDとパスワードの入力画面までたどり着きました。 しかし、Login:は入力できますが、Password:が入力できません。(全く文字が映らない) 原因不明です。従って先に進みません。 どうすればいいのでしょうか? telnet接続は「メールによる掲示板への投稿機能」が正常かどうか確認するためですので何度も使わないと思います。 sshで上記問題がクリアされればsshの勉強もします。