RedHat(Linux)でCATV接続用サーバー構築
RedHat(Linux)でCATV接続用サーバー構築


5.Webサーバー(apache)のインストール

インストール時に「パッケージグループの設定」で
 [*]ネットワーク接続ワークステーション
 [*]Webサーバ
 [*]ネットワーク管理ワークステーション
 [*]カーネル開発
このようにしたのでapacheはすでにインストールされています。ただし、まだapacheの起動はされていません。apacheの設定とパソコンの起動時に自動的にapacheも起動されるように設定します。
RedHat7.1でインストールされるapacheは「Apache/1.3.19」です。

■apacheの設定(/etc/httpd/conf/httpd.conf)

#vi /etc/httpd/conf/httpd.conf

ServerAdmin root@fmv5133.catv.**.jp 適宜変更する

ServerName 210.abc.abc.abc ←#ifconfigでinet addr:で表示されているマイサーバーのIPを指定する

<Directory />
# Options FollowSymLinks  ←この行を下に変える
Options All       ←上の行をこれに変える
#AllowOverride None  ←この行を下に変える
AllowOverride All   ←上の行をこれに変える
</Directory>
CGIやSSIが使えるようになります。
この設定はセキュリティーが甘くなります。

#AddHandler cgi-script .cgi
 ↓
AddHandler cgi-script .cgi

#AddType text/html .shtml (ssiを使うときはこのように書き換える)
#AddHandler server-parsed .shtml
 ↓
AddType text/html .html
AddHandler server-parsed .html
apache1.3.19だとこれだけではSSIが使えないようだ。現在研究中です。

[ESC][:]w
[:]q
で保存します

■apacheをサーバー起動時に自動起動にするには

起動時に自動起動にするには
#/etc/rc.d/init.d/httpd start
#chkconfig httpd on
これでOK

■apacheをサーバー起動、停止、再起動するには

サーバーを起動するには、次のコマンドを入力します。
/etc/rc.d/init.d/httpd start

サーバーを停止するには、次のコマンドを入力します。
/etc/rc.d/init.d/httpd stop

restartコマンドは、簡単にサーバーを停止してから再起動できます。
/etc/rc.d/init.d/httpd restart
または、service httpd restartコマンドでも可

reloadコマンドを使用できます。
/etc/rc.d/init.d/httpd reload

■user1用のホームページを置く場所を作ります

#mkdir /home/user1/public_html
#chmod 755 /home/user1
#chmod 755 /home/user1/public_html
■http://203.***.***.***/で何も見れないように
/var/www/html

/var/www/html_off
にして見えないようにしておく
#mv /var/www/html /var/www/html_off

これによりマイサーバーのIPアドレスを直接wwwブラウザに入れても「ページが見つかりません」と表示されます。

■アクセス制限をするには
パスワード編集エディター
http://www.rescue.ne.jp/cgi/editpwd/

ここから、editpwd.cgi、crypt.cgi をダウンロードします。
使い方は「パスワード編集エディターのホームページ」をよく読んでください。

[以下覚え書き]
http://203.***.***.***/~user1/editpwd/editpwd.cgi
(.private pass:****)で作成してコピーする

.htaccess パスワードファイルを指定する。apacheの動きを指定する。
.private パスワードファイル
http://203.***.***.***/~user1/ 以下すべてアクセスするのにパスワードが必要にするとき

home
 +public_html
   |.htaccess(下記のような内容(パスワードファイルの指定など)のファイル)
   |index.html(user1のホームページ)
   +bin
     |.private(editpwdで作ったパスワードファイル)

#vi /home/user1/public_html/.htaccess
AuthUserFile /home/user1/public_html/bin/.private
AuthGroupFile /dev/null
AuthName "Password"
AuthType Basic
<Limit POST GET PUT>
require valid-user
</Limit>
<Files .htaccess>
order deny,allow
deny from all
</Files>
■アクセスカウンターサーバーを作るには
パブリックカウンタシステム
http://www.rescue.ne.jp/cgi/pubc/

ここから、pubc41.tar.gz をダウンロードします。
使い方は「パブリックカウンタシステムのホームページ」をよく読んでください。

