- ベストアンサー
ftpとsftpでログイン時のリスト習得
現在XPのcygwinからあるサーバAとBに,Aに対してftpで,Bに対してsftpでファイル転送を行っているのですが,Bに対してsftpでログインしlsコマンドが通るのですが,Aに対してftpでログイン(ftpしか解放されていないため)して,lsでリストを取得しようとすると,タイムアウトしてしまいます.Aに対して3日前まではリスト取得はできていたのですが,セキュリティソフトのアップデートを自動にしているため,設定が変更されたのではないかと疑っています.もしくは意識していない内に変な設定をしてしまったのかもしれませんが(不注意です),解決方法を知っていましたら教えていただけないでしょうか.なにとぞよろしくお願いいたします. セキュリティソフトはKing softのinternet security Uです. 現在まで試した方法 ◎セキュリティソフトを停止する->未解決 ◎セキュリティソフトをアンインストール->未解決 ◎Winscpなどのftpクライアントソフトによるログイン->解決できず 以上,ご教授お願いいたします.
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
http://www.atmarkit.co.jp/fwin2k/win2ktips/118ftpmode/118ftpmode.html をちゃんと読んだのなら、 「Windows 9x/Me/2000では、FTPクライアントとして、(1)エクスプローラのFTPフォルダ機能、(2)Internet Explorerのftpアクセス機能、(3)コマンド プロンプトのftp.exe機能、の3つがある。しかし最後のftp.exeは残念ながらPASVモードはサポートしていないのでPASVモードが必要な場合は、エクスプローラかInternet Explorer、もしくはその他の高機能なFTPクライアント・アプリケーションなどを利用するべきだろう」 という記述があるのですが........... どうしてもftp.exeを使いたいならFirewallの問題を解決するしかないでしょう 他のPCでうまくいったのなら、うまくいかないPCのFirewallの問題なのは確実でしょう ところでセキュリティソフトだけでなく、Windowsファイヤウォールももちろん外したんですよね?
その他の回答 (4)
- superside0
- ベストアンサー率64% (461/711)
クライアント側でのタイムアウト設定や、パッシブ/アクティブモードの切り替えはお使いのftpクライアントの設定に依存します。 たとえば、WindowsのFFFTPであれば、 タイムアウト設定はオプションの転送2の設定、 PASVモード設定は、ホスト毎の設定の拡張のPASVモードを使うのチェックのON/OFFです。 > しかしながらpasswdコマンドの権限がないため,superside様の最初の提案方法は確認できませんでした. ftp接続時にuserとpasswordを入力したけっか認証まではできている(Login successful)が プロンプトの応答がないというのあれば、あげた2点が考えられるでしょうという意味で リモート側にpasswdコマンド(パスワード変更)を実行してみるということではありません。
お礼
回答ありがとうございました.No.4のところで解決方法を記しています.
- 774danger
- ベストアンサー率53% (1010/1877)
ログインできてプロンプトも出てコマンドが打てるのにlsの結果が出てこないのは、ftpdataのポート(20/TCP)がサーバ→クライアントに張れていないときの典型的な症状ですね ファイヤウォールか、もし間にBBルータ等が入っていたらNAPTが影響していると思います (NAPTされるとALG機能があるルータ以外はftpdataのコネクションを張れないので) No.2の方が書かれているようにpasvモードでうまくいけばそれが原因でしょう http://oshiete1.goo.ne.jp/qa4745424.html のようにログインに時間がかかる場合はDNSの逆引きが影響していますが、タイムアウトまで待つのはあくまでもFTPサーバ側なので、クライアント側ではタイムアウトの調整はできません
補足
ログインは通常通りですので,考えられるのはpasvモードとかの影響でしょうか.もしくは正常にDNSを引っ張れていないのでしょうか. また同じローカルネットワーク内にある別windowsからサーバAにログインするとリストが取得することができるため,ネットワーク間のルータではないと思われます. よくわかりません.
- superside0
- ベストアンサー率64% (461/711)
サーバー側の設定が変わったとか、 中継しているゲートウェイ(ルータ)のどこからフィルタリングされるようになったとは考えられませんか? とりあえず、ftpでconnectできて、user/passwordの認証までOKなら、 ・"ftp> "といったプロンプトさえもなかなか帰ってこないときは、クライアントのIPアドレスが逆引きできないってことが多いので、ftpクライアント側としてはタイムアウト時間を延ばす程度しか対策はないかも。 ・プロンプトはでるが、lsして応答がないときは、パッシブモードと、アクティブモードの切り替えを試す としては、どうでしょう。 もしかして、サーバー側でパッシブ用ポートを使い切っているということも あり得ます。
補足
サーバAにログインし,リモートディレクトリ内,もしくはローカルディレクトリをcd(!cd)することはできます.しかしながらpasswdコマンドの権限がないため,superside様の最初の提案方法は確認できませんでした. また逆引きに関しては,cdの応答をみると以前と変わらずの反応なのでリモート側でタイムアウト時間を変更しているわけではないと考えられます. 同様にrmコマンドもリストが取得できないため,実行できません.しかしながらcdは正常に通るのですが,不思議です. 私は数年来Linuxを使っている(ローカルネットワークのぶら下がり)のですが,Windowsは初心者のため,passiveモードやactiveモードの設定方法を知りません.もしよろしければヒントをくだされば幸いです. 一応ネットで少し調べています.キーワードの「passive mode active windows setting ftpd」などの順列組み合わせで試みているのですが,なかなか回答に出会っていません.また以下のページをみているのですが,よく理解できていません. http://www.atmarkit.co.jp/fwin2k/win2ktips/118ftpmode/118ftpmode.html http://sakaguch.com/FTPserver.html 上のリンクの説明の通り,「コントロールパネル」->「インターネットオプション」->「詳細設定」内のFTPに関連してそうな「パッシブFTPを使用する」項目にチェックがついています.このチェックを外していいのかわからないため(はずすとPORTモードになるのでしょうか),実行していません. ズブの素人ですので,ご教授お願いいたします.
- OKwebb
- ベストアンサー率44% (92/208)
サーバAの設定もしくはサーバAと接続するネットワークが変更になったこともありえます。 他PCを使って接続してみるのも1案です。 それと質問中の 未解決と解決できず ってのは同じ意味ですか?
補足
他のPCで確認しました.サーバAにログイン,リスト習得できました,ですのでリモートの設定変更ではないと思います. 未解決と解決できずは同じです.紛らわしい書き方をしてすみません.
お礼
上記のURLを読んでもWindows(とネットワーク管理)素人の私が,理解できなかったのですが,774danger様の指摘されたWindows fire wallの機能も依存するのだと知り,試しに次の2箇所の設定を初期設定に戻すとうまく行きました.774ddanger様,OKwebb様,superside()様,アドバイスありがとうございます. ◎「コントロールパネル」->「Windows ファイアウォール」->上のタブの「詳細設定」->下の項目内の「既定値に戻す」をクリック ◎「コントロールパネル」->「インターネットオプション」->上のタブの「詳細設定」->フレーム外の「詳細設定を元に戻す」ボタンをクリック これでFTPソフトやcygwinでのファイル転送が可能になりました.もしかしたらファイアウォールを初期設定に戻すだけでも大丈夫かもしれませんが,,,,