図8 「Configure」メニュー
(1)IPアドレス/ドメイン名をもとにした制限
「Configure」メニューからプルダウンして「Allow/Deny...」(許可不許可)を選択すると図9の画面が表示される.
図9 WebSTAR AdminのAllow and Deny画面
この画面で,接続を許す場合には,左側の「Allow」のラジオボタンをクリックし,Match Stringの部分にドメイン名あるいはIPアドレスを入れ,右側の「Add」ボタンを押す.接続を拒否場合には,左側の「Deny」のラジオボタンをクリックし,Match Stringの部分にドメイン名あるいはIPアドレスを入れ,右側の「Add」ボタンを押す.最後に「Update」ボタンをクリックすると設定が保存される.
この例は次のように取り扱われる.まず,最初に「DENY*」があらかじめ認識され,この状態ではどのホスト名からもアクセスできない.最初のALLOWで「129.106.」で始まるIPアドレスを持ったクライアントがアクセスを認められることになる.DENYの宣言の中で,「129.106.3」で始まるIPアドレスを持つクライアントからは,アクセスが拒否される.
DENYの宣言で「129.106.3」とした場合,そのサブネットはすべて拒否される.つまり「129.106.30」,「129.106.31」も拒否されることになる.「129.106.3」のサブネットだけを制限したい場合には「129.106.3.」と「.」を加えなければならない.
次のALLOWについて,「129.106.30.1」の接続を認めることになる.これは1台の特定のホストに限られる.WebSTARは「.」がその後にあるものとみなす.最後の2行に注目すると,ドメイン名で「.edu」と最後が一致する場合は接続を認め,ibm.comのドメイン名は接続を認めないことを宣言している.
(2)Realm(保護領域)による制限
Realmは,日本語版では“保護領域”となっている.実際には,ファイルにアクセスする場合ユーザ名とパスワードを要求され,正しいユーザ名とパスワードが入力されれば,ファイルにアクセスできるしくみである.
「Configure」メニューからプルダウンして「Realms...」を選択すると,図10が表示される.この図では,GUEST,OMAKEと2つが設定されているが,Match Nameのところで,「GUEST」としてあれば,「gest.html」とか「guest.gif」などguestという名前の付いているファイルおよびフォルダの中味は,すべてパスワードを請求される.最後に「Update」ボタンをクリックするのを忘れると,設定が変更されない.
図10 Realms(保護領域)設定画面
「Configure」メニューからプルダウンして「Add Password...」を選択すると,図11の画面が表示される.各欄にユーザー名,パスワードを入れ,RealmのポップアップメニューからRealmの名前を選択する.
図11 パスワード設定画面(WebSTAR Admin)
同じことがWebSTARサーバから行うことができる.「Edit」メニューから「Password...」を選択すると,図12の画面が表示されるので,ここにユーザ名・パスワードを設定する.
図12 パスワード設定画面(WebSTAR)
(3)Action(アクション)の設定
アクションは,ファイルの拡張子によってCGIを通してファイルの送信を行う設定をするものである.詳しいことは,CGIの項で述べるが,設定の方法について少し触れておく.ここではNetCloakというCGIで「.nclk」という拡張子の付いたファイルを自動的に処理するように設定を行う例を紹介する.
「Configure」メニューからプルダウンして「Action...」を選択すると,図13の画面が表示される.Applicationの欄に実際に起動させたいアプリケーションを書き込む.Action Nameには,わかりやすい名前を入れ,「Update」ボタンをクリックする.
図13 Action設定画面
次に,「Configure」メニューからプルダウンして「Suffix Mapping...」を選択すると,図14の画面が表示される.File Suffixには,ファイルの拡張子を入れ,File TypeにはTEXTを入れる.Creatorにはワイルドカードである「*」を入れる.MIME Typeには,「text/html」を入れ,最後に「Update」ボタンをクリックする(MIME:Multipurpose Internet Mail Extensions).
図14 Suffix Mapping設定画面
これで,「.NCLK」と拡張子の付いたファイルは,自動的にNetCloak.acgiで処理され渡されることになる.アクションの設定の利点は,次のようなところにある.本来NetCloak.acgiというアプリケーションを通してHTMLファイルを見せる場合には,
<http://your.server/NetCloak.acgi$demo.nclk>といったように書かなければならないが,
<http://your.server/demo.nclk>とだけ記述すればよいので,手間が省けるということが第1点.
<http://your.server/NetCloak.acgi$demo.nclk>のように書いた場合,もとのファイルを見られてしまう危険性があり,セキュリティの点でアクションを設定した方が有利である.
(4)Miscellaneous(その他)の設定< 図15の画面で解説する.
図15 Miscellaneous Setting設定画面
Timeoutは,サーバ側でアプリケーション(CGI:Common Gateway Interface)を使って処理を行って結果を返す場合の制限時間である.Max Usersは,同時に処理できるユーザの上限である.Max Listensは,同時に処理できるドキュメントの送信の数を決める.Netscapeには,同時に複数の画像データの転送を要求させることが可能であるが,この上限を決めるものである.この数値は,Max Usersを越えることはできない.Portはポート番号のことである.WWWサーバは,特別の理由がない限り「80」を使うことになっている.これ以外の数値を使う時には,「1024」以上の数値を使わなければならない.「1024」以下は,gopher,ftp,telnetなどほかの通信手順に予約されているためである.どんな時に利用価値があるかと言えば,ドメイン名,IPアドレスに基づくアクセス制限を行う場合である.WebSTARは1つのサーバの一部だけにその制限を付けることができないために,2つのサーバを立ち上げ,一方をアクセス制限を付け,一方を自由にアクセスできる形にする必要がある.この場合,ポート番号が重なるとサーバを同時に立ち上げることができないので,「10080」といった番号を割り当てる.この2つのサーバは,次のように区別する.
<http://www.host.name:80/> または <http://www.host.name/>ポート番号「80」の場合,ポート番号の指定は省略可能である.Pig Delayは,Thred Managerを使用している場合,WebSTARでは何も行わない.Thread Managerを使用しない場合,WebSTARにアクセスがあって処理が終わってからほかのアプリケーションがプロセスを開始するまでの時間を設定する.Buffer Sizeは,ひとまとめに送るファイルブロックの大きさを指定する.この値を大きくしすぎると,WindowsでTrumpet Winsocksを使用している場合にエラーが出ることがある.基本的には,エラーの少ない早い回線の場合はこの値を大きくした方がパフォーマンスは上がる.Use DNSは,ユーザのドメイン名を確認するか否かを設定する.確認しない場合は,スピードアップ可能である.Indexは,ディレクトリ名だけを指定したURL<http://www.your.server/directory1/>に対し自動的に返すファイル名(この設定では<http://www.your.server/directory1/default.html>を指定する.HTMLファイルでなくても構わない.Errorは,指定したファイルがない場合に送るファイル名を指定する.Errorのファイルにイメージを使う場合には,相対リンクは避ける(正常に表示されない場合がある).No Accessは,IPアドレスあるいはドメイン名によるアクセス制限によりアクセス拒否をする場合のメッセージファイルを指定する.Log Fileは,ログファイル名を指定する.サブディレクトリを指定する場合は,コロンで区切ってWebSTARからの階層を記述する(Indexの記述のみ初めにコロンがないが,これは階層ごとに同じ設定を行うからである).Default MIMEは,その名の通りで,初期設定のMIMEである.
<http://www.host.name:10080/>
(5)ログフォーマット
ログとして記録する項目を,選択することが可能である(図16).
図16 Log Format設定画面
(1)バージョン
この部分は,MacHTTPのバージョンを記述するが,バージョンが違っているとアラートが出る.
VERSION 2.2.(2)MISC(その他)の設定部分
INDEX:Default.html ERROR:Error.html NOACCESS:NoAccess.html LOG:MacHTTP.log TIMEOUT:60 MAXUSERS:10 MAXLISTENS:6 PORT:80 PIG_DELAY:30 DUMP_BUF_SIZE:4096 #NO_DNSWebSTARのセッティングと同じ内容である.PIG_DELAYは,MacHTTPの処理に割り当てる時間単位を示すが,事実上デフォルトの値で構わない.#NO_DNSは,ドメイン名のチェックを行うか否かの設定を行うが,チェックを行わない場合には,コメントを外す(「#」をとる).
(3)Suffix Mapping(拡張子マッピング)
ファイルの拡張子,ファイルタイプ,クリエータ,MIMEタイプのマッピングを行う.
TEXT .HTML TEXT * text/html BINARY .GIF GIFf * image/gif CGI .CGI APPL * text/html ACGI .ACGI APPL * text/html SCRIPT .SCRIPT TEXT * text/html SCRIPT * TEXT ToyS text/html APPL .EXE APPL * text/html TEXT .TEXT TEXT * text/plain TEXT .TXT TEXT * text/plain TEXT .HQX TEXT * application/mac-binhex40 BINARY .JPG JPEG * image/jpeg BINARY .JPEG JPEG * image/jpeg BINARY .PICT PICT * image/pict BINARY .AU * * audio/basic BINARY .AIFF * * audio/x-aiff BINARY .XBM * * image/x-xbm BINARY .MOV MOOV * video/quicktime BINARY .MPEG MPEG * video/mpeg BINARY .WORD WDBN MSWD application/msword BINARY .XL XLS3 * application/excel BINARY .SIT SITD * application/x-stuffit BINARY .PDF PDF%20 * application/pdf(4)Realm(保護領域)
図17 ユーザアカウントおよびパスワードの登録画面
(5)Allow and Deny(許可と不許可)
初期設定では,コメントアウトされているが,これを有効にするためには,「#」を外す.