ネッ トでダウンロードしたOSで作ったPC   戻る 
  
1.インストール  
2. 色々の設定  3. サーバーの設定
  
1.FTPサーバーの設定
せっかく実用的な、Linuxマシンを作ったのでホームサーバーを作っ て遊ばない手は無いので、早速サーバーを立ち上げ
る事にしました、と言っても初めからすでにサーバーソフトがインストールされているで、ちょっと設定を自分好みに変える
だけですが、始めはコンテンツを送受信する為の ProFTPD サーバーの設定をします。

今回の Vine Linux フォルダ構成の関連部分の1部  (かっこ内はパーミッション設定値)
      --home
       +--Mako          (711)  Mako のカレントホルダ  (ftp と httpd のホルダに書き込み出きる特権アカウント)
           |      +--public_html   (755)  ユーザーホームページ置き場
           +--ftp             (750)  ftp カレントホルダ 
           |      +--pub      (770)  ファイルを転送して格納するフォルダ
           +--httpd          (755)  Web カレントホルダ (メインのホームページ置き場)
           |      +--cgi_bin (755)  CGI置き場
           +--kurumin1    (711)  kurumin1 のカレントホルダ  (自分のホルダのみ書き込み出来る一般アカウント)
           |      +--public_html   (755)  ユーザーホームページ置き場
           |             +--cgi_bin  (755)  ユーザーCGI置き場
           +--kurumin2    (777)  kurumin2 のホルダ  (一般アカウント)  

・まずサーバーを使うアカウントを3個登録
 しました、特権を持ったアカウントと一般
 のアカウント2個です。
 ( Mako   kurumin1   kurumin2 )

・特権アカウントは自分のホルダ以外の
 サーバーのFTPフォルダにアクセス可
 能能とし、一般アカウントは自分のフォ
 ダのみにアクセス可能とします。
 Anonymous の不特定多数のアクセス
 は全面禁止とします。

・上記の条件でFTPグループの登録や
 FTPソフトの設定ファイルを編集をしま
 す。

・特権アカウントをFTPグループに登録し
 ます。(左画像)
「ProFTPD の設定ファイル proftpd.conf の編集」

# 管理グループ(admin)以外はホームディレクトリ以外アクセス不可
# DefaultRoot /var/ftp   
# DefaultRoot ~ !admin
 DefaultRoot ~ !Mako
      :
# パスワードの入力ミスは3回まで
MaxLoginAttempts 2
      :
#この下に「Anonymous」の記述がありますが
#全て「#」でコメントアウトする事によって、
#Anonymous としては動作しなくなります
# A basic anonymous configuration, no upload directories.
# <Anonymous ~ftp>
#  User              ftp
#  Group            ftp
      :
・ proftpd.conf の編集は、特権アカウント
 と一般アカウントのアクセス範囲を設定
 します。
 左の例では、一般ユーザーは自分のホ
 ルダのみアクセスが出来、Mako アカウ
 ントは、FTPフォルダにアクセス出来る
 様にしています。

・パスワードのガードも設定します。

