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

 このスレッドはクローズされています。記事の閲覧のみとなります。

 FTPでの基本的なユーザー権限・パーミッションについて
日時: 2007/07/05 21:01
名前: ほうせい

①不明点・障害内容:ファイル所有権に関する問題
②ログの有無   :
  (有:その内容):
③Distribution  :Fedora
      Version:Core6
④Service Name  :Apache
      Version:2.2.4
⑤ネットワーク構成:固定IP所有、ルーター内にネットワーク構築してます。


管理者様、その他の皆様、こんにちわ。

初歩的なことだと思いますがCGIのパーミッションに関連する
ファイルのオーナ・グループのことで理解できない部分がございまして、
よろしければ、ご教授頂けたらと思います。


FTP(アカウントlinuxでログイン)でファイル転送する時に
/var/www/html/ の所有者がapache:apacheのままでは書き込みが出来なかったので
/var/www/html/ の所有権をlinux(一般ユーザー)に変更しました。

chown -R linux:linux /var/www/html/  ←変更した時入力したコマンド

それ以降どうにもCGIの書き込みに関する動作のみ動かないようなのです。
動作はするのですが、書き込みだけが出来ません。

すぐに元々設定していたapache:apacheに戻すとCGIから書き込みできるようになりました。
しかし再びFTPでファイル転送の際に書き込みが出来なくなりました。

chown -R apache:apache /var/www/html/

通常 /var/www/html/ はどのような所有権にしておくのがよろしいのでしょうか?

今後も/var/www/html/以下にバーチャルホストのディレクトリを追加していく予定です。
FTPアカウントを外部スタッフ人数分用意することも考えています。



ちなみにhttpd.confは以下のようになっています。
  user apaceh
  group apache

このuserとgroupの設定を<Virtualhost>内に書き込んで
ユーザーごとに個別に設定するのかな?と思っていたらだめでした。
調べているうちに SuexecUserGroup で可能なことがわかりました。

<VirtualHost *:80>
  ServerName example.com
  SuexecUserGroup linux linux
</VirtualHost>

上記の設定でFTPで書き込みも出来てCGI側の書き込みも動作する状態は作れたのですが
これから1サイトに対して2〜3のFTPアカウントが必要になったときこれでは無理がある気がするのです。
というかそれ以前に基本的なパーミッションの理解が出来ていないのかもしれません。

レンタルサーバーなどの所有者がユーザーで、
CGIも705で書き込み動作するものなどは、どのようになっているのでしょうか?
できれば同じ設定で複数FTPアカウントにも対応したように構築したいと思っています。



関連すると思われる過去の質問

http://kajuhome.com/cgi-bin/patio/patio.cgi?mode=view&no=749
http://kajuhome.com/cgi-bin/patio/patio.cgi?mode=view&no=356
http://kajuhome.com/cgi-bin/patio/patio.cgi?mode=view&no=168&p=1


よろしくお願いいたします。
メンテ

Page:  [1] [2]

■ コンテンツ関連情報

 Re: FTPでの基本的なユーザー権限・パーミッションについて ( No.6 )
日時: 2007/07/07 21:31
名前: ほうせい

管理者さま、いつもお世話になっております。

> rootでFTP利用は危険ですのでSSH(SCP)で行います。
ありがとうございます。しかし今回はFTPでの利用のみを考えています。

あれから自分なりにいろいろ調べて、現在は以下のように設定して動作しております。
結局apache側から書き込めない問題はSuexecUserGroupを利用することにしました。

グループ 「webuser」作成。
バーチャルホスト一つ追加するごとに1ユーザー追加、ここでは「virtual」とします。
ユーザー「virtual」はグループ「webuser」に追加します。

<VirtualHost *:80>
  ServerName virtual.com
  SuexecUserGroup virtual webuser
  DocumentRoot /home/virtual/public_html
</VirtualHost>

<VirtualHost *:80>
  ServerName virtual2.com
  SuexecUserGroup virtual2 webuser
  DocumentRoot /home/virtual2/public_html
</VirtualHost>

......

セキュリティーの面で大変参考になりました。
色々ご指導していただきありがとうございました。
メンテ

Page:  [1] [2]

■ その他

ページ先頭へ

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