[以下覚え書き]
/home/user1/public_html/で解凍して、
/home/user1/public_html/pubc41ができる

flyというGIF画像を「その場(on the fly)」で作るプログラムが必要です。
http://p4room.mda.or.jp/fly/ja/

ここから、fly をダウンロードします。
使い方は「flyのホームページ」をよく読んでください。

[以下覚え書き]
/home/atsuro/public_html/pubc41で解凍して、
flyを/home/atsuro/public_html/pubc41に入れる

アクセスカウンタの制限が1日1000カウントになっていますのでそれ以上のときは、cgiを変更するとそれ以上のときでも使うことができます。
■IPアドレスが変更しても迷子にならないようにするには
 マイサーバーのIPアドレスを、CATVのDHCPで取得している場合は、CATV側のメンテナンスなどにより、その都度変更されてしまうことがあります。ユーザーは、「http://210.***.***.***/~user1/」でマイサーバーのホームページを見ている場合は、IPアドレスが変更されるたびに、変更されたIPアドレスを知らないとアクセスできなくなってしまいます。そこで、CATVの中の自分のホームページからジャンプするように設定しておけば、ユーザーはそこ(ジャンプ元)をブックマークに入れておけば、常にマイサーバー(ジャンプ先)にジャンプします。ただし、マイサーバーのオーナーは、IPアドレスが変更された場合は、ジャンプ先のIPアドレスを変更する必要があります。

ユーザーは、http://www.catv.**.jp/~user1/index2.html に常にアクセスするだけでOKです。

catvのuser1のpublic_htmlの中に、ジャンプ用のindex2.htmlを作ります。
index2.html
-------------------------------------------------------------------
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="Adobe PageMill 2.0J Mac">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=x-sjis">
<TITLE></TITLE>
</HEAD>
<BODY>

<P ALIGN=CENTER><META HTTP-EQUIV="Refresh" CONTENT="0;URL=http://203.***.***.***/~user1/index.html"><BR>
</P>

</BODY>
</HTML>
-------------------------------------------------------------------
203.***.***.***の部分をマイサーバーのIPアドレスにします。
この場合は、http://203.***.***.***/~user1/index.html にジャンプします。

■マイサーバーのIPアドレスを隠すには

wwwブラウザのURLの部分にマイサーバーのIPアドレスが出るのは、なんとなくかっこよくありません。そこでもうひと工夫して、URLの部分を隠すようにします。ただし、ブラウザの下のステータスバーに一時的に表示されてしまいます。
ユーザーは、http://www.catv.**.jp/~user1/index.html に常にアクセスするだけでOKです。

index.htmlをフレーム(1個だけの)にして、その中の表示をindex2.htmlにします。

catvのuser1のpublic_htmlの中に、ジャンプ用のindex.htmlを作ります。
index.html
-------------------------------------------------------------------
<html>
<HEAD>
<META NAME="keywords" CONTENT="">
<META NAME="">
<META NAME="GENERATOR" CONTENT="Adobe PageMill 2.0J Mac">
<META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=x-sjis">
<TITLE>マイサーバーのホームページ</TITLE>
</HEAD>

<frameset rows="100%,*">
<frame src="index2.html">
</frameset>
<noframes>
<body>
<a href="index2.html">こちらから入ってください。</a><p>
</body>
<noframes>
</html>
-------------------------------------------------------------------
「マイサーバーのホームページ」などのタイトルは適宜変更してください。

■アクセスログの見方

/var/log/httpd/access_log がログです。
cat /var/log/httpd/access_log | less
などで見れます。

203.140.***.** - - [07/Oct/2001:11:18:29 +0900] "GET /scripts/root.exe?/c+dir HTTP/1.0" 404 281 "-" "-"
203.140.***.** - - [07/Oct/2001:11:18:29 +0900] "GET /MSADC/root.exe?/c+dir HTTP/1.0" 404 279 "-" "-"
・・・・・以下省略

このようなニムダウイルスに感染したサーバーからアタックされたときのログも出ます。

その他 /var/log/httpd/ にあるファイルがログになります。
/var/log/httpd/error_log
/var/log/httpd/ssl_request_log
/var/log/httpd/suexec_log
など