はじめての自宅サーバ構築 - Fedora/CentOS -
Last Update 2018/05/30
[ 更新履歴 ] [ サイト マップ ] [ 質問掲示板 ] [ 雑談掲示板 ] [ リンク ]
トップ >> 質問掲示板

 FTPによるコンテンツのアップロードについて
日時: 2005/03/03 21:07
名前: くまさん

こんばんは。現在Fedora core 3でwebサーバーを構築しているのですが、
ドキュメントルートがデフォルトで
/var/www/html であるため、FTPによるアップロードができなく、解決方をしらべたところ、
http://www.servj.com/pc/howto/ftp.html
などを見ると /var/www を 作業ユーザーのホームディレクトリにする方法が
紹介されていますし、
http://kajuhome.com/
このサイトでも、若干違うながら、やはり作業用ユーザーのホームにするような
方法で解決しているみたいです。(理解がまちがってたらすみません。)

FTPへ匿名のアクセスを許可すると、/ftp/pub が開きますし、
匿名アクセスを許可しないと、ユーザー名・パスワードの入力が求められ、入力すると
/home/ユーザー名 が開きます。

windows のフォルダ共有であれば(FTPではありませんが・・・・・・)
公開するフォルダをそうでないフォルダを明示的に区別できますが、
vsFTPDでFTPサービスを行っている場合に、誰がアクセスした場合に、どの部分が開く
のかという対応がよくわかりません。

最初、匿名アクセスを禁止して、root で ftp アクセスをしましたが、
ルートのホームである /root は開きませんでした。
それどころかどこにもftpアクセスできません。
一方一般ユーザーuser01でアクセスしたら、/home/user01 が開きました。

ftpアクセスは一般ユーザーか匿名 でしかできず、
その場合はユーザーのホームか /ftp/pub が開くだけなのでしょうか?


また、vsftpd.confの中で、
 一般ユーザはホームパスより上へアクセスさせない
 chroot_list_enable=YES
という部分がありますが、これがNOの場合、/home/ユーザー名 以外の場所にも
ftpアクセスが可能になるのでしょうか?




メンテ

Page:  [1]

■ コンテンツ関連情報

 Re: FTPによるコンテンツのアップロードについて ( No.1 )
日時: 2005/03/04 13:35
名前: PINE

私も未だ初心者の域ですので、簡単な説明しか出来ませんが
vsFTPDでは初期設定でrootのログインは禁止されています。
rootはなんでもありのスーパユーザなので、そんなスーパユーザのログインはセキュリテイ上危険だからです。
Linuxではパーミッションと言う概念で共有は全てのフォルダ、ファイル共に設定され、
自分自身、同じグループ、それ以外の3段階で設定されています
chmodで指定する755とか644とかです

例えばuser01でログインした場合、ユーザ作成時にホームディレクトリの指定を特にしなければ
vsFTPDでログインしたら/home/user01がホームになりますし、
chroot_list_enable=YESを指定しなければ、ご質問どうり他のディレクトリも覗けますが
パーミッションの関係でアップロードは出来ないと思います。

私が思うに例えばwebと言うユーザーを作り
そこのホームディレクトリに、例えばpublic_htmlと言うディレクトリを作成し
/home/web/public_html
をApacheのDocumentRootにしてみては如何でしょうか?

誤った回答をしておりましたら、ツッコミ宜しくお願いします>皆さん
メンテ
 Re: FTPによるコンテンツのアップロードについて ( No.2 )
日時: 2005/03/04 17:35
名前: くまさん

ありがとうございます。
/etc/vsftpd.user_list
/etc/vsftpd.ftpusers
にあるrootを消したら、rootによるFTPログオンが可能になりました。
(ただ、セキュリティ上問題があるので、デフォルトに戻しましたが・・・)

どうやら、FTPではユーザーのホームを中心とした相対パスで
ほかのディレクトリにもアクセスが可能になるようですね。

例えば、user01でアクセスした場合

/home/user01 は
ftp://hoge.domain.local/

/var/www/html は
ftp://hoge.domain.local/../../var/www/html

FTPではパーミッションが適切であるという条件 + vsftpdの設定ファイルの変更
ですべてのディレクトリ、ファイルにアクセスが可能になり、
Windowsのファイル共有のように、公開する資源としない資源を明示的に区別
しないような感じです。
共有 のアクセス権と
NTFS のアクセス権があり、NTFSで当該ユーザーにアクセス権があっても
共有でアクセス権がない場合、ローカルでは可 リモートでは不可
になるのですが、chmod や chown などで パーミッションを変更すれば
ローカル・リモートを区別しないことがわかりました。

UNIXをやりこんでいる人にはあたりまえでも、ついWindowsとの比較で
考えてしまうことが多く、とまどうことがあります。
さらに勉強したいと思いますが、基本書にもここらへんにもっと触れてほしい気が
します・・・・・・・
メンテ

Page:  [1]

題名
名前  ("初心者"を含む名前は使用できません)
E-Mail
URL
パスワード 記事メンテ時に使用)
投稿キー (投稿時 投稿キー を入力してください)
コメント
画像添付 (対応画像:JPEG/GIF/PNG [Max 500KB])

   クッキー保存

■ その他


Copyright(©)2004-2018 First home server construction. All Right Reserved.