今だけ人気マンガ100円レンタル特集♪

はじめまして、こんにちは。
非常に困っているので教えてください。
Win 2000 serverでIISを動かしてFTPサーバをたちあげたのですが、「既定のFTPサイト」の中で「仮想ディレクトリ」を3つ作成しました。
1つはエイリアス名「test」でパスは「C:\\test」
2つ目はエイリアス名「ftproot」でパスは「C:\\inetpub\ftproot」
3つはエイリアス名「test2」で「D:\\test2」
です。
クライアントからはFFFTPで接続し、ホストの初期フォルダを「/www/test」、「/www/ftproot」、「/www/test2」、「空白」のどれで接続してもなぜか、「C:\\inetpub\ftproot」にしか接続できません。
なぜなのでしょうか。
また共有設定で「読み込み」「書き込み」設定をしているのに、なぜか読み込みしかできません。

分かる方がいれば教えてください。
よろしくお願いします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

まず、ホストの初期フォルダパスですが


「/www/test」「/www/ftproot」「/www/test2」
ではなく、
「/test」「/ftproot」「/test2」
ではないでしょうか。

存在しないフォルダを指定しているので「既定のFTPサイト(=C:\inetpub\ftproot)」が
表示されているのだと思われます。
(2番目仮想ディレクトリ「ftproot」が表示されているわけではない。)

あなたの指しているパスの通りだとすると、「既定のFTPサイト」の下の
「www」というディレクトリ、もしくは仮想ディレクトリの下に上記3つの
仮想ディレクトリを作成していなければなりません。

次に書くことはやらなくてもいいですが、上記の内容に関連したテクニックで、
仮想ディレクトリを作成したルートサイトの物理フォルダに、作成した仮想ディレクトリの
エイリアス名と同じ名前の空フォルダを作ってやるとFTPクライアントから
ルートサイトにアクセスした際にフォルダが表示され、そのフォルダをクリック
することにより仮想ディレクトリにアクセスできるようになります。

今回の場合、既定のFTPサイトの物理フォルダである「C:\Inetpub\ftproot」の
直下に「test」「ftproot」「test2」というフォルダを作成してやればいいだけです。
そうすればFTPクライアント側で初期フォルダを指定せずともルートから辿っていけます。


話がそれましたが、アクセス権の問題ですが、FTPサーバでアクセスする際の
アクセス権を設定するのは「共有」の「アクセス許可」ではありません。
基本的に設定個所は2箇で、1点目がIISの設定でインターネットインフォメーション
サービスマネージャを開いて
「既定のFTPサイト」のプロパティを開いた「ホームディレクトリ」タブにある
「読み取り」「書き込み」「ログアクセス」のチェックボックスです。
既定で「読み取り」「ログアクセス」にのみチェックが入っていて、「書き込み」は
チェックが外れていると思うのでファイルをアップロードしたい場合などは「書き込み」
にもチェックを入れます。
この設定はディレクトリや仮想ディレクトリ単位でも行えます。

2点目は通常のアクセス権の設定でエクスプローラから対象のフォルダのプロパティを
開いた「セキュリティ」タブから設定します。
ここでFTPクライアントで接続する際のユーザーを追加してやりそれぞれアクセス権を与えてやります。

ちなみに先に「C:\Inetpub\ftproot」以下に仮想ディレクトリのエイリアスと同名の空フォルダを作成するというテクニックを
紹介しましたが、それを行っている場合は、そのフォルダに対しても
FTPで接続するユーザーの読み取り権限を与えておく必要があります。
    • good
    • 0
この回答へのお礼

大変分かりやすい説明ありがとうございます。
とても参考になりました。

お礼日時:2006/03/25 11:43

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qpingでポートの指定

pingでIPアドレスを指定して、通信できるかどうかというのは
よく使いますが、pingでポートを指定して応答するかどうかは調べられるのでしょうか?

よろしくお願いします

Aベストアンサー

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含むICMP)ではできません。

FTPの疎通確認であれば、クライアントからサーバに対するTCP/21通信(FTP-CMD)が可能であること(サーバからクライアントへのTCP/21からの応答を含む)+サーバからクライアントに対するTCP/20通信(FTP-DATA)が可能であること(クライアントからサーバへのTCP/21からの応答を含む)が必要でしょう。

