- PR -

ftp転送が可能なwebサイトのNTFS権限について

投稿者投稿内容
しん
常連さん
会議室デビュー日: 2004/10/08
投稿数: 20
投稿日時: 2004-10-08 17:47
質問をさせて頂きます。

・質問
  ftp転送が可能なwebサイトを構築したいのですが、その際に
 webコンテンツを保存するフォルダは、どのようなNTFSアクセス権を
 持たせるべきなのでしょうか。

・環境

  Windows Small Business Server 2003 standard edition
  ( Windows Server 2003 と同じと考えてもらって差し支えありません)

  ftp サーバーは、 Active Directory を使用したユーザー分離サイトです。

・設定状況

  先ほど、パーティションを割り当て、フォーマットしたばかりの E: 上に、
 E:\SITE\TOP
 というフォルダを作り、ここへ .html ファイルや .asp ファイル等、
 web コンテンツを保存して、また外部から web アクセス及び
 ftp アクセスを行う予定です。

 この \SITE\TOP フォルダに割り当てるべき NTFS アクセス権について
 どなたかご教授お願い頂けませんでしょうか。

・私なりの確認事項

  C:\Inetpub\ftproot への ftp アクセスは正常にできます。
  C:\Inetpub\wwwroot への web アクセスは正常にできます。
  C:\Inetpub\wwwroot への ftp アクセスはログオンのみ可能で、
   アップロードができませんでした。

  E:\SITE\TOP への ftp アクセスは、
   cannot login , home directory inaccessible と表示され
  アクセス自体できません。
  ( iisftp.vbs スクリプトを使用し、 ftp 用アカウントの ftpdir, ftproot
   を [ E:\SITE\TOP ] に割り当てています。)

  E: をフォーマットして作成したばかりなので、フォルダの NTFS アクセス
  権限が白紙であることが原因だと思うのですが、どのように NTFS アクセス権
  を構成したら、 ftp 転送が可能な Web サイトが構築できるのかわかりません
  でした。

 長くなってしまいましたが、どなたか、アドバイス等ご教授お願い致します。
Mattun
ぬし
会議室デビュー日: 2004/08/10
投稿数: 1391
投稿日時: 2004-10-09 08:10
Windows2000+IISでのFTPサーバ構築は何度かやったことあるけど、
2003+IIS+FTP固有の部分についてはほとんど触ったこと無いので
想像が含まれてます。


純粋にIISとWindowsServerの問題ですから、
Insider.NETの話題というより、Windows Server Insider向けの話題でしょうね。

FTPでファイル/フォルダを読み取るためには、以下が必要。
・IIS側の設定で読み取りが許可されている
・FTPでログオンするユーザ(かそれが含まれてるグループ)に対し、
 FTP公開しているフォルダへのNTFSアクセス権 読み取りがある

FTPでファイル/フォルダを書き込むためには、以下が必要。
・IIS側の設定で書き込みが許可されている
・FTPでログオンするユーザ(かそれが含まれてるグループ)に対し、
 FTP公開しているフォルダへのNTFSアクセス権 書き込みがある

引用:

cannot login , home directory inaccessible と表示され
アクセス自体できません。


ってエラー自体はログオンする際のホームディレクトリに対して読み取りアクセス権が
無いからだろうと思いますので、NTFSのアクセス権を確認してください。
WindowsServer2003の場合、デフォルトで割り当てられているNTFSアクセス権は
結構厳しいものになってますし。

書き込みについては、NTFSアクセス権の確認も必要ですが、IIS側での設定も忘れずに。

[ メッセージ編集済み 編集者: Mattun 編集日時 2004-10-09 08:30 ]
しん
常連さん
会議室デビュー日: 2004/10/08
投稿数: 20
投稿日時: 2004-10-09 14:10
ご教授有難う御座います。
お早い回答に嬉しく思っております。
今回の内容は、 Windows Server Insider 向けということですが、
そちらへ移動することは可能なのでしょうか? 会議室初心者なもので
申し訳ありません。

今回の作業結果及び不明点は以下の通りです。

・作業結果

 「 E:\SITE 」に「 C:\Inetpub 」と同じ NTFS アクセス権を設定したところ、
無事 FTP アクセスができるようになりました。(実際には、「 E:\SITE\ 」の
NTFS アクセス権を継承した「 E:\SITE\TOP 」へ FTP アクセスをしています。)
Mattun様のご指摘にありますように、 「 E:\SITE 」の NTFS アクセス権に
FTP 用アカウントが所属するグループ「Users」を読み取り・書き込み可能な状態で
追加した為、成功したのだと思われます。また、 IIS 側では、 FTP サイトを
作成する際に書き込みを許可するよう設定しています。(読み取りはデフォルトで
許可する設定だったはず。)
ご教授有難う御座いました。

