サーバー構築 セキュリティ TCP/IP基礎 TIPS 書籍 ブログ リンク

Web全体 サイト内検索

 サーバー構築導入編
はじめにお読みください
自宅サーバー構築前の準備
固定IPアドレスのススメ
参考:自宅サーバー環境
 ルータ設定編
ルータとは何か/ルータの賢い選び方
手動でIPアドレスを設定する
NAT/IPマスカレードとDMZの違い
 Apacheでのサーバー構築
WWWサーバー構築の流れ
Apache2.0の導入/インストール
Apacheの構造
Apache とにかくこれがやりたい!
ブラウザでの確認/Webページ公開
Apache(1.3)の設定 PART
Apache(1.3)の設定 PART
制御ファイル「.htaccess」
付録:Apacheの設定 索引
AN HTTPDの設定
ApacheLogViewer でアクセスログ解析
 DynamicDNSを利用する編
Dynamic DNSとは?
Dynamic DNSの管理
無通信状態での自動切断の防止策
急げ!新ドメインは早いもの勝ち!
 FTPサーバーの構築編
War FTPのインストール[ Ver.1.82 ]
War FTPの設定[ Ver.1.82 ]
War FTPの設定:基礎編 [ Ver1.65 ]
FTPサーバーの動作確認/ログイン
コラム:パーミッションの設定
FTPコマンドでファイル転送する
TFTPサーバーの構築/コマンド
 メールサーバーの構築編
メールサーバーソフトのインストール
メールサーバーソフトの基本設定
 VNCサーバーの構築編
TightVNCによるVNCサーバーの構築
 バックアップ編
True Imageのインストール
True Imageによるイメージバックアップ
True Imageによるバックアップからの復元
 自宅サーバー関連書籍

「全部フリーソフトで作るシリーズ」のWindowsXP版。初心者でもわかりやすい解説で人気のある1冊です。これから初めてサーバー構築する方には特にオススメ!


Apache2の逆引きリファレンス。知りたいと思ったディレクティブが簡単に引けて大変重宝しています。内容も非常に濃いのでこんな機能があったのか〜と思わず感動してしまう事も。お勧め。
 レンタルサーバー
Xbit(エクスビット)
さくらインターネット
ロリポップ!
 個人情報(IPアドレス)の確認
SSI環境変数
 関連ソフトウェアDOWNLORD
AN HTTPD
Apache
BlackJumboDog
Tiny FTP
War FTP
3CDaemon
ArGoSoft Mail Server
DiCE
九十九電機





ここでは「WWWサーバー構築の流れ」で紹介したAN HTTPDについて紹介していきます。もしも、この段階でどちらをインストールしようか迷っている方がいましたら、とりあえず両方試してみて、どちらが自分にとって最適かを各自で判断してください。それでは、以下のリンク先からAN HTTPDをダウンロードしてきてください。

■AN HTTPDのダウンロード

AN HTTP v1.40b

作者のURL:http://www.st.rim.or.jp/~nakata/ >>

AN HTTPDをインストールしたらWWWサーバーの公開まではもう目と鼻の先です。デフォルトの設定のままでは公開することはできませんのでAN HTTPDの設定をいくつか変更していきます。まずは、AN HTTPDのフォルダ内にある「httpd.exe」をダブルクリックして起動させてください。タスクトレイに以下のようなアイコンが現れます。



拡大するとこんなアイコンです。
※もし、「httpd.exe」を実行した際に「サーバソケットを使用できません。他のHTTPサーバが動いていないか確認してください。あるいはポート番号を変更してください」というエラーがでた場合、他のサーバーソフト(Apacheなど)が起動している可能性があるので、停止させるかもしくは、ポート番号を変更してください。






次にタスクトレイに現れたAN HTTPDのアイコンを右クリックして「オプション一般」をクリックしてください。





次のような設定画面が現れます。基本的な設定を解説します。



■ドキュメントルート(3行目) HTMLファイルを格納するパスを指定します。ブラウザで開いたとき、ここで入力したパスが最上位ディレクトリとなり、一般の人はそれより上の階層へはアクセスできなくなります。ここでは「c:\www」と入力します。

■デフォルトインデックス デフォルトで最初に表示される(読み込まれる)インデックスファイルの名前を指定します。つまり、「c:\www」フォルダの中で最初に開きたいファイルが「index.html」であった場合は、空欄に「index.html」と入力します。もし、最初に表示したいHTMLファイルの名前が「welcom.html」だとしたら、デフォルトインデックスの空欄に「welcom.html 」と記入します。

■ポート ポート番号はサービスの種類によってある程度決まっています。HTTPの場合は80番ポートを使用するのが一般的で、特別な理由がない限りに変更する必要はありません。もしも、変更したい場合は、8080番、8088、8888など80番と類似した番号に変えることが多いようです(参考:「ポート番号とは?」)。

