ネットワーク利用者認証システム Opengate の改良と運用について

Improvement and operation of the network user
authentication system Opengate
大谷 誠 † , 江藤 博文 † , 渡辺 健次 ‡ , 只木 進一 † , 渡辺 義明 ‡Makoto Otani, Hirofumi Eto, Kenzi Watanabe, Shin-ichi Tadaki, Yoshiaki Watanabe†

佐賀大学 総合情報基盤センター

Computer and Network Center, Saga University‡

佐賀大学 理工学部

Faculty of Science and Engineering, Saga University〒840-8502 佐賀市 本庄町 1 番地

1 Honjo, Saga, Saga 840-8502
otani@cc.saga-u.ac.jp, etoh@cc.saga-u.ac.jp, watanabe@is.saga-u.ac.jp
tadaki@cc.saga-u.ac.jp, watanaby@is.saga-u.ac.jp
佐賀大学では，利用者端末や公開端末からのネットワーク利用を認証・記録する Opengate を開発・公開し，学内において 2001 年より運用を行ってきた．この Opengate は， Web アクセスによって認証画面が提供される平易なインタフェースを持ち， 認証には POP3 や Radius サーバなどを利用することができる. 認
証によって 利用者端末には Java Applet が送信され利用状況を監視し， 利用が終了すると即時に通信路を閉鎖する. 現在，この Opengate は IPv4/IPv6 のネットワークに対応し，学内において試験運用等を行っている．
これまでの運用経験をもとに従来の Opengate を見直し，改良を行った．本稿では，改良点である設定の統合や XML 化，IPv4/IPv6 アドレスの取得方式の変更などについて述べる．
キーワード : Opengate，ネットワーク認証，ファイアウォール，IPv6

We have developed and distributed a network user authentication system “Opengate”. It has
been operated in Saga University since 2001. When a user accesses from his terminal to any website through the gateway, the system returns the page for authentication instead. Various types ofprotocols, including POP3 and Radius, are applicable for authentication. After the authentication,
the system sends Java Applet to the terminal and watches the usage. The new version of Opengate
is compatible with IPv4/IPv6 network environment. And it is under experimental operation.
Based on the operation experience in the campus, we improved Opengate. This paper describes
improvement of the acquisition method of IPv4/IPv6 address of the user terminal and integration ofparameter setting to a XML-formed conﬁguration ﬁle.
KEYWORDS : Opengate, Network Authentication, Firewall, IPv6認証ページを利用者に提供する．利用者は，この認

1 はじめにコンピュータを利用した情報処理や，インターネットによる情報収集・交換は，大学における研究証ページにユーザ ID とパスワードを入力し，認証サーバを利用した認証に成功すると，ネットワークの利用が可能となる．

教育上で必要不可欠な技術となっている．このようOpengate では，ファイアウォールの設定によっな背景から，コンピュータリテラシ教育は，学生のて任意の通信プロトコルを常時開放・常時閉鎖・ほぼ必須科目となった．専門教育においても様々な認証後開放に選択制御できる．ただし Web 以外の形で，コンピュータやインターネットを利用するよ通信プロトコルを使用する利用者も，任意の Webうになっている．

サーバへ HTTP アクセスすることから始める必要

大学のネットワークは，大学における研究教育をがある．

支援することを目的として構築され，原則として大! "$#%学の構成員が利用資格を有するものである．従って，自由に利用できることを目的として設置される公開端末や利用者の移動端末を接続する情報コンセ
Opengateントにおいても，利用資格を有する者のみが利用できる仕組みが必要である．

  LAN

佐賀大学では，利用者端末や公開端末からのネットワーク利用を認証・記録する “Opengate” を開発・公開し，2001 年より学内においてディスクレ

図1



Opengate のシステム構成例

スで運用を行っている．2005 年には IPv6 ネットワークにおける利用にも対応し，一部運用を行ってきた [1, 2, 3]．
このような運用経験をもとに従来の Opengate をWebWWW

見直し，改良を行った．本稿では，改良点である設定の統合と XML 化，IPv4/IPv6 アドレスの取得方式の変更などついて述べる．また，その運用についても触れる．

2 Opengate について
まず初めに，Opengate の概要や基本的な機能について説明する．

2.1 概要Opengate は，特定多数の利用者が多様な端末を接続するネットワーク環境において，利用者認証と  ! " #MN CGI$&%(' CGIOpengate