・不明な点

 今回、 FTP アクセスが可能となった「 E:\SITE\TOP 」ですが、更に
Web アクセスも可能にしたいと考えています。その為には、どのような
アクセス権を構成すればよいのでしょうか。匿名のユーザーが Web ブラウザで
閲覧したり、特定のユーザーが FPSE アクセスしたりできるように
したいと考えています。

・私なりの考え

 「 C:\Inetpub\wwwroot 」のNTFS アクセス権を「 E:\SITE\TOP 」のNTFS アクセス権に差分追加する形になるのでしょうか?
「 C:\Inetpub\wwwroot 」は、 Web アクセス、FPSE アクセスが可能な状態です。

 また、もしお手数でなければ、今回、「 C:\Inetpub 」から「 E:\SITE 」へ丸写しすることになった NTFS アクセス権について、どのような意味があるのかご教授頂けると嬉しく存じます。 もし宜しければ、対象となる NTFS アクセス権をここにリストアップしますので、それに返信する形でご教授頂きたいと考えておりますが、宜しいでしょうか?
Mattun
ぬし
会議室デビュー日: 2004/08/10
投稿数: 1391
投稿日時: 2004-10-09 14:24
引用:

 「 C:Inetpubwwwroot 」のNTFS アクセス権を「 E:SITETOP 」のNTFS アクセス権に差分追加する形になるのでしょうか?


C:\inetpub\wwwroot\と同じアクセス権をE:\SITE\TOP\に与えてやれば、
少なくともHTTPでのアクセスは可能になるでしょう。
あとはFTPで必要なアクセス権を付与してやればいいだけです。

Windows2003でのwwwrootのデフォルトのアクセス権は
Administrators、SYSTEM: フルコントロール許可
Users、IIS_WPG: 読み取り・実行許可
インターネットゲスト: 書き込み拒否
あたりだったと思いますから、あとはFTPでの書き込みを許可するユーザへの
書き込み許可のアクセス権を付与すれば大丈夫だと思います。
しん
常連さん
会議室デビュー日: 2004/10/08
投稿数: 20
投稿日時: 2004-10-09 15:08
Mattun様

またまた素早いご返信有難う御座います!

ご教授頂いた通りに作業してみようと思います。


引用 ----

 Windows2003でのwwwrootのデフォルトのアクセス権は
 Administrators、SYSTEM: フルコントロール許可
 Users、IIS_WPG: 読み取り・実行許可
 インターネットゲスト: 書き込み拒否

----

 今調べたところ、上記の通りでした。
ただ、インターネットゲストについては、読み取りと実行が許可されていました。
この実行の意味がよくわからないのですが、外した方が良さそうな気もしています。
またこの他に、INTERACTIVE、NETWORK、NETWOEK SERVICE、OWS〜といった4つの
グループがあるのですが、どれも「フォルダの内容の一覧表示」のみです。
詳細設定で特殊なケースも定義されているようですが、
これらの意味がよくわからず、困惑しております。
NTFS アクセス権の意味については、後日、改めて
Windows Server Insiderの方へ質問をまとめさせて頂こうと思うのですが、
その時はまた気づかれる点など御座いましたら、ご指摘お願い致します。
それでは、作業結果が出次第、また書き込ませて頂きます。
取り急ぎお礼まで。
しん
常連さん
会議室デビュー日: 2004/10/08
投稿数: 20
投稿日時: 2004-10-10 04:46
ご教授頂いたように設定を行いました。
作業結果を報告します。
また、疑問点があり、もし宜しければ、今一度ご教授お願いしたく存じます。

・作業結果

 「 E:\SITE 」にwwwrootと同じ権限を割り当て、また更に Ftp アクセスに必要なアクセス権を割り当てました。(「 E:\SITE\TOP 」はその継承だけ行う形にしました。)
Ftpに必要なアクセス権として、Usersグループの特殊なアクセス許可を次のように割り当てました。(セキュリティタブの詳細設定にて追加を行いました。)

 種類:許可
 名前:Users
 アクセス許可:特殊
  (フォルダのスキャン/ファイルの実行、属性の読み取り、
   ファイルの作成/データの書き込み、フォルダの作成/データの追加、
   アクセス許可の読み取り)
 継承元:継承なし
 適用先:このフォルダとサブフォルダ

 この状態で 「 E:\SITE\TOP 」へ Ftp アクセスを行い、ファイルのアップロードを試してみたところ、正常にアップロードできました。
 しかし、削除ができませんでした。

・追加設定(削除を行えるようにする為)
 ftproot と何が違うか、調べた結果、 ftproot では CREATOR OWNER が定義されていました。そこで、「 E:\SITE 」でも同様に CREATOR OWNER を定義しました。