■ドキュメントルート¥(5行目) この欄は、個人用のディレクトリを作成する際に用います。プロバイダーのホームページスペースなどをレンタルしている方は「~(チルダ)」の後にユーザー名を入力しますが、この設定をすると「FQDN(フルドメイン名)+ /~XXX(Xは任意の名前)」の形式でアクセスすることができるようになります。「~(チルダ)」を用いるとディレクトリ奥深くに置かれたフォルダまでの道のり(パス名)を省略することができます(参考:「チルダの概要」)。

■リモートホストを取得 リモートホストとは、アクセスしてきた相手のIPアドレスを、ホスト名の形式で記録する機能です。掲示板やチャットなどでホスト名(例:m113166.ap.plala.or.jp )が表示されているのを見たことがある方もいるとおもいますが、あれはわかりにくい数字の羅列であるIPアドレスから、わかりやすいホスト名へと変換作業を行っています。ホスト名からどこのプロバイダーからアクセスしてきたのかなどがわかるので便利といえば便利ですが、変換作業にはサーバーに余計な負荷がかかってしまうため、通常は「取得しない」をチェックします。掲示板やチャットなどでホスト名を取得したい方は「CGI/SSIでは取得」にチェックすると良いでしょう(参考:「DNSとは/DNSサーバーの仕組み」)。



設定が済んだら「OK」をクリックしてください。「オプションを変更してサーバーを再起動します」というダイアログが現れるので「OK」をクリックしてサーバーを再起動させてください。以上で基本的な設定は完了ですが、他にも便利な機能があるので説明していきます。なお、すぐにでもブラウザで確認して、サーバーを公開してみたい方は、「ブラウザでの確認/Webページの公開」へ進んでください。



■エイリアスの設定

エイリアスタブをクリックしてください。エイリアスの設定ではドキュメントルートで指定したディレクトリ以外にも公開したいディレクトリがある場合に指定します。一般パスの「追加」をクリックしてください。




以下のような画面が現れますのでここで仮想パスとローカルパスを指定します。ここでは仮想パスに「/photo」、ローカルパスに「c:\photo」を指定しています。このように入力すると、「/photo」にアクセスした場合に「c:\www\photo」ではなく、「c:\photo」の方が表示されるようになります。





■表示/インデックスの設定

示/インデックスでは、フォルダ内にindex.htmlが存在しない場合に、特定のファイル、ディレクトリを一覧表示させることができます。MP3や仲間内で撮影した写真などを公開したいけど、いちいちHTMLを作成するのは面倒くさいなどの場合に非常に便利ですが、セキュリティの観点からも通常はチェックをはずしておきましょう。なお、特定のディレクトリに対してのみインデックス表示をさせたい場合には、各ディレクトリ内に「.www_browsable」という名前のファイルを格納しておくことで可能となります。その場合は、「.www_browsableがあるディレクトリのみ表示」にチェックをいれておく必要があります。また、「.www_browsable」の名前を変更することも可能です。



 .www_browsableの作成方法

コマンドプロンプトを起動して、
「echo>c:\www\photo\.www_browsable」と入力してリターンキーを押します。するとそのフォルダ内に「.www_browsable」というファイルが作成されます。ここでは「photo」というフォルダの中に作成しているので、このフォルダのみが一覧表示されるようになります。





参考までに、「インデックスリストを表示」にチェックを入れると以下の画面のように「.www_browsable」を含んだ(つまり、許可された)フォルダのみ一覧表示させることができます。




下の「メッセージ」ではHTMLが存在しなかったり、CGIエラーが発生した場合に、オリジナルのエラーメッセージを作成しておくことで、訪問者にエラーの内容をわかりやく説明できるようになります。エラーコードには代表的なものがいくつかあり、以下の表を参考にしてカスタムエラーメッセージを作成してみると良いでしょう。なお、InternetExplorerでは、このステータスコードを受け取り、独自のメッセージを表示する仕様になっていますが、全ての人がInternetExplorerを使っているわけではないことを考えると作っておいた方が親切ですし、ブラウザ標準の味気ないエラーメッセージを表示させるよりははるかにましなエラーメッセージになるでしょう。参考までに当サイトのエラーメッセージを紹介しておきます。ここをクリック>>



◎エラーコード
Status-Code 内容 意味
401  Unauthorized ユーザー認証が必要なページで認証に失敗。ID、パスワードの入力ミスなどが原因。
403  Forbidden 指定されたリソースへのアクセスを拒否。許可されていないディレクトリへアクセスを試みたのが原因。
404  Not Found 指定されたファイルが存在しない。URLの入力ミスや指定されたファイルがすでに削除されていると考えられます。
500  Internet Service Error サーバーがリクエストを実行できない。CGIが正常に動作していない(バグがある)ことが考えられます。
501  Not Implementer リクエストを処理できる機能がサーバーにない。




■ファイルタイプの設定 (図は省略します)

ファイルタイプでは、ブラウザに受け渡すMIMEタイプの設定を行います。通常はこのままで構いませんが、メディアファイル(MP3、Mpgなど)を専用のプラグインで起動させたい場合は「追加」をクリックして、すでに登録されているMIMEタイプを参考にしながら各自、追加していってください。