HTML RefreshO0POpengateCGI)*+3 1(2. ,0/Java Applet

POP3FTP, etc.

Java Applet

4 5 678
90 ;:<=?> HTTP @0ABCDETCP<=FG2IHJ5K L

利用記録を行うことができるシステムである．このOpengate では，特別な申請やソフトウェアの準備

図2

Opengate の動作の流れなしに，利用者端末をインターネットに接続することができる．

Opengate のシステム構成例を図 1，基本的な動作の流れを図 2 に示す．
利用者が，始めに Web サイトを閲覧しようとする際に，Opengate はその通信を横取り，代わりに2.2 Opengate の動作環境
Opengate は FreeBSD 上で開発を行っている．
フ ァ イ ア ウ ォ ー ル に は ipfw，Web サ ー バ に はApache を利用し，利用状態を監視するプログラ
ムを C 言語で開発した．上記のプログラムが，認証後にダウンロードされる利用者端末の Java Appletと通信することにより利用状態を監視する．そのた

3 Opengate の改良

め，利用者端末に Java Applet が動作する Web ブラ

Opengate は，2001 年から安定して運用していウザが必要となる．もし利用者端末に Java Applet

る．多数の利用者に活用され，佐賀大学における教が動作する Web ブラウザがない場合，Opengate育研究の不可欠な基盤となっている．一方で，IPv6は，あらかじめ設定された時間経過後に利用者端末への対応など，機能拡張と改善を継続的に行っていの通信路を自動的に閉鎖する．また開放中には arpる．本節では，IPv6 への対応や機能拡張についてや ipfw コマンドを定期的に実行し，端末の MAC述べる．

アドレスが変更された場合や端末からのパケットが3.1 主要ページの CGI 化
従来の Opengate では，利用者 ID とパスワードを取得し認証を行う部分のみで CGI を利用してい無い場合は閉鎖する．

2.3 認証Opengate を利用したネットワークでは，利用た．新 Opengate では，IPv6 ネットワークに対応

者はまず任意の Web サーバへ HTTP を用いてアするため，利用者端末の IPv4/IPv6 アドレスの受クセスする．Opengate は，ファイアウォールの転け渡しが必要となる．そこで，主要なページの CGI送機能を用いて HTTP リクエストを自身の Web化を行った．認証ページの表示と，利用者端末のサーバへ転送する．これによって，利用者端末に認IPv4/IPv6 アドレスの受け渡しの他，時刻情報など証ページが表示される．ネットワーク利用者は，こも CGI を使って受け渡している．詳細は後述する．の認証ページより利用者 ID とパスワードを入力す

3.2 IPv4/IPv6 アドレス取得方式
Opengate では，認証後に利用者端末が利用するる．利用者 ID やパスワードは，Opengate の CGIに POST され，CGI は外部の認証サーバを使用しRADIUS や PAM を利用することが可能である．

IP アドレスに対する通信路を，ファイアウォールによって開放する．よって，Opengate は，利用者端末が利用する IPv4/IPv6 アドレスを把握し，管2.4 利用者端末の監視と閉鎖理する必要がある．

認証する．なお，認証には POP3，POP3S，FTP，認証後，利用者端末に認証完了ページが表示されOpengate を利用したネットワークでは，利用者る．この認証完了ページとともにブラウザに Javaはまず任意の Web サーバへ HTTP を用いて通信Applet がダウンロードされる．この Java Appletが監視プロセスとの間に TCP コネクションを張るする．このとき，Opengate は，ファイアウォールのことによって，ネットワークの利用を監視する．こサーバへ転送する．この転送の通信は，必ず IPv4の Java Applet と監視プロセスとの TCP コネクによって行われる．この際に利用者端末の IPv4 アションが切れた場合，あるいは Java Applet が監視ドレスを取得することができる．

転送機能を用いて HTTP リクエストを自身の Webプロセスからの応答メッセージに応答しなかった場

もし利用者端末が IPv6 通信に対応し，かつ最初合に利用終了と判断し，通信路を閉鎖する．利用者にアクセスした任意の Web サーバも IPv6 通信に端末に Java Applet が動作する Web ブラウザがな対応していた場合は，最初の通信は IPv6 によってい場合，設定時間経過後に通信路を閉鎖する．

行われる．この通信をファイアウォールによって遮2.5 利用者情報の記録
Opengate は利用者の情報として，認証，ネット断すると，通常の Web ブラウザは自動的に同一のワーク利用開始の手続きで取得した利用者 ID，利Web サーバに IPv4 によって再度通信を試みる．後はこの HTTP リクエストを自身の Web サーバへ

用者端末 IP アドレス，MAC アドレス，利用開始転送することにより，利用者端末の IPv4 アドレス

時刻，利用終了時刻を SYSLOG 機能を用いて記録を取得することができる．

する．ただし MAC アドレスは Opengate を利用者以上のように取得した IPv4 アドレスを URL端末と同一セグメントに設置している場合に意味がの引数に付加し，認証を行うページ (CGI) にクある．

ライアントプル機能 (html の meta タグ: http-equiv=”Refresh”) を使って転送する．この引数はいる．この際に，コード化した IPv4 アドレスの他のデータと共にコード化されているが，これにつチェックデジットや，時刻情報なども同時に受け渡いては第 3.3 節において述べる．

している．図 4 にそのフォーマットを示す．

ネットワーク利用者は，認証ページに利用者 IDとパスワードを入力する．これらの認証データはOpengate CGI に POST され，CGI は外部の認証  !"#$%'&?'@(*),+CGI
UNIX time
IPv4 . +0/*1
24357698;:<5>=

サーバに対して認証を行う．この POST の際，利用者端末が IPv6 に対応しており，かつ POST 先

図4

認証 CGI の引数フォーマットの Opengate が IPv6 に対応していれば，IPv6 で通信が行われる．この際に利用者端末の IPv6 アドレ
スが取得できる．もし IPv4 で POST で行われた
場合は，利用者端末の IPv4 アドレスが再度取得される．
また，先に引数によって取得された IPv4 アドレ

IPv4 アドレスのコード化は，引数の安易な改ざんの防止を目的として行っている．引数が変更され正しいフォーマットではない場合，図 5 を表示し，再度利用者 ID とパスワードの入力を促す．

スは，POST の際に hidden タグを用いて Opengate

CGI に渡される．
以上の利用者端末のアドレス取得の流れを，図 3に示す．

   IPv4 IPv6!#"
WWW   859  
IPv6 HTTP $%&(' ,.-0/IPv4 HTTP $%&(' K+L
OpengateWeb
$  

IPv4HTML Refresh:<;>=@?BADC:D;E=F? GDHCGI)+*

CGI

123 54

IPv4URL

126 5Opengate
CGI
IP 6 or v4 HTTP

IPv4 HTTP

7<: ;>:D=FIF;E?B=FJ G<?BH ADC

IPv6 or v4
IPv4(hidden

図3)

利用者端末のアドレス取得の流れ

図5

引数変更時の表示画面

引数として IPv4 アドレスをコード化して渡しているが，認証時の POST が IPv4 通信によって行われた場合は，この通信に使われた IPv4 アドレスへの通信路を開放し，引数から渡されたアドレス情報は使用しない．
また，引数として “0-0-0” を指定した場合は，再IPv6 に関する動作環境について，ファイアウォー

度認証情報の入力を促さずに，認証時の POST にルには ip6fw，Web サーバには IPv6 に対応した使用されたアドレス (IPv6 または IPv4) のみの通Apache を利用した．また，利用者端末への IPv4のアドレス割り当てには DHCP を，IPv6 アドレス信路を開放する．これによって，IPv6 に対応したの割り当てにはルータ通知デーモンである rtadvdということが可能となる．この “0-0-0” の指定は，を使用し，動作確認を行った．アドレスの割り当て

図 5 の一番下に表示されているリンクをクリックす

方法は，Opengate の動作には直接影響しない．

ることによっても利用可能である．

3.3 取得情報の受け渡し
新 Opengate は最初に取得した IPv4 アドレスを認証 CGI の引数として，コード化して受け渡して3.4 再認証による閉鎖
Opengate では，認証終了後に，ブラウザに JavaApplet がダウンロードされる．この Java Applet

利用者端末において，IPv6 通信路のみを開放する，が監視プロセスとの間に TCP コネクションを張る
ことによって，ネットワークの利用を監視する．
利用者端末に Java Applet が動作する Web ブラ
ウザがない場合，ユーザが設定した時間経過後に通信路を閉鎖する．この通信路の開放時間は，設定で最大値が設定できるものの，長時間開放された場合の閉鎖手段が，従来の Opengate では用意されていなかった．しかし，新 Opengate では，再度認証ページから認証を行うことによって，能動的に通信路を閉鎖することが可能となっている．

4 設定の統合と XML 化
新 Opengate は，設定についても改良を行った．
この節では，設定の統合と設定ファイルの XML 化について述べる．

4.1 設定ファイルの XML 化
従来の Opengate は，設定ファイルは termcap やprintcap で使用されるケーパビリティデータベー
ス形式を採用していた．新 Opengate は，設定ファイルの形式を XML とした．
従来の Opengate の設定は，ヘッダファイルやメイクファイル，設定ファイルに分散していた．これを一元化し，全ての設定が XML 形式の設定ファイルによって設定可能とした．この設定ファイルには，基本的に，Opengate の WWW サーバ名，認証サーバアドレスとそのプロトコルの 3 点のみを設定するだけで，利用可能である．
また，これらの設定は CGI の起動時に読み込まれる．従って設定変更は，その以降に接続してくる¶
設定 1: 利用者 ID による設定切り替え<ExtraSet ExtraId="default" \UserIdPattern="^user1$|^user2$"><AuthServer><Protocol>deny</Protocol></AuthServer><Syslog><Enable>1</Enable><Facility>local2</Facility></Syslog></ExtraSet>µ³´

設定 2 に，付加 ID による設定切り替えの設定
例を示す．「ユーザ ID@」の後に，「guest」という付加 ID が付加される場合の設定例である．付加ID として「guest」を付けた場合に，認証サーバを192.168.0.1，プロトコルを POP3S，また最大利用許容時間が 1200 秒までとなる．
¶
設定 2: 付加 ID による設定切り替え<ExtraSet ExtraId="guest"><AuthServer><Address>192.168.0.1</Address><Protocol>pop3s</Protocol></AuthServer><Duration><Default>1200</Default><Max>1200</Max></Duration></ExtraSet>µ³´

5 試験運用について利用者端末に直ちに適用される．

4.2 利用者 ID と付加 ID による設定切り替え
従来の Opengate は，「利用者 ID@」の後に，認証サーバを指定することによって，認証サーバを切り替えることが可能であった．新 Opengate では特定の利用者 ID や付加 ID によって，個別に設定を切り替えることが可能である．
設定 1 に利用者 ID による設定切り替えの設定
例を示す．利用者 ID が user1 及び user2 の場合は，認証を拒否し，ログを別 (syslog の Facility をlocal2) に生成する．

佐賀大学では，2001 年より佐賀大学の全域規模で，Opengate をディスクレスによって運用しており，約 5 年間の運用実績を持っている．
理工学部において，2005 年 6 月より，主に IPv6に対する機能追加を行った Opengate の試験運用を開始した [3]．2006 年 8 月からは，本稿で報告した
新 Opengate での運用を開始している．新 Open-gate のインタフェースやその利用方法は，従来のOpengate のものと基本的には変更されておらず，利用者はその変更を意識せずに利用することができる．新 Opengate の利用に関するトラブルも特になく，これまで正常に動作している．また，試験期間 (2005 年 6 月 1 日〜2006 年 8 月 19 日) に

表1

新 Opengate を構成する主要ソフトウェア

おける Opengate の利用回数は，37,837 回であった．そのうち，IPv6 に対応した利用者端末からの種類

ソフトウェア名

利用が 1,805 回 (約 4.8%) であった．少ないながら

OSも，IPv6 に対応した利用者端末からの利用が確認

ファイアウォールFreeBSD 5.4
ipfw (OS 付属)
ip6fw (OS 付属)
natd (OS 付属)
rtadvd (OS 付属)
Apache 2.0
isc-dhcp3
opengate1.3.14

できた．

NAT
RA
Web サーバ
DHCP
Opengate

新 Opengate の認証インタフェースと認証後の表示をそれぞれ，図 6，図 7 に示す．また，試験運用中の新 Opengate を構成するソフトウェアを表 1示す．

公開端末や利用者の移動者端末を接続する情報コンセントにおいても，利用資格を有する者のみが利用できる仕組みが必要である．
本稿では，ネットワーク利用を認証し，記録する“Opengate” の機能拡張と改善について報告した．
特に，設定の統合及び XML 化と IPv6 への対応について報告した．
今後の課題としては，今回紹介した新 Opengateの全学的な運用があげられる．また新 Opengate の
図6認証インタフェース

ディスクレスによる運用も今後の課題である．

謝辞
本研究は，平成 17 年度文部省科学研究費補助金(基盤研究 (C) 課題番号 17500040) の援助を受けている．

参考文献[1] 渡辺義明，渡辺健次，江藤博文，只木進一 : 利用と管理が容易で適用範囲が広い利用者認証ゲー
トウェイシステムの開発，情報処理学会論文誌，

Vol.42，No.12 pp.2802-2809 (2001)[2] 只木進一，江藤博文，渡辺健次，渡辺義明 : 利
用者移動端末に対応した大規模ネットワークの図7

認証後の表示6 まとめ

Opengate による構築と運用，情報処理学会論文誌，Vol.46，No.4，pp.922-929 (2005)[3] 大谷誠， 江口勝彦， 渡辺健次 : IPv4/IPv6

大学のネットワークは，大学における研究教育をデュアルスタックネットワークに対応したネッ支援することを目的として構築され，原則として大トワーク利用者認証システムの開発， 情報処理学の構成員が利用資格を有するものである．従っ

学会論文誌，Vol. 47， No. 4， pp. 1146 - 1157て，自由に利用できることを目的として設置される(2006)