・Anonymous の不特定多数からのアクセ
 スを全面禁止の設定をします。
 (該当の項目のすべてに # を付ける)

・他はデフォルトのままです。

・出来たら ProFTPD を再起動して、他の
 PCからアクセスして確認します。
・これまでの設定で、Mako ユーザーはこのサーバーの ftp ホルダと httpd ホルダ、それに自分のカレントホルダに書き
 込みが出来て、kurumin ユーザーは自分のカレントホルダのみ書き込みが出来る様になります。
・もちろんこの条件はパーミッションの設定により変りますので、各自の条件でパーミッションの設定を変更して下さい。
2.Webサーバーの設定
次に本来の目的であるWebサーバーの設定です、これも始めから Apache2 がインストールされているので、設定ファイ
ルを環境や好みで編集するだけです。

・編集するファイルは、httpd.conf をエディ
 ターで開いて編集します。

・今回は、サーバーのメインのホームペー
 ジと、それぞれのユーザーのホームペ
 ージエリアでCGIが使える様にするのと
 indwex.html が無い時にホルダーの中
 が見えない様にする設定をしました。

・CGIについては、初めから良く使う物と
 して、カウンターと日記形式の掲示板を
 標準で準備しました。

・CGIプログラム専用の置き場、cgi_bin も
 それぞれ作りましたので、そのパスを指
 定する設定もします。

・各ホルダのパーミッションは最初に記入
 した様に設定しています。

「Apache2 の設定ファイル、httpd.conf の変更箇所」

# DocumentRoot "/var/www/html"
# ----------Webホルダ変更---------
DocumentRoot "/home/httpd"

<Directory /home/*/public_html>
    AllowOverride FileInfo AuthConfig Limit
#   Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
# ----フォルダ内を表示しない様に変更----
    Options MultiViews 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>

# <Directory "/var/www/cgi-bin">
# -------ホルダ変更と有効に変更-----
 <Directory "/home/httpd/cgi-bin">
#    AllowOverride None
#    Options None
    AllowOverride FileInfo AuthConfig Limit
    Options ExecCGI
    Order allow,deny
    Allow from all
 </Directory>

# ----------下記を追加------------
<Directory /home/*/public_html/cgi-bin>
    AllowOverride FileInfo AuthConfig Limit
    Options ExecCGI
    Order allow,deny
    Allow from all
</Directory>
# CGIを許可しないユーザーは下記を追加
# <Directory /home/xxxxxx/public_html/cgi-bin>
# Options None ← ここをNoneでCGI不可
# </Directory>
# ----------------------------

# AddHandler cgi-script .cgi
# -------CGIを有効にした--------
AddHandler cgi-script .cgi
#
・設定ファイル、httpd.conf の変更箇所は
 左の部分だけで、取り合えずメインの
 ホームページの公開と、各ユーザーの
 ホームページエリアの設定をしただけと
 言う物です。

・Webホルダ変更で、/home/httpd をメイ
 ンのホームページ公開ホルダにしまし
 た。

・各ユーザーのカレントホルダで、ホーム
 ページが開設できる様にして、Options
 の設定から Indexes を削除して、フォル
 ダを表示しない様に変更しました。

・メインユーザーのカレントホルダ内に、C
 GIプログラムを置くホルダ、/cgi-bin を
 作ったのでCGIが動く様に設定を変更
 しました。

・各ユーザーのカレントホルダ内に、CGI
 プログラムを置くホルダ、/cgi-bin を作っ
 たのでCGIが動く様に設定を追加しまし
 た。

・最後はCGIが動く様に、cgi-script の項
 目を有効にしました。

・本格的に運用するには、ログなどのホル
 ダも正しく設定して下さい。

・設定ファイルの変更が出来たら Apache
 を再起動すれば、設定が反映されます。

・良く使うCGIとして準備した物は以下の
 サイトのCGIを使わせて頂きました。

 KentWeb 様
 http://www.kent-web.com/
 
 Web Liberty 様
 http://www.web-liberty.net/
・今回テストして見たCGIは、カウンター、Webメール、日記、掲示板、チャツト、予定表、ショッピングカートです、実際設
 サンプルを、ホームサーバーにアクセスしてご覧下さい。
3.ホームページの公開テスト
・ホームページの公開テストは、以前から稼動中のWindowsサー バーで、ルーターの設定等はすでに出来ているので、
 今回立ち上げたLinuxサーバーの固定IPアドレスに変更するだけで公開出来ました。
・ホームサーバーの大きな魅力は、CGIが自由に使える事とファイル容量に制限が無いので写真などを、どんどん掲載出
 来るのが嬉しいですね。
・Linuxサーバーの魅力は、Windowsサーバーの時にちょっと困難だった、マルチユーザーでのサーバーがいとも簡単
 に出来てしまうのが面白いです、その気になれば友人や家族にサーバーエリァを普通のプロバイダーと同じ様にそれぞ
 れ違ったアカウント使って貰う事も出来てしまいます。
・ホームサーバーを運用するには、常時稼動させて置く必要が有りますが、管理人は実験目的なので気が向いた時だけ
 立ち上がっていますが、常時運転だと当然電気料金に跳ね返るリスクもあります。
1. インストー ル   2.色々の設定  3.サーバーの設定