以下のように設定しました。(セキュリティタブの詳細設定にて追加)

 種類:許可
 名前:CREATOR OWNER
 アクセス許可:フルコントロール
 継承元:継承なし
 適用先:サブフォルダとファイルのみ

 これで、「 E:\SITE\TOP 」への Ftp アクセスでアップロードしたファイルも削除できるようになったのですが、疑問が生まれました。

・疑問

 今回、Ftp アクセスでアップロードしたファイルを削除できるようにする為に、 CREATOR OWNER の権限を設定しました。今回は偶然この設定で成功しましたが、 CREATOR OWNER とはどういうユーザーを指しているのでしょうか? また、今回のように Ftp アクセスしたユーザーに削除の権限を持たせたい場合、もっと手軽な(必要最低限な権限での)方法はないのでしょうか?
 直感的には、前述した Users のアクセス権の設定の中に、「フォルダとファイルの削除」か「削除」という権限のチェックを追加すればよいような気がするのですが、この二つのどちらを追加するのかわからず、またこの方法案が正しいのかもわかりません。
Mattun
ぬし
会議室デビュー日: 2004/08/10
投稿数: 1391
投稿日時: 2004-10-10 08:25
引用:

・疑問

 今回、Ftp アクセスでアップロードしたファイルを削除できるようにする為に、 CREATOR OWNER の権限を設定しました。今回は偶然この設定で成功しましたが、 CREATOR OWNER とはどういうユーザーを指しているのでしょうか? また、今回のように Ftp アクセスしたユーザーに削除の権限を持たせたい場合、もっと手軽な(必要最低限な権限での)方法はないのでしょうか?
 直感的には、前述した Users のアクセス権の設定の中に、「フォルダとファイルの削除」か「削除」という権限のチェックを追加すればよいような気がするのですが、この二つのどちらを追加するのかわからず、またこの方法案が正しいのかもわかりません。



Creator Ownerについては以下に書いてあるとおり。
要するにファイルを作成したユーザを指します。
http://www.atmarkit.co.jp/fwin2k/win2ktips/307sid/sid.html

どういうユーザがFTP接続するのか、そのユーザは1つだけなのか複数存在するのか、
によって、どう設定すべきなのか変わってきます。

例えば単一のユーザのみがアクセスするのであれば、そのユーザ自身もしくは
そのユーザを含むグループへ削除までの権限を与えればよいです。
複数のユーザがアクセスする、かつ他のユーザが作成したファイルも削除可能な
状態にする、のであれば、それらのユーザに対して単純に削除までの権限を
与えればよいです。
複数のユーザがアクセスするが、他のユーザが作成したファイルは削除されちゃ困る、
自分の作成したファイルだけ削除させたい、という場合は、
CreatorOwnerに削除までの権限を、FTP接続するユーザへ作成までの権限、です。

あと、良く考えずにフルコントロールを割り当てない方がいいです。
今回の場合「削除ができるように」なんだから、変更で十分なはずです。
しん
常連さん
会議室デビュー日: 2004/10/08
投稿数: 20
投稿日時: 2004-10-10 09:15
 ご回等ありがとうございます。よくわかりました。

 「 E:\SITE\TOP 」には、単一のユーザーしかアクセスしませんが、今後 FPSE などによるシステムが自動で作成するファイルも含まれると思いますので、 CREATOR OWNER の権限を使おうと思います。


・不明点
 削除まで、ということですが具体的にはどのようなアクセス権の設定になるのでしょうか。「 E:\SITE 」のプロパティを開き、セキュリティタブの詳細設定にて CREATOR OWNER の編集を選ぶと、以下のような NTFS アクセス権のチェックボックスが並びます。

・「 E:\SITE 」の CREATOR OWNER の NTFS アクセス権(詳細)
  適用先は「サブフォルダとファイルのみ」

1. フル コントロール
2. フォルダのスキャン/ファイルの実行
3. フォルダの一覧/データの読み取り
4. 属性の読み取り
5. 拡張属性の読み取り
6. ファイルの作成/データの書き込み
7. フォルダの作成/データの追加
8. 属性の書き込み
9. 拡張属性の書き込み
10. サブフォルダとファイルの削除
11. 削除
12. アクセス許可の読み取り
13. アクセス許可の変更
14. 所有権の取得
 (連番は説明の為ふっています。)

 この権限の適用先は「サブフォルダとファイルのみ」にしているのですが、
 (「 C:\Inetpub\ftproot 」の CREATOR OWNER と同様)
「11.削除のみにチェックを行う」、ということでよろしいのでしょうか?
(どうして「 10. サブフォルダとファイルの削除 」があるのかわかりませんでした。また他の権限は必要ないのかどうか、判断つかない状況です。)

NTFS アクセス権はいろいろ設定できて便利そうなので、今後、是非覚えていきたいと思っております。
何度も済みませんが、またご都合の宜しい時で構いませんのでご教授お願い頂ければ幸いに存じます。

スキルアップ/キャリアアップ(JOB@IT)