監視ソフトによるものであれば、
・クライアントからサーバへのログイン(TCP/21)
・クライアントからサーバへのlsの結果(TCP/20)
で確認すればよいでしょう。

pingを含むICMPというプロトコルは、OSIの7レイヤで言うところのL2(同一セグメント内通信)とL3(IPルーティングされた通信)の両方にまたがる、ちょっと珍しいプロトコルです。

IPアドレスは指定できますが、別サブネットに属するIPアドレスに到達できればL3通信、できなければゲートウェイと呼ばれる同一サブネットに属する中継装置からの回答を得るという点でL2(MAC通信ではなく、同一セグメント内通信という意味)通信です。

ポート番号はL4で使用されるアドレスですから、L4機能の疎通確認はping(を含む...続きを読む

Qコマンドプロンプトでftpで接続したのですが

勉強のために、コマンドプロンプトでftpをしたいのです。
マシンは相手も自分もWindowsで、LANでつながっています。

ftp (IPアドレス)
と入力すると、ユーザ名とパスワードを求められ、入力すると、
ftp>
というプロンプトに変わります。

dirと入力すると、ローカルのファイルが表示されると思うのですが、

ftp> dir
200 PORT command successful.
150 Opening ASCII mode data connection for /bin/ls.
226 Transfer complete.

と表示されるだけで、ファイルは表示されません。
どうすれば表示されますか。

また、pwdと表示すると相手側のカレントディレクトリが表示されると思うのですが、

ftp> pwd
257 "/" is current directory.

と表示されます。
この"/"が相手のマシン上で実際にどのフォルダなのかは、どうやってわかりますか。

自分のマシンはWindowsXP
相手のマシンはWindows2000

勉強のために、コマンドプロンプトでftpをしたいのです。
マシンは相手も自分もWindowsで、LANでつながっています。

ftp (IPアドレス)
と入力すると、ユーザ名とパスワードを求められ、入力すると、
ftp>
というプロンプトに変わります。

dirと入力すると、ローカルのファイルが表示されると思うのですが、

ftp> dir
200 PORT command successful.
150 Opening ASCII mode data connection for /bin/ls.
226 Transfer complete.

と表示されるだけで、ファイルは表示されません。
どうすれ...続きを読む

Aベストアンサー

>「FTP Publishing Service」
それが、IISのFTPサービスです。
それが稼動しているのなら、以下の手続きで確認してみてください。

(1)スタートメニューの中から、管理ツールとかのグループで
「インターネット サービス マネージャ」が見つかればそれをクリックして起動。

(2)見つからない場合、スタートメニューから、「ファイル名を指定して実行」をクリックし、
名前に「%systemroot%\system32\inetsrv\iis.msc」を入力して「OK」をクリックして起動。

(3)「インターネット インフォメーション サービス」のウィンドウが開いたら、
左側のツリーに表示されているサーバ名の左側の「+」をクリックして展開。

(4)「既定のFTPサイト」を右クリックしてプロパティをクリックして開く。

(5)「ホームディレクトリ」タブをクリックして表示し、FTPサイトのディレクトリでパスを確認。

以上ですが、バージョンによっては微妙に文言などが変わる可能性もあります。

QIISのFTPサーバ設定に関して

IIS7.0の質問です

(1)IISでFTPサイトを作りました
(2)IISマネージャーのアクセス許可で ユーザー名パスワードを設定しました

しかし、外部からアクセスしようとすると、
ユーザー名、パスワードを問われるので、
設定したとおりに入力すると、
530 User cannot log in と 表示されます。

どうか助けてください。

Aベストアンサー

認証設定は、セキュリティ上の理由(インストール時にONに指定しない限り)デフォルトで無効になっています。

有効にしていますか?

QFTPによる接続ができません

クライアントPC(WindowsXP)からサーバーへの接続ができません。FFFTPを使って接続しようとしているのですが、いつも
ホスト 192.168.11.2←サーバー機のローカルIP (21) に接続しています→接続できません
となってしまいます。ローカルIPはあっています。念のため、無料のホームページサービスにも接続してみましたが、同じエラーでした。たぶんクライアントのほうの問題だと思われます。Windowsファイアウォールとセキュリティソフト(ウイルスセキュリティZERO)をOFFにしてもかわりません。

Aベストアンサー

ftpがスタートしていることはどうやって確認しましたか?
で、もしサーバ側がokだとしたらクライアント側のファイヤーウォールでブロックされてませんかね。
http://www.atmarkit.co.jp/bbs/phpBB//viewtopic.php?topic=23905&forum=10&start=16&23

ここでも似たような人いますね。
windowsのFWではなくsymantecのほうでブロックされてたと。
あとはここにあるL3SWやルータなどのようにポート制御できる
機器で通っていないとか。

QIIS7.0 他コンピュータへのフォルダアクセス

現在、2003Server R2 SP2、IIS6.0で稼動していたVB.Net aspのプログラムを、2008Server、IIS7.0に移行しているのですが、今まで問題なく動作していたファイルの取得が、うまくいかなくなりました。

別のファイルサーバ上(2003Server R2 SP2)に置いてあるxmlファイルを読み込むという動作をさせたいのですが、エクスプローラ上では問題なく開きます。また、VB.Net aspからのステップ実行でも正しく取得出来ているのです。
しかし、ビルドしてIISの規定のフォルダに置き、IEから呼び出すと読み込めず、ファイルが存在しない場合の処理に入ってしまいます・・
試しに2008SV側のローカル上にフォルダを置くと、正しく取得します。

・読み込むフォルダのアクセス権限をEveryOne→フルコントロールに
・2008SVでWindowsFireWallの許可対象に"WorldWideWeb(http)"を追加
 →2003SVではF/Wサービスを停止
・IIS7.0の[アプリケーションプール]
 →右クリック[詳細設定]
 →プロセスモデルのID変更
 →"NetworkService"から"LocalSystem"に変更

上記設定では試してはいるのですが、うまくいきません。
OS、IIS共にバージョンアップしてしまったので、どちらが原因なのか、調査のアタリを付ける方法でも結構です。
どなたかお知恵を貸してください。よろしくお願いいたします。

現在、2003Server R2 SP2、IIS6.0で稼動していたVB.Net aspのプログラムを、2008Server、IIS7.0に移行しているのですが、今まで問題なく動作していたファイルの取得が、うまくいかなくなりました。

別のファイルサーバ上(2003Server R2 SP2)に置いてあるxmlファイルを読み込むという動作をさせたいのですが、エクスプローラ上では問題なく開きます。また、VB.Net aspからのステップ実行でも正しく取得出来ているのです。
しかし、ビルドしてIISの規定のフォルダに置き、IEから呼び出すと読み込めず、ファイル...続きを読む

Aベストアンサー

IIS7の場合、UNC パススルー認証 を設定すればいけると思いますが、
http://support.microsoft.com/kb/214806/ja
上記は、UNCパス(ネットワークパス)にあるディレクトリを仮想ディレクトリにする方法なので、ちょっと違うのかもしれません。

また、上記に加え、UNC(外部サーバーにアクセスできるログインID)を別途作成し、web.config や問題のデータが格納されている別サーバー に作成したログインIDにアクセス権限を付与してあげればいけそうな気がします。
http://support.microsoft.com/kb/934515/

ちょっと環境がないので試してないんですが、もし上記でもダメだった場合は、またご連絡ください。

参考URL:http://support.microsoft.com/kb/934515/

QFTPエラー425

FTPで425エラーが出て困っています。
今まで繋がっていたのが突然繋がらなくなりました。
調べてみると20番ポートが遮断されている可能性が高く、
どこで遮断されているか調べる良い方法があれば教えて下さい。

・クライアント
OS:Windows 8.1、ファイアウォール: Norton Inernet Security
・サーバー(AWS)
OS:Red Hat Enterprise Linux Server release 7.1 (Maipo)
ファイアウォール:AWSのネットワークルール設定

接続は出来ていて、lsを打つとエラーになります。
サーバーにTertermでログインしてlocalhostにftpするとlsできるので、
ftpd自体に問題はなさそうです。
また、サーバー側の設定は直しておらず、突如動かなくなったので、
クライアントのファイアウォール設定が変わったのを疑っていますが、
ファイアウォールを一時停止しても解消しませんでした。
どこが悪いか原因を切り分けられるずに困っています。
原因箇所を調べる良い方法があればご教示ください。

FTPで425エラーが出て困っています。
今まで繋がっていたのが突然繋がらなくなりました。
調べてみると20番ポートが遮断されている可能性が高く、
どこで遮断されているか調べる良い方法があれば教えて下さい。

・クライアント
OS:Windows 8.1、ファイアウォール: Norton Inernet Security
・サーバー(AWS)
OS:Red Hat Enterprise Linux Server release 7.1 (Maipo)
ファイアウォール:AWSのネットワークルール設定

接続は出来ていて、lsを打つとエラーになります。
サーバーにTerterm...続きを読む

Aベストアンサー

>FFFTPで繋いでいて拡張オプションのPASVモードにチェックをつけていないのでpassiveモードではないはずですが、

クライアントソフトはActive FTPで接続しようとしているのは間違いないですね。

>WireSharkで見たところ、後ろにPASVと書かれていました。
>Wireshark結果
>3967 345.551600000 52.27.XX.XXX 192.168.0.4 FTP 105 Response: 200 PORT command> successful. Consider using PASV. ← パッシブモードになっている?

良く読んで下さい。単に「Passiveモードでの使用を検討して下さい」というメッセージです。

クライアントソフトはActive FTPで接続しようとしているものの、サーバ側がActive FTPを恐らくサポートしていないので、「Passiveモードに移行してよ」とメッセージを出した。にも関わらずクライアントはPASVコマンドを実行することもなく、LISTコマンドを実行したので「425 Failed to establish connection」、つまり「だぁかぁらぁ、データセション張ってないんだから」と返したわけです。

「Passiveモードでの使用を検討して下さい」というメッセージは柔らかな表現ですが「いいか、俺はPassiveモードしか受け付けないからな。次はPASVコマンドを打てよな。それ以外は知らんからな」と等価です。まぁ、QUITやBINARYやASCII等は受け付けてくれるとは思いますが。

>またサーバーが20番ポートにセッションを張ろうとしている形跡がありませんでした。
>これはPASVモードになっているのでしょうか?

サーバは少なくともPassiveモードしかサポートしていないようです。なので、サーバからクライアントの20/TCPにはコネクションを張らずに、21/TCPでクライアントからのPASVコマンド待ちです。PASVコマンドがクライアントから来れば、21/TCPでEntering Passive Mode (X,X,X,X,A,B)を返しますので、クライアントはサーバの(A*256+B)/TCPポートに対してSYNを送信、所謂3ウェイハンドシェイクでデータセションが繋がるという流れになります。

>FFFTPで繋いでいて拡張オプションのPASVモードにチェックをつけていないのでpassiveモードではないはずですが、

クライアントソフトはActive FTPで接続しようとしているのは間違いないですね。

>WireSharkで見たところ、後ろにPASVと書かれていました。
>Wireshark結果
>3967 345.551600000 52.27.XX.XXX 192.168.0.4 FTP 105 Response: 200 PORT command> successful. Consider using PASV. ← パッシブモードになっている?

良く読んで下さい。単に「Passiveモードでの使用を検討して下さい」というメッ...続きを読む

QDirコマンドでフォルダ内ファイルの合計サイズをだすには?(コマンドプロンプトにて)

いろいろ調べましたが不明な点があり、質問します。

WindowsのDOSプロンプトでdirコマンドを打つとフォルダ・ファイルの一覧が表示されますが、その中にファイルサイズが表示されています。
このサイズを合計できるコマンドはありませんか?
DIRコマンドのオプションを調べましたがそれらしいものが見当たりません。
具体的には
C:\xxx\配下に50個程度のファイルがあります。
その50個の合計サイズを知りたいです。
xxxフォルダの親フォルダにはアクセス不可です。

ずーっと悩んでいます。よろしくお願いします。

なお、OSはWindowsNTか2000で使用予定です。

Aベストアンサー

カレントドライブ、カレントフォルダを
C:\xxx\
にした状態で、

dir /s /a-d

/sパラメータででサブディレクトリすべてを検索
/a-dパラメータでディレクトリ以外のファイル(つまり属性に関係なくすべてのファイル

これを実行すると最後にファイルの個数とファイルサイズの合計を表示します。

もし、隠し属性のファイルは合計しないのであれば、

dir /s

だけで良いと思われます。

Qコマンドプロンプトを使ってipアドレスからコンピュータ名を知る方法

ipアドレスは分かっていますがコンピュータ名が分かりません。リモート接続ソフトなどは使えないので、それでコンピュータ名を調べることはできません。
コマンドプロンプトを使ってipアドレスからコンピュータ名を知る方法を教えてください!

Aベストアンサー

なんか回答がバラバラなので整理しましょう。
調査している自分自身が使用している端末は、Windows XPのPCであると仮定します。
また、調べるのは基本的に外部から名前解決可能な名前(No.2さんの言う"2"に相当する名前)とします。

パターン1:
対象のIPアドレスがWindows端末機で、自分が使用している端末と同じネットワークに属しているか同一のWINSサーバを参照しているとき……No.4さんの答えで検索できます。

nbtstat -A <IP Address>

パターン2:
ネットワーク管理者がDNSをきちんと管理しており、対象IPについても管理者の管理下にある場合……以下2つのいずれかの方法で検索できます。

  nslookup <IP address>

または

  nslookup -q=ptr <reverse ip>.in-addr.arpa.
  ex) 192.168.12.1 のIPを調べたい場合、以下のように入力する
  nslookup -q=ptr 1.12.168.192.in-addr.arpa.

  (DNSサーバで逆引きが設定されていないと、正しく検索できない場合があります)

パターン3:
上記以外の場合

外部から名前解決できないので、調べようがありません。または、調べてもそれが正しいホスト名である保証がありません。
そのIPの端末自体に設定されているホスト名を直接調べるしかありませんが、それには実際にそのIPの端末を操作して調べるしかありません。
つまり、No.2さんの回答となるのですが、
IPを使用しているのがWindows PCやUnixサーバなどである保証はないので、確認するコマンドはその端末の種類(OS)によって異なります。

なお、tracert (traceroute)を使用する、という回答がありますが、これはパターン1またはパターン2のいずれかまたは両方を満たしていないと表示されませんので、厳密には正しい答えとはいえません。
(たいていの場合、"tracert <IP address>" や "ping <IP address>"で用が足りてしまうことも多いので、必ずしも間違いではないのですが)

なんか回答がバラバラなので整理しましょう。
調査している自分自身が使用している端末は、Windows XPのPCであると仮定します。
また、調べるのは基本的に外部から名前解決可能な名前(No.2さんの言う"2"に相当する名前)とします。

パターン1:
対象のIPアドレスがWindows端末機で、自分が使用している端末と同じネットワークに属しているか同一のWINSサーバを参照しているとき……No.4さんの答えで検索できます。

nbtstat -A <IP Address>

パターン2:
ネットワーク管理者がDNSをきちんと管理して...続きを読む

Q文字列をsplitするSQL文を教えて下さい

SQLServer2000上で指定した文字で文字列をsplitような関数があれば教えて頂けますか?

例えば"12345.6789"という文字列を"."(ピリオド)を指定して、"12345"と"6789"という2つの文字列を取得したいと思っています。

Transact-SQLの関数リファレンスを見てみたのですが、適当なものが見つかりませんでした。
自作するしかないのでしょうか・・

Aベストアンサー

見当たりませんね~。

declare @str1 nvarchar(1),@str2 nvarchar(50)
select @str1 =N'.',@str2 = N'12345.6789'
select
substring(@str2,1,charindex(@str1,@str2)-1) as 前,
substring(@str2,charindex(@str1,@str2)+1,len(@str2)-charindex(@str1,@str2)) as 後

こんな感じにしかできないみたいです

QFTPコマンドでディレクトリごとファイル移動できるコマンドはありますか?

タイトルどおりなのですが、FTPでファイルを転送する際に、サブフォルダを含むディレクトリごとファイル転送するコマンドはありますでしょうか。
ディレクトリの中にあるすべてのファイルを移動したいのですが、サブフォルダがたくさんあるので、わざわざディレクトリの場所へ移動してmputを繰り返すのはめんどうで仕方ありません。
よろしくお願いします。

Aベストアンサー

ご使用になるOS環境が書いてないのですが、Linux,BSD等ならncftpで、get -R dir。
Windowsならffftpを使えば良いと思います。


人気Q&Aランキング