アクセス制限とはその名の通り特定ページへのアクセス(見る許可)を限定するもので特定のドメインだけに限定したり,また逆に特定のドメインからのアクセスを禁止したり,IDとパスワードを持っている人だけしかページを見られないようすることです.
□□□ アクセス制限の方法
インターネット上にホームページを公開するためにmikilabマシンはapacheと言うソフトウェアを使用しており,「.htaccess」というファイルをアクセス制限したいディレクトリに置くことによりアクセス制限を行うことができます.
ここで紹介するアクセス制限には制限方法と制限対象がそれぞれ2種類あります.制限方法は以下の2種類があります.
IDとパスワードで制限するには.htaccessを次のように記述します.
dia99:o2SROcGrX9wtw |
このファイルはmikilabマシンの中の「/usr/sbin/htpasswd」というプログラムを使って作成します.使用法は「/usr/sbin/htpasswd [-c]
「*.doshisha.ac.jp」からアクセスしているユーザーのみが見られるようにするには.htaccessを次のように書きます.
逆に「*.doshisha.ac.jp」からアクセスしているユーザーだけには見られないようにするには.htaccessを次のように書きます.
「deny from ...」や「allow from ...」は複数書くことができます.またIPアドレスを直接指定することもできます.ex.deny from 222.111
.htaccessに次のような記述を加えます.
上の例ではsecret.htmlへのWWW経由でのアクセスを一切禁止します.また上のものを使い
以上に出てきたものを同時に使い,ドメインとID&PASSの両方で制限することも可能です.
これで「*.doshisha.ac.jp」から接続していてかつ,ID&PASSを知っているユーザーしか「mikilaber.html」を見ることはできません.
まずWindows上のテキストエディタ等で.htaccessファイルの内容を作成します.場合によってはピリオドから始まるファイルが作れない場合もあるのでhtaccess.txtなどの名前にしておいてもよいでしょう.次にパスワードによるアクセス制限をかけたい場合はパスワードリストファイルを用意し,.htaccessを正しく設定します.そしてアクセス制限をかけたいディレクトリ(もしくは制限をかけたいファイルがあるディレクトリ)に.htaccessを(ID&PASSを使うならパスワードリストファイルも)ftpソフトなどを使ってアップロードします.
Example:
「ls -a」で表示されたファイルの中に.htpasswd-fileができていればOKです.
まずsshなどでmikilabに接続します.
$ cd ←カレントディレクトリに移動.
$ /usr/sbin/htpasswd -c .htpasswd-file dia99 ←新規作成
Adding password for dia99.
New password:←パスワードを入力
Re-type new password:←もう一度入力
□□□ ドメインによるアクセス制限
*.doshisha.ac.jpからのみアクセス可能:
<Limit GET>
order deny,allow
#↑優先順位をアクセス拒否,アクセス許可の順にする.
deny from all
#↑基本的に全員をアクセスを拒否する.
allow from .doshisha.ac.jp
#↑ドメインが「*.doshisha.ac.jp」であるユーザーのアクセスを許可する.
</Limit>
*.doshisha.ac.jpからのみアクセス拒否:
<Limit GET>
order allow,deny
#↑優先順位をアクセス許可,アクセス拒否の順にする.
allow from all
#↑基本的に全員をアクセスを許可する.
deny from .doshisha.ac.jp
#↑ドメインが「*.doshisha.ac.jp」であるユーザーのアクセスを拒否する.
</Limit>
□□□ ファイルへのアクセス制限
ファイル単位でのアクセス制限:
<Files secret.html>
order deny,allow
deny from all
</Files>
□□□ 複合制限
ファイル単位でのアクセス制限:
AuthUserFile /home1/tsutsumi/.htpasswd-file
AuthName ByPassword
AuthType Basic
<File mikilaber.html<
order deny,allow
deny from all
allow from .doshisha.ac.jp
require valid-user
</Limit>
第4節 .htaccess(2)
□□□ 実際にアクセス制限を行うには
例
"http://mikilab.doshisha.ac.jp/tsutsumi/report/index.html"にドメインとパスワード(ID:dia99,PASS:aid99)によるアクセス制限を付けたい場合は次のようにします.
1..htaccessファイルを編集する:
AuthUserFile /home1/tsutsumi/.htpasswd-file
AuthName ByPassword
AuthType Basic
<File index.html>
order deny,allow
deny from all
allow from .doshisha.ac.jp
require valid-user
</File>
アップロード先:mikilab.doshsisha.ac.jp/tsutsumi/public_html/report/.htaccess
2.パスワードリストを作る:
dia99:o2SROcGrX9wtw
作成先:mikilab.doshsisha.ac.jp/tsutsumi/.htpasswd-file
3..htaccessをアップロードする.
これでID&PASSとドメインによるアクセス制限が有効になります.
4.確認
ブラウザでhttp://mikilab.doshisha.ac.jp/tsutsumi/report/index.htmlを入力してみてください.IDとパスワードの入力を促すダイアログボックスが表示されます.もし学外のプロバイダなどからつないでいればドメインによって拒否されるはずです(試してません).