OpengateMsql - 管理データベース

 

概要

インストール

アーカイブ中にスクリプトを用意している。システムの起動に先立ってデータベースの設定を行う。

tar xzvf opengatem0.0.0.tar.gz
cd opengatem0.0.0/sqlscript 

mysql < createtablescript  (実行必須)
mysql < insertmacscript (*内容変更必要、実行Optional)
php < ../phpsrc/updatevendortable.php (実行必須)

テーブルとフィールドの解説

テーブルとフィールドは以下の通りである。 使用とともに容量が増大するテーブルがある。

TABLE opengatem.macaddrs=MACアドレス登録テーブル

 フィールド名称  日本語名  解説
 macAddress  MACアドレス

 デーモン側では、「コロン区切り、英小文字と数字」の表記となっているものとして、文字列をそのまま比較する。
 入力時にチェックして、英大文字使用やマイナス区切りは変換または拒否を。
 UNIQUEとしていない。古いログとの対応時に不都合なため。
 登録時には、同一のMACアドレスを持つ未削除端末(statusが'D'でない)があれば不可とすること。
 1ユーザ当りの登録数は制限すること。

 status  状況フラグ

 'A'=Active(有効)、'I'=Inactive(無効)、'D'=Deleted(削除)、'P'=Pause(休止)
 利用者からの削除依頼時には消去せずフラグDを付けて保持する。利用ログがない場合は削除する。
 管理側の都合で一時的に無効とするにはフラグIを付ける。フラグIの付いた機器は利用・更新・削除ともユーザから不可とする。
 ユーザ都合で一時的に無効にするにはフラグPを付ける。これは更新・削除がユーザから可能とする。
 デーモン側では「このフラグが'A'でかつ期限以前」を有効なアドレスと判断する。
 D以外のフラグが付いたmacAddressは一意とする。

 device  機器名

 処理の煩雑さを避けるため、半角の英数字限定とする。
 HTMLやSQLで特殊作用のある、「;<>%&」などの文字も不可とする。
 利用者・管理者が複数機器を区別するために利用する。
 デーモン側では使用しない。

 userId  ユーザID  デーモン側ではログ記録時に用いる。
 extraId  付加ID

 デーモン側ではログ記録時に用いる。
 当面使用予定無し。ユーザグループの区別に使用、当面は””。
 なお、Opengateで有効だった、付加IDによるconfファイル個別設定は行えない(全端末を一つのデーモンで扱うため)。

 mailAddress  メールアドレス  ユーザのメールアドレス。更新システムで用いる。設定されていれば、このアドレスに使用期限前に警告メールが送られ る。
 entryDate  登録日時  DB登録の日時を記録する。
 デーモン側では使用しない。
 renewDate  更新日時  MACアドレス申請を更新した最新日時を記録する。 
 デーモン側では使用しない。
 limitDate  期限日時  有効期限の日時を記録する。
 デーモン側では、有効なMACアドレスであるか否かの判定に使う。
 想定では更新日時から一ヶ月先としている。
 statusをDに変えるときは、変更時刻を記録する。

TABLE opengatem.sessionmd=利用記録

 フィールド名称  日本語名  解説
 macAddress  MACアドレス  端末のMACアドレス
 gatewayName  ゲートウェイドメイン名  複数ゲートウェイを運用時にどのゲートウェイで利用したかを区別するため
 openTime  開始時刻  許可ルールを追加した時刻
 closeTime  終了時刻  許可ルールを削除した時刻、一定時間未使用時に起きるため、実際の利用終了より遅い時刻となる。
   

 macaddrsテーブルと合わせたViewを作れば良いため、userIdその他は利用記録のテーブルには記録し ない。
 ただし、同じMACアドレスが日時を分けて複数userIdに対応する可能性があるので、View時には注意するこ と。
 時間とともに容量が増大するので定期的に削除す る必要がある。

TABLE opengatem.macippair=MAC-IP対の記録

 フィールド名称  日本語名  解説
 macAddress  MACアドレス  端末のMACアドレス
 ipAddress  IPアドレス  端末のIPアドレス
 findTime  発見時刻  アドレス対を発見した時刻
   

 時間とともに容量が増大するので定期的に削除す る必要がある。


TABLE opengatem.macmodify=MACアドレスの登録変更記録

 フィールド名称  日本語名  解説
 userId  ユーザID  登録を変更したユーザのID
 extraId  付加ID  登録を変更したユーザの付加ID、通常は””
 macAddress  MACアドレス  登録を変更したMACアドレス
 modifyType  変更の種類  'R'=Register(登録)、'E'=Extend(延長)、'D'=Delete(削除)、 'I'=Inactivate(無効化)、'A'=Acitivate(有効化)、'P'=Pause(休止)
 modifyDate  変更日時  変更した日時
     時間とともに容量が増大するので定期的に削除す る必要がある。
 デーモンでは使用しない。
 CGIでは一日当りの変更可能回数の超過チェックに使用する。

TABLE opengatem.nicvendors=ネットワークインターフェースカード製造業者のリスト 

 フィールド名称  日本語名  解説
 oui  MACアドレスの左半分  アドレスの左半分が企業名に対応
 org  製造業者名  企業名はIEEEのサイトから取得
    

 デーモンでは使用しない。
 ほぼ一定容量である。mchkページで、業者名に'?'が目立つようになると作り直す方が良い。方法はアーカイブ中に ある。

TABLE opengatem.watchlist=監視するアドレスのリスト 

 フィールド名称  日本語名  解説
 macAddress  MACアドレス  監視対象のMACアドレス
一致するアドレスのパケットを検出するとsyslog経由で報告する。"ALL" のレコードがあると全て報告する。詳細は特定アドレス監視
 reporting 報告フラグ  このフィールドが"Y"に一致する場合に報告する。不一致の場合は無視する。
 memo メモ  特別監視の理由などをメモする。daemonでは使用せず。

VIEW opengatem.sessionview=MAC登録と利用記録を組み合わせたビュー

 フィールド名称
userId, extraId, macAddress, device, openTime, closeTime, gatewayName