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

????????????????????¨????°???¨??§????????°???????¨??????¬???????????°?????±??????????????§??????

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

 Webスペースを貸し出す方法
????????? 2005/06/11 21:24
????????? Jacktis

はじめまして。

私は今自宅サーバーでHPを公開しており
友人にWebスペースを貸そうと思っております。

そこで質問なのですが、他人にWebスペースを貸し出す際
HPを置くディレクトリは何処に設置するのが良いでしょうか?
また、FTPでの接続の際のパスワードやアカウント等は
どのように設定するのでしょうか?FTPDはvsFTPDを使用しています。

よろしくお願いします。

■ コンテンツ関連情報

 Re: Webスペースを貸し出す方法 ( No.1 )
????????? 2005/06/11 21:58
????????? 管理者

Jacktis様、はじめまして。

Webスペースを貸し出すには一番良い方法はユーザページを割り当てるのが良いと思います。
(いわゆる、「~user/」見たいする方法です。)
この時、ユーザのログインはchrootにして、ユーザパス以外に移れなくさせます。
また、ログインもtelenetは許さなくさせます。
確か、ログインシェルをnologonにすれば、telnet不可、ftp可に出来た気がします。
 Re: Webスペースを貸し出す方法 ( No.2 )
????????? 2005/06/14 20:09
????????? Jacktis

こんばんは。

変身が遅くなり申し訳ございません。
返信ありがとうございます。
chrootでやりログインシェルをnologinにし、
無事ユーザーページを作る事が出来ました。
そしてFTP設定も出来たのですが初期ディレクトリを/home/ユーザ名/から
/home/ユーザ名/public_html/にしたいのです。
どのように設定すれば良いのでしょうか?

 Re: Webスペースを貸し出す方法 ( No.3 )
????????? 2005/06/14 21:34
????????? 管理者

ユーザ情報を変更(ログインパス)するには、管理者権限(root)で以下のコマンドを実行してください。

# usermod -d /home/ユーザ名/public_html ユーザ名

注意が必要なのは、ログインパスは自動的には作成されないので「public_html」を手動で作成してください。
この時、パスのオーナとアクセス権(ホームページ公開する場合の推奨)は以下の様にします。

# mkdir /home/ユーザ名/public_html
# chown ユーザ名:ユーザ名 /home/ユーザ名/public_html
# chmod 755 /home/ユーザ名/public_html

以上で、ログイン時のパスが公開パスと一致します。
 Re: Webスペースを貸し出す方法 ( No.4 )
????????? 2005/06/15 10:01
????????? 管理者

補足

公開パス直下「/home/ユーザ名/public_html」に、掲示板など、apacheから書き込みが発生する場合は
アクセス権は以下のようにして下さい。

# chmod 757 /home/ユーザ名/public_html

厳密には、「/etc/httpd/conf/httpd.conf」の中にある以下の項目に依存します。

User apache
Group apache

上記の様にGroupがapacheの場合は、以下の様にグループをapacheにして、
アクセス権の「other」はアクセス権なしにするのが理想です。

# chown ユーザ名:apache /home/ユーザ名/public_html
# chmod 770 /home/ユーザ名/public_html

しかし、普通に作ったユーザーは、下記のようになっています。
user:ユーザ名
group:ユーザ名

ftpでアップロードすると(例としてindex.html)サーバに置かれたファイルのパーミッションは
下記のようになります。(※:umask が022の場合)

-rw-r--r-- 1 linux linux 72 6月 15 04:35 index.shtml

問題なのが、パスのアクセス権「other」にread/writeがなくなるので、下記の様なメッセージが出力されてページ
が表示出来なくなってしまいます。

Forbidden
You don't have permission to access /~ユーザ名/xxxxx on this server.


そこで、ユーザのグループをapacheに変更してあげれば解決します。

# usermod -g apache ユーザ名

※)
「/home/ユーザ名」のパスから配下のパスまで、所有者・グループにアクセス権を与えてあげてくださいね。
デフォルトの「/home/ユーザ名」は「drwx------」となっています。
 Re: Webスペースを貸し出す方法 ( No.5 )
????????? 2005/06/15 18:55
????????? Jacktis



返信ありがとうございます。
FTPの初期ディレクトリをpublic_htmlにできたのですが、
このようにすると/~user/でファイルが表示されなくなってしまいます。
(HTTP 404 - ファイル未検出 このようになります。)
FTPの初期ディレクトリをpublic_htmlにし、/~user/で表示できるように
する事はできますか?

 Re: Webスペースを貸し出す方法 ( No.6 )
????????? 2005/06/15 18:59
????????? わた

それはアパッチの設定ですね。
httpd.conf

ユーザーディレクトリのところです。

/etc/gttpd/conf/httpd.conf の設定ですね。

 Re: Webスペースを貸し出す方法 ( No.7 )
????????? 2005/06/16 16:02
????????? 管理者

ftpに関する設定は上記で説明させて頂いたので、割愛させて頂きます。

ユーザホームページ「/~ユーザ」を公開させる為に関する部分
apache設定ファイル:「/etc/httpd/conf/httpd.conf」

# The path to the end user account 'public_html' directory must be
# accessible to the webserver userid. This usually means that ~userid
# must have permissions of 711, ~userid/public_html must have permissions
# of 755, and documents contained therein must be world-readable.
# Otherwise, the client will only receive a "403 Forbidden" message.
#
# See also: http://httpd.apache.org/docs/misc/FAQ.html#forbidden
#
<IfModule mod_userdir.c>
  #
  # UserDir is disabled by default since it can confirm the presence
  # of a username on the system (depending on home directory
  # permissions).
  #
  UserDir enabled ユーザ名  ← 公開させたいユーザ名

  #
  # To enable requests to /~user/ to serve the user's public_html
  # directory, remove the "UserDir disable" line above, and uncomment
  # the following line instead:
  #
  UserDir public_html     ← 「/~ユーザ」でアクセスされた時のファイルの場所

</IfModule>

ユーザホームページのアクセス設定
#
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
#
<Directory /home/*/public_html>
  AllowOverride FileInfo AuthConfig Limit
  Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
  <Limit GET POST OPTIONS>
    Order allow,deny
    Allow from all
  </Limit>
  <LimitExcept GET POST OPTIONS>
    Order deny,allow
    Deny from all
  </LimitExcept>
</Directory>


共通設定
#
# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
# The index.html.var file (a type-map) is used to deliver content-
# negotiated documents. The MultiViews Option can be used for the
# same purpose, but it is much slower.
#
DirectoryIndex index.html index.shtml index.html.var ← URLの末尾が「/」でアクセスされた時、表示させるファイル


上記の設定になっていますでしょうか?
 Re: Webスペースを貸し出す方法 ( No.8 )
????????? 2005/06/16 21:49
????????? Jacktis

こんばんは

ApacheのUserdir設定を./に変えたところ、
~ユーザ名/でアクセスできるようになりました。

管理者様、わた様、ご丁寧にありがとうございました。

■ その他

ページ先頭へ


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