パーソナルツール
現在位置: ホーム FAQ・問い合わせ よくある質問と答え (FAQ) ウェブページ ホームページ全体または特定のページのみアクセス制限をかけられますか?(詳細版)

ホームページ全体または特定のページのみアクセス制限をかけられますか?(詳細版)

« Back to Table of Contents

homeサーバにおけるアクセス制限について

home/hostingサーバは、標準では学内外のすべてのクライアントから制限なくアクセスできるように設定されています。 そのため、Webサービスで提供する一部のコンテンツについてアクセスを制限したい場合は、.htaccessによるアクセス制限を設定する必要があります。
以下の例を参考に、適切なアクセス制限を行ってください。

IPアドレスによるアクセス制限

HINETにおけるIPアドレスの割り当て状況について

IPアドレスによるアクセス制限を行う場合、IPアドレスの割り当て状況に合わせて設定を行う必要があります。
現在、広島大学には133.41.で始まるIPv4アドレスと、2001:2f8:1c1:で始まるIPv6アドレスが割り当てられており、HINETの接続機器にはこれらのIPアドレスが割り当てられています。
一方、HINETには用途に応じてさまざまなゾーン(ネットワーク)が定義されており、全学ファイアウォールで大きく2つのエリアに分割されています。 全学ファイアウォールの外側を「学外エリア」、内側を「学内エリア」と呼び、それぞれ以下のゾーン(ネットワーク)を含んでいます。

学外エリア
  • ゾーンA(グローバルゾーン)
  • HINET-Guest(宿泊施設などの有線情報コンセント)
  • 学外者向けHINET Wi-Fi  (eduroam )
  • サブネット接続サービス
学内エリア
  • ゾーンB(ファイアウォールゾーン)
  • ゾーンC(ローカルゾーン)
  • ゾーンD(公衆ゾーン)
  • HU-CUPxx(学内者向けHINET WiFi)

「学外エリア」の接続機器にも広島大学のIPアドレスが割り当てられていますので、Webサービスで提供する一部のコンテンツへのアクセスを「学内エリア」に制限したい場合には、上記を踏まえた設定を行う必要があります。

設定例

以下では、広島大学のIPアドレスを使用する範囲にアクセスを制限する場合を「学内限定」、「学内エリア」にアクセスを制限する場合を「学内エリア限定」として、それぞれの設定例を示します。

.htaccessファイル(「学内限定」の場合)

まず,Denyディレクティブですべての接続元からのアクセスを拒否します。その上で,Allowディレクティブで広島大学のIPアドレスを許可します。
ファイルのパーミッションは604にします。

Deny from all
Allow from 133.41.0.0/16
Allow from 2001:2f8:1c1::/48

上記書式はメディアセンター利用登録システムにて学内限定公開を選択した場合に設置される.htaccessファイルと同様のものになります。

.htaccessファイル(「学内エリア限定」の場合)

「学内エリア限定」を行う場合,若干書式が複雑になります。Allowディレクティブで広島大学のIPアドレスを許可したうえで、そのうちアクセスを拒否するIPアドレスの範囲(学外エリアに含まれるゾーン(ネットワーク)※)についてDenyディレクティブを列挙します。 Allowディレクティブに含まれないIPアドレスの範囲は拒否されます。
ファイルのパーミッションは604にします。

Order Allow,Deny
Allow from 133.41.0.0/16
Allow from 2001:2f8:1c1::/48
Deny from 133.41.4.0/24
Deny from 133.41.10.0/24
Deny from 133.41.33.0/24
Deny From 133.41.101.0/24
Deny from 133.41.102.0/24
Deny from 133.41.103.0/24
Deny from 133.41.136.0/22
Deny from 133.41.144.0/22
Deny from 133.41.154.0/24
Deny from 133.41.165.0/24
Deny from 133.41.221.0/24
Deny from 133.41.224.0/24
Deny from 133.41.231.0/24
Deny from 2001:2f8:1c1:50::/60
Deny from 2001:2f8:1c1:60::/59
Deny from 2001:2f8:1c1:80::/59

パスワードによるアクセス制限

アクセス制限方法を指定する.htaccessファイルと、パスワードを保存する.htpasswdファイルを設定します。

設定例

.htpasswdファイル

login.hiroshima-u.ac.jpにログインして、public_html以下のアクセス制限を行いたいディレクトリに移動します。
次のコマンドを実行し、表示される指示にしたがいます。 htpasswdコマンドの引数"-c"は、初めて.htpasswdファイルを作る場合にのみ指定します(すでに.htpasswdファイルが存在する場合は"-c"は不要です)。
ファイルのパーミッションは604にします。

htpasswd -c .htpasswd ユーザ名
chmod 604 .htpasswd

.htaccessファイル

ファイルのパーミッションは604にします。

AuthUserFile /home/アカウント名(グループ名)/public_html/?????/.htpasswd
AuthGroupFile /dev/null
AuthName "Enter username and password"
AuthType Basic
require valid-user
  • AuthUserFileには、.htpasswdファイルの置き場所をフルパスで指定します。 .htpasswdを置いたディレクトリでpwdコマンドを実行すると、フルパスが表示されます。 ?の部分はユーザやアクセス制限を行う場所によって異なります。
  • AuthNameは、パスワード入力ウィンドウに表示される文字列です。 表示する文字列を`"'(ダブルクォーテーション)で囲んで指定します。
  • require valid-userは、.htpasswdファイルに書かれているユーザのみログインができるという意味です。

アクセス制限を行う際の注意

  • IPアドレスによるアクセス制限の設定例は、平成24年4月現在のIPアドレスの割り当て状況に基づくものです。 割り当て状況は変更されることがありますので、定期的に本ページを確認してください。
  • homeサーバはHTTPS(通信路の暗号化)を提供していません。 パスワードによるアクセス制限を行った場合でも、クライアントで入力されたパスワードやhomeサーバから送られるコンテンツは、ネットワーク上を平文のまま(暗号化されていない状態で)流れます。 仕組みを十分に理解したうえで使用してください。
  • Orderディレクティブに指定するAllowとDenyの順序によって、以下のようにアクセス制限の挙動が変わります。 特に「学内エリア限定」を設定する場合、Deny,AllowとするとIPアドレスの範囲指定が非常に複雑になるため、Allow,Denyとすることをお勧めします。なお,homeサーバのデフォルト値(指定しない場合)は,Deny,Allow になります。
    Deny,Allowとした場合(システムのデフォルト値)
    Denyディレクティブ、Allowディレクティブの順に評価されます。 Denyディレクティブに一致しないか、Allowディレクティブに一致するクライアントはアクセスが許可されます。 いずれにも一致しないクライアントは許可されます。
    Allow,Denyとした場合
    Allowディレクティブ、Denyディレクティブの順に評価されます。 Allowディレクティブに一致しないか、Denyディレクティブに一致するクライアントはアクセスが拒否されます。 いずれにも一致しないクライアントは拒否されます。