■ユーザ認証の設定

ユーザ認証では特定の人、グループだけに限定してアクセスを許可させたい場合にユーザ名とパスワードを入力させてログインさせるように設定できます。登録ユーザ数が多い場合は、グループでの管理を行うこともできます。なお、ユーザ認証を有効にするには必ず「ユーザ認証」にチェックを入れてください。

まず、今回は「/photo」というディレクトリにアクセス制限をかけ、ユーザ名を「taro」、パスワードを「pass」と入力するように設定していきます。まず、赤枠で囲んである「追加」をクリックしてください。




以下のような画面が現れるので、ユーザ名「taro」、パスワード「pass」を入力して「OK」をクリックしてください。パスワードは暗号化されて表示されます。ここでは、練習なので単純なパスワードを設定していますが、実際には推測しにくいパスワードを設定してください。




次に認証名の「追加」をクリックしてください。以下のような画面が現れたら、認証名に任意の名前(認証の際にダイアログに表示されます)を入力し、パスに「/photo」、認証ユーザ/グループに「taro」と入力して「OK」ボタンをクリックしてください。




以下の画面のようになったら設定は完了です。指定したディレクトリ「/photo」はユーザ名とパスワードなくしてログインすることはできないようになりました。尚、ユーザ認証画面を他人に編集されないようにするためには、「編集パスワード」にチェックを入れて、出てきたダイアログにパスワードを入力して「OK」ボタンをクリックしてください。この設定をするとパスワードを入力しない限り、ユーザ認証画面を第3者に勝手に編集されることがなくなるので、よりセキュアな状態になります。




最後に実際にユーザ認証ができるかどうか実行してみてください。アクセス制限のかけられたディレクトリへのアクセスを試みた場合、以下のようなダイアログが現れるはずです。自分で設定したユーザ名とパスワードを入力して、アクセス制限のかけられたディレクトリを閲覧することができるかどうかを確認してみてください。





■アクセス制御の設定

アクセス制御では特定の人のアクセスを許可させたり、拒否させたりすることができます。ユーザ認証と異なる点は、IPアドレスを元にアクセス許可・不許可を行う点です。ユーザ認証はパスワードが漏洩してしまえば、誰にでもアクセスされてしまう危険性をはらんでいますが、IPアドレスで指定する制御の場合は、より強力なセキュリティを維持することができます。

ただし、IPアドレスでの制限にも問題があり、いくらIPアドレスで制限を加えたとしても、一般的なダイヤルアップIP接続をおこなった場合やCATV、xDSL、FTTHなどの接続形態によりアクセスする場合には、接続するたびにIPアドレスが変化するグローバル動的アドレスであるため、相手のIPアドレスが変わってしまったら制限をかけても意味がないことになります。仮にホスト名(FQDN)やワイルドカードなどを使用してアクセス制限をかけた場合でも、たいていは、組織単位、プロバイダ単位で制限をかけてしまうことになるので、まったく無関係のクライアントまでアクセス制限にかかってしまいます。そもそも、相手がプロキシ経由でアクセスしてきた場合は、何の意味も成しません。IPアドレスで制限をかける場合は、インターネットの利便性を損なうことにもなりかねないので、現状では、一時的にアクセスさせたくない相手をIPアドレスで制限して、本当に見られたくないページにはユーザ認証を利用してアクセスを制御した方が効率的でしょう。

アクセス制御を有効にするには、必ず「アクセス制御」チェックボックスにチェックを入れてください。
まず、「追加」をクリックしてください。




以下のような画面が現れます。下記の設定は特定のIPアドレスのみを許可する場合の設定例です。「パス」にアクセスさせたくないディレクトリのパスを入力し、「許可IP」に許可させたい人のIPアドレスを入力するようにします。これで「219.164.43.XXX」の人だけにサーバーを公開することができるようになります。




以下の設定例は特定の相手のみを拒否する場合の設定例です。「143.223.88.XXX」の人だけがアクセスをする事ができなくなります。





■ログの設定

ログの設定ではアクセスしてきた相手の情報を(誰が、どこから、どんなエラーが発生したか)をファイルに記録してくれる機能です。



 ログビューア ログを開くためのアプリケーションを指定します。Writeはワードパッドの実行ファイル名を表し、「メモ帳」の場合は「notepad」と入力します。また、通常、使用しているテキストエディタなどがあれはそれを指定してください。
 ログフォーマット 「標準」にしておくとApacheと互換性のあるフォーマットに記録されるようになり、一般に出回っているアクセスログ解析ソフトでの解析が可能となります。
 エラー エラーログを出力するパスを指定し、チェックボックスにチェックを入れます(デフォルト)。エラーを記録してくれます。
 参照先(リファラー) どこのリンクからアクセスしてきたを参照することができます。
 ユーザエージェント アクセスしてきた相手のブラウザ情報を取得することができます。





■サービス

「サービス」のチェックボックスにチェックを入れると、Windows起動時にサービスとして起動させることができます。



 




Copyrights©KORO 2002 All Rights Reservd