Jump to content 日本-日本語

製品  >  ソフトウェア  >  HP- UX Developer Edge

「だれもがroot」を解消するSecurity Containment・後編

HP-UX/Integrityサーバー お問い合せ
コンテンツに進む
「だれもがroot」を解消するSecurity Containment・後編

コンパートメント+リソース管理=SRP

今回のSecurity Containmentのリリースとあわせて、コンパートメントとリソース・パーティション技術を融合した新しいテクノロジーであるSecure Resource Partitions(SRP)も公開されている。
「だれもがroot」を解消するSecurity Containment・後編
setuid問題を解決するFGP
コンパートメント+リソース管理=SRP
HPでは以前より、仮想化技術HP VSE(Virtual Server Environment)のひとつとして、リソース管理ソフトウェアPRM(Process Resource Manager)を有償で提供している。このPRMは、CPUとメモリ、ディスク帯域の利用率について、アプリケーションごとに%単位での配分を可能にする。UNIXでは一般的に、プロセスの優先度に基づくスケジューリングが実施される。しかし、このアルゴリズムでは、% 単位のきめ細かな利用率制御は不可能だ。そこでPRMでは、標準スケジューラの代わりにFair Share Scheduler(FSS)と呼ばれる専用のスケジューラをHP-UXカーネルに組み込むことで、各アプリケーションへの厳密なリソース配分を行う。例えば図3の例では、グループ2に対して66%のCPU使用率が確保されているのがわかる。このように、それぞれのアプリケーションによるリソース消費の影響を隔離した「リソース・パーティション」を実現する。
 
PRMによるCPU使用量の制御
図3:PRMによるCPU使用量の制御
今回リリースされたSRPは、このようなPRMによる「リソースの隔離」と、コンパートメントによる「セキュリティの隔離」を統合するものだ。つまり、それぞれのコンパートメントに対し、一定のCPUやメモリ、ディスク帯域などのリソースを割り当てる。例えば、あるコンパートメント内でバグや不正アクセスが発生し、CPU使用率が極端に上昇した場合でも、他のアプリケーションには十分なCPUパワーが確保される。セキュリティ面での隔離性に加えて、リソース面の隔離性を得ることで、個々のコンパートメントをあたかも「独立した1台のマシン」のように運用できるというシナリオである。

具体的にSRPでは、PRMとコンパートメントの相互運用のための3種類のコマンドが提供されている。

<表:SRPで提供されるコマンド>
 
コマンド名 内容
prm2scomp PRM設定ファイルからコンパートメント設定ファイルへ変換
scomp2prm コンパートメント設定ファイルからPRM設定ファイルへの変換
srpgen コンパートメント設定ファイルとPRM設定ファイルを同時に生成
またPRM 3.0のGUI管理ツールxprmでは、あらかじめ設定されたコンパートメントの一覧から選択し、PRMのパーティションを設定できる(図4)。
  PRM 3.0でのコンパートメント対応
図4:PRM 3.0でのコンパートメント対応
   
さらに、HPが提供するワークロード管理ソフトウェアWLM(Workload Manager)とSRPと組み合わせれば、コンパートメントごとの負荷状況を計測し、リソース配分をリアルタイムに調節することも可能だ。

Standard Mode Security Extensions

最後に、HP-UX 11i v2の2005年5月版で新たに追加されたセキュリティ拡張Standard Mode Security Extensions(SMSE)について紹介し、締めくくりとしよう。SMSEでは、これまでHP-UXの「高信頼性モード」でしか利用できなかった以下のセキュリティ機能が、標準モードでも利用可能になっている。
  • ユーザ・データベース
  • 監査機能の拡張
ユーザ・データベースとは、各ユーザのパスワードに加えて、セキュリティ属性やパスワード運用ポリシーもユーザごとに管理するためのデータベースである。従来のHP-UXでは、/etc/default/securityファイルに設定されたセキュリティ属性がシステム全体で使用されてきた。ユーザ・データベースを利用すれば、個々のユーザについてきめ細かなセキュリティ・ポリシーを指定できる。ちなみに同データベースは、/var/adm/userdbディレクトリ以下にバイナリ・ファイル形式で保存される(テキスト・エディタでの編集は行えない)。

SMSEのユーザ・データベースでは、以下のような新しいセキュリティ属性を指定できる。

<表:ユーザ・データベースで指定可能なおもなセキュリティ属性>
属性 内容
AUDIT_FLAG ユーザの監査
AUTH_MAXTRIES 認証失敗によるアカウントのロック
DISPLAY_LAST_LOGIN 最後にログインに成功した日時の表示
INACTIVITY_MAXDAYS 一定期間ログインしなかったアカウントのロック
LOGIN_TIMES ログイン可能時間帯
PASSWORD_HISTORY_DEPTH 前と同じパスワードの使用禁止

ちなみに、ユーザ・データベースの導入後も、従来と同様のセキュリティ管理は可能である。ユーザのログイン時、以下の順番でセキュリティ属性の設定が読み込まれる。

  • ユーザ・データベース、/etc/passwd、/etc/shadow
  • /etc/default/security(デフォルト・セキュリティ設定)
  • /etc/security.dsc(セキュリティ属性定義)
またSMSEでは、監査機能も拡張されている。同機能では、個々のユーザの操作や、システムで発生した様々なイベントについて、システム・コール・レベルの監査を行える。例えば、ファイルの作成やオープン、システムへのログイン、パスワード変更などを逐一ログ・ファイルに記録できる。

<表:監査機能のおもなコマンド>
コマンド名 機能
audevent 監査するイベントの指定
audisp 監査ログの表示
audsys 監査の開始と終了
userdbset 監査するユーザの指定

以上、本特集では、Security Containmentを中心に、HP-UXに追加された新しいセキュリティ機能を概観した。これらをシステム提案にうまく取り入れれば、ITのセキュリティに対して広まりつつある不安も、SIerにとってはむしろ追い風となるはずだ。
 
 
トップへ 戻る    

その他のコラム(特集)もお読み下さい

 
 
印刷用画面へ
プライバシー ご利用条件・免責事項