ISA Server 2004 の各ログを SQL Server 2005 に記録する方法
! OS + 認証環境の準備
- Active Directory 環境を構築する。
- SQL Server 2005 と ISA Server 2004 をインストールするマシンをそれぞれドメインに参加させる。この二つは同一のマシンでもいいけれど、サービスの起動タイミングの問題があり、スタートアップ スクリプトやサービスの依存関係を手動で設定する必要が発生する。もちろん ISA は外に晒されるものなので、セキュリティ的問題もある。なので、できるだけ混在させないほうがいい。
! SQL Server 2005 のインストールと設定
- SQL Server 2005 をきわめて普通にインストール。サービスの動作する権限は、適当な Active Directory ユーザー アカウントを指定する。インスタンスも無名で OK。このとき、他の環境に SQL Server Management Studio が無ければ、これも一緒にインストールしておく。
- ログを保存する DB を作成。名称はなんでも良いがわかりやすく。今回は "ISA_DB" と名づけた。
- ISA サーバー用のログオンを作成。ログオンの権限を ISA Server 2004 用のコンピュータにも与えなくてはならないので、ログオンは Active Directory グループを指定する。(すなわち、あらかじめ Active Directory グループを作成すること。)
- ログオンへ ISA_DB へのアクセス権を与える。めんどくさいので、DB_OWNER を与えた僕はだめだめです。恐らく書き込み、読み込みができれば大丈夫なはず。
- ISA Server 2004 のインストール メディアを開き、.SQL の拡張子で保存されている二つの SQL Query を ISA_DB 上で実行する。
! ISA Server 2004 のインストールと設定
- ISA Server 2004 を普通にインストール。
- SQL Server 2005 の ODBC ドライバをインストール。
- ISA Server 2004 のコンピュータを先ほど作成した SQL Server のアクセスグループに登録。
- ODBC を使い SQL Server 2005 へのシステム DSN を作成。
- ISA の管理 から 監視の構成 を開き、ログ タブを選択。Firewall ログを Web プロキシ ログの設定があるので、それを SQL Server を参照するよう設定。その際、暗号化のチェックボックスがあるが、使用するには証明書を発行して設定する必要があるので、チェックをはずす。権限にはユーザー アカウントを指定し、そのアカウントに SQL Server アクセス用のグループを登録しておく。
! 確認
- ODBC 接続のテストをしてみる。
- ログ設定のテストを実行してみる。
- SQL Managemente Studio から select * from FirewallLog と打ってその結果を確認する。
! 課題
- 証明書を使った暗号化の設定方法を確認する。
- ISA_DB への権限を絞る。
! うまく設定できないと
- SQL Server へログの保存ができないので、ISA Server の Firewall サービスが起動できないか、起動してもほっとくと落ちる。