Sun Management Center 3.6.1 ユーザーガイド

第 18 章 Sun Management Center のセキュリティー

この章では、セキュリティー機能、ユーザーとグループ、およびその権限について説明します。この章の内容は次のとおりです。

Sun Management Center のセキュリティーの概念

Sun Management Center ソフトウェアのセキュリティーは、JavaTM セキュリティークラスと SNMPv2 usec (SNMPバージョン 2、ユーザーベースのセキュリティーモデル) のセキュリティー規格に基づいています。

ソフトウェアが提供するセキュリティーレイヤーを次に示します。

アクセス制御カテゴリ

次の項目は、ソフトウェアが提供する ACL カテゴリです。

ACL カテゴリを理解するためには、まず Sun Management Center ソフトウェアのユーザーとグループについて理解する必要があります。次の項目では、ユーザーとグループについて説明します。

Sun Management Center のユーザー

Sun Management Center ユーザーは、サーバーホスト上で有効な UNIX ユーザーです。そのため、システム管理者は、有効ユーザーを /var/opt/SUNWsymon/cfg/esusers ファイルに追加しなければなりません。このファイルにユーザー名がないと、そのユーザーは Sun Management Center ソフトウェアにログインできません。

一般ユーザー

管理者は、Sun Management Center ソフトウェアにログインする必要のあるすべてのユーザーの ID をユーザーリストに追加する必要があります。このファイルの全ユーザーは、デフォルトで一般的なアクセス権を持っています。ただし、追加の権限を付与されたユーザーは除きます。詳細は、「ユーザーに esadm, esops または esdomadm 権限を付与する」を参照してください。

esusers ファイルに含まれるユーザーは、すべて一般ユーザーとして認識されます。Sun Management Center の一般ユーザーは、デフォルトで次の機能を実行できます。

Sun Management Center のスーパーユーザー

Sun Management Center のスーパーユーザーは、以降で説明するすべてのグループに自動的に所属し、管理者権限 (「Sun Management Center の管理者 (esadm)」 を参照) を持ちます。

Sun Management Center のグループ

次に示すグループは、Sun Management Center サーバーの設定中に、サーバーホスト上にデフォルトで作成されます。

また、仮想グループに属する Sun Management Center の全ユーザーを ANYGROUP と呼びます。

これらのグループは、Sun Management Center のサーバーレイヤーが動作するマシン上で定義する必要がありますが、他のマシンで定義する必要はありません。次の項目では、これらのグループの詳細について説明します。


注 –

前述のグループは、/etc/group ファイルに定義されます。


Sun Management Center のオペレーター (esops)

グループ esops に所属する Sun Management Center ソフトウェアのユーザーは、通常オペレーターユーザーとして管理システムの実行、監視、ある値度のパラメータの設定などを行います。esops の実行可能な操作には、一般ユーザーに許可される操作の一部が含まれます。

Sun Management Center の管理者 (esadm)

グループ esadm に所属するユーザーは管理者操作を実行できます。管理者操作は、オペレーターユーザーが実行可能な操作のスーパーセット(上位集合)です (「Sun Management Center のオペレーター (esops)」を参照)。さらに、管理者ユーザー (esadm) は、オペレーターユーザー (esops) が実行可能な全操作のほかに次の操作を実行できます。

Sun Management Center のドメイン管理者 (esdomadm)

esdomadm に所属するユーザーは、次のドメイン管理者操作を実行できます。


注 –

前述の権限を除けば、esdomadm に所属するユーザーは、別の設定がないかぎり一般ユーザーと変わりません。


管理者、オペレーター、および一般機能

次の表に、ユーザーがデフォルトで実行できる各種機能を示します。各機能ごとに実行可能なユーザーが X 印で示されています。

この表は、すべてのモジュールに適用されます。ただし、各モジュールが自ら制御する固有の制限を持つ場合もあります。

表 18–1 ドメイン管理者、管理者、オペレーター、および一般機能

機能 

ドメイン管理者 

管理者 

オペレーター 

一般 

モジュールの読み込み 

 

 

 

モジュールの読み込み解除 

 

 

 

管理ドメインの作成 

 

 

 

管理ドメイン内でのグループの作成 

 

 

 

グループまたは管理ドメインへのオブジェクトの追加 

 

 

 

管理ドメイン、ホスト、モジュールの表示 

ACL ユーザーまたはグループの設定 

 

 

 

モジュールの無効化と有効化 

 

 

モジュールの使用可能スケジュールの設定 

 

 

アラーム制限の設定 

 

 

規則パラメータの設定 

 

 

アラーム処理の実行 

 

 

任意コマンドの実行 

 

 

再表示間隔の設定 

 

 

手動再表示の開始 

履歴ログの有効化と無効化 

 

 

履歴ログパラメータの設定 

 

 

イベントの肯定応答、削除、対処 

 

 

イベントの表示 

Sun Management Center ソフトウェアの上記カテゴリは、包括関係を維持します。つまり、esadm 権限を持つユーザーは、esops 権限を持つユーザーとまったく同じ操作を実行することができます。管理者は、esops ユーザーが esadm ユーザーより多くの操作を実行できるように、デフォルト権限を変更することが可能です。包括関係とは、esopsesadm および esdomadm の各権限が同等であることを意味します。

デフォルト権限を無効にする方法については、「デフォルトのエージェント権限を無効にする」を参照してください。

デフォルト権限

管理ドメインは、トポロジマネージャーで操作します。ここでは、トポロジマネージャーおよびその他のエージェントとモジュールのデフォルト権限について説明します。

トポロジマネージャーのデフォルト権限

次の表に、管理ドメインを維持するトポロジマネージャーのデフォルト権限を示しま す。

表 18–2 トポロジマネージャーのデフォルト権限

トポロジマネージャー 

デフォルト権限 

管理者ユーザーのリスト 

 

オペレーターユーザーのリスト 

 

一般ユーザーのリスト 

 

管理者 SNMP コミュニティーのリスト 

 

オペレーター SNMP コミュニティーのリスト 

 

一般 SNMP コミュニティーのリスト 

public

管理者グループのリスト 

esdomadm

オペレーターグループのリスト 

esops

一般グループのリスト 

ANYGROUP

その他の Sun Management Center のコンポーネントとモジュールのデフォルト権限

次の表に、トポロジマネージャー以外のコンポーネントとモジュールのデフォルト権限を示します。

表 18–3 Sun Management Center のコンポーネントとモジュールのデフォルト権限

コンポーネントとモジュール 

デフォルト権限 

管理者ユーザーのリスト 

 

オペレーターユーザーのリスト 

 

一般ユーザーのリスト 

 

管理者グループのリスト 

esadm

オペレーターグループのリスト 

esops

一般グループのリスト 

ANYGROUP

管理者 SNMP コミュニティーのリスト 

 

オペレーター SNMP コミュニティーのリスト 

 

一般 SNMP コミュニティーのリスト 

public

ANYGROUP は真の UNIX グループではありませんが、Sun Management Center ソフトウェアにログイン可能なすべてのユーザーが、オブジェクトへの一般的なアクセス権を付与されることを意味する、特別なキーワードです。

アクセス制御の定義と制限

esadm グループは、ユーザーとグループに対して ACL 機能を指定することができます。対象となるコンポーネントは次のとおりです。

管理者、オペレーター、および一般的なアクセス

ACL 仕様は次のいずれか 1 つまたは複数のパラメータで確立、定義されます。

Sun Management Center の遠隔サーバーアクセス

ユーザーは、Sun Management Center の遠隔サーバー上で実行中のセッションから、データにアクセスして情報を表示することができます。この場合、ユーザーには一般ユーザーの読み取り専用のアクセス権が付与されます。異なるサーバー上で起動する Sun Management Center セッションの動作は、各セッションのサーバーコンテキストで定義されます。詳細は、「Sun Management Center のサーバーコンテキストとセキュリティー」を参照してください。

ユーザーとして異なるサーバーコンテキストにアクセスして、さまざまな設定を行うことができます。

異なるサーバーコンテキストにリンクして、ほかのサーバーコンテキストのオブジェクトの最上位状態を表示することができます。

Sun Management Center のサーバーコンテキストとセキュリティー

サーバーコンテキストは、Sun Management Center エージェントとそれらエージェントが接続されている特定のサーバーレイヤーの集合です。ーバコンテキスト内のエージェントとホストは、次の主要コンポーネントを共有します。

すべての Sun Management Center コンポーネントとエージェントは、インストール時に、それぞれのトラップハンドラとイベントマネージャーの位置を認識するよう設定されます。Sun Management Center ソフトウェアは、IP アドレスとポートアドレスによってトラップハンドラとイベントマネージャーを特定します。ユーザーは、自分のサーバーコンテキスト内にいるかどうかを判断するために、アクセスするサーバーの IP アドレスとポートアドレスを知っておく必要があります。サーバーコンテキストは、それぞれ個別のポート番号を持っています。

遠隔サーバーコンテキストは、遠隔エージェントと関連するサーバーレイヤーの集合です。

エージェントはサーバーレイヤーからセキュリティー設定情報を受け取ります。このセキュリティー情報によって、エージェントは受け取った管理要求を認証し、管理要求の一部として要求された操作に対してアクセス制御を行えます。

サーバー間の制限

一部のセキュリティー制限は、ユーザーがサーバーコンテキスト間で通信する場合に適用されます。

現在の Sun Management Center 環境では、ほかのサーバーからの情報アクセスに関していくつか制限があります。


注 –

コンソールでは、実際に異なるサーバーコンテキストにアクセスしているかどうかはっきりしない場合があります。この場合は、「詳細」ウィンドウの「情報」タブでサーバーの IP ポート番号またはアドレスを確認してください。


アクセス制御の使用

ここでは、次の主要なアクセス制御機能の実行方法について説明します。

ProcedureSun Management Center のユーザーを追加する

  1. Sun Management Center サーバーホスト上でスーパーユーザーになります。


    % su -
    
  2. /var/opt/SUNWsymon/cfg/esusers ファイルを編集します。

  3. 新規の行にユーザー名を追加します。

    ザ名が有効な UNIX ユーザーであるかどうか確認してください。

  4. ファイルを保存して、エディタを終了します。

    ユーザーリストに追加されたユーザーは、デフォルト権限を有します。詳細は、「デフォルト権限」および 「デフォルトのエージェント権限を無効にする」を参照してください。

Procedureモジュールへのアクセスを制御する

  1. 次のいずれかの方法で属性エディタにアクセスします。

    • 選択したオブジェクト上でマウスボタン 3 を押して、ポップアップメニューから「属性エディタ」を選択します。

    • メインコンソールウィドウの「ツール」メニューから「属性エディタ」を選択します。

    「属性エディタ」が表示されます。ウィンドウ下のボタンは、「取消し」と「ヘルプ」を除いて選択不可の状態です。ウィンドウのフィールドを変更すると、すべてのボタンが選択可能になります。

  2. 「属性エディタ」ウィンドウの「セキュリティー」タブを選択します。

  3. 必要に応じて値を変更します。

    次に、各フィールドのデータの説明と値の例を示します。

    管理者ユーザー

    ユーザーのリスト。jim は、管理者操作が可能なユーザーです。

    オペレーターユーザー

    オペレーターのリスト。john などは、オペレーター操作が可能なユーザーです。複数のエントリの場合は、1 つまたは複数の空白で区切ります。

    一般ユーザー

    一般ユーザーのリスト。nick および richie は、一般操作が可能なユーザーです。

    管理者グループ

    管理者グループに属する全ユーザーは、管理者操作を実行できます。デフォルトでは、必要に応じて、これらのユーザーは esadm または esdomadm になります。

    オペレーターグループ

    esops に属する全ユーザーは、オペレーター操作を実行できます。

    一般ユーザーグループ

    ANYGROUP は、一般操作を実行できる仮想グループです。Sun Management Center の全ユーザーは、仮想グループに属します。

    管理者のコミュニティー

    このフィールドは空で、SNMP を使用する管理者操作を実行できる SNMP コミュニティーがないことを意味します。

    オペレーターのコミュニティー

    このフィールドは空で、SNMP を使用するオペレーター操作を実行できる SNMP コミュニティーがないことを意味します。

    一般ユーザーのコミュニティー

    デフォルトでは、public は、SNMP を使用する一般操作を実行できる SNMP コミュニティーです。

    前述したとおり、「ユーザー」の下に「オペレーター」を複数エントリする場合などは、空白またはコンマで区切ります。

    セキュリティー権限の詳細は、「アクセス制御カテゴリ」を参照してください。

Procedureユーザー定義のグループを ACL に追加する

  1. Sun Management Center サーバーホスト上でスーパーユーザーになります。

  2. groupadd コマンドを使用してグループを作成します。


     # /usr/sbin/groupadd groupname
    
  3. 作成したグループにユーザーを追加します。

    1. /etc/group ファイルで、グループにユーザーを追加します。

    2. ファイルを保存して、エディタを終了します。

  4. 新規グループを ACL に追加します。

    詳細は、「モジュールへのアクセスを制御する」を参照してください。

Procedureユーザーに esadm, esops または esdomadm 権限を付与する

  1. Sun Management Center サーバーホスト上でスーパーユーザーになります。

  2. 必要に応じて、/var/opt/SUNWsymon/cfg/esusers ファイルにユーザー名を追加します。

  3. /etc/group ファイルで、次のいずれかの行にユーザーを追加します。esadm esops、または esdomadm

  4. ファイルを保存して、エディタを終了します。

ProcedureSun Management Center のユーザーを削除する

  1. Sun Management Center サーバーホスト上でスーパーユーザーになります。

  2. /var/opt/SUNWsymon/cfg/esusers ファイルで、削除するユーザー名の行を削除します。

  3. ファイルを保存して、エディタを終了します。

  4. Sun Management Center のグループからユーザー名を削除します。


    注 –

    Sun Management Center のユーザーリストから削除されたユーザーは、以後 Sun Management Center サーバーにログインすることはできません。ユーザーを削除する場合は、必ずすべての ACL から削除してください。


Procedureデフォルトのエージェント権限を無効にする

Sun Management Center ソフトウェアでは、管理者だけが、属性エディタを使用してデフォルト権限を無効にし、特定オブジェクトの ACL リストを変更することができます。

  1. 権限を変更する必要のある管理オブジェクトの属性エディタにアクセスします。

  2. セキュリティー情報を表示して変更するには、「属性エディタ」ウィンドウの「セキュリティー」タブをクリックします。

  3. 必要に応じて情報を変更します。

  4. セキュリティーの変更を適用して「属性エディタ」ウィンドウを閉じる場合は、「了解」をクリックします。

    「属性エディタ」ウィンドウを開いたままセキュリティーの変更を適用する場合は、「適用」をクリックします。

SNMP 暗号化 (プライバシ)

Sun Management Center は、そのサーバーとエージェントコンポーネントとの間の SNMP 通信の暗号化をサポートしています。SNMP 暗号化サポートでは、CBC-DES 対称暗号化アルゴリズムが使用されています。

Sun Management Center 上での SNMP 暗号化は、 es-config スクリプトを使用して有効にできます。このスクリプトを使用することによって、自動ネゴシエーション機能をオンまたはオフに設定できます。詳細は、「SNMP 暗号化の有効化」を参照してください。

Solaris 9 以前での暗号化

Solaris 9 以前が動作するシステムの場合、暗号化は、 SUNWcry パッケージに基づいて行われます。

Solaris 9 が動作するシステムの場合は、次のことに注意してください。

Solaris 10 での暗号化

Solaris 10 が動作するシステムの場合、暗号化は Public Key Cryptographic Standard (PKCS#11) に基づいて行われます。

PKCS#11 は、暗号化情報を保持し、暗号化機能を実行するデバイスに API (Cryptoki という) を指定します。RSA 定義の PKCS#11 の詳細は、http://www.rsasecurity.com/rsalabs を参照してください。

Solaris 10 が動作するシステムの場合は、次のような条件があります。

Linux での暗号化

Linux が動作するシステムの場合、暗号化は Public Key Cryptographic Standard (PKCS#11) に基づいて行われます。

SNMP 暗号化は、PKCS11_API.so 暗号化ライブラリに基づいて行われます。このライブラリはデフォルトではインストールされません。 /usr/lib/pkcs11 にあるこのライブラリを準備して、pkcs_slot デーモンが暗号化を有効にできるようにする必要があります。

ネゴシエーション機能

暗号化をサポートする Sun Management Center 3.6.1 は、エージェントが暗号化をサポートするかどうかにかかわらず、エージェントを動的にサポートするように設定できます。この機能のことを「自動ネゴシエーション機能」と呼び、オンまたはオフに設定できます。

自動ネゴシエーション機能をオフに設定している場合、サーバーは常に、エージェントとの通信を開始するときに暗号化を使用します。厳密なセキュリティーポリシーを使用する環境では、この設定のほうがよいと考えられます。自動ネゴシエーション機能をオフに設定している場合、エージェントは次のように動作します。

自動ネゴシエーション機能をオンに設定している場合、サーバーがエージェントとの SNMP 通信を暗号化するのは、エージェントが暗号化をサポートしているときだけです。結果として、次のイベントのいずれかが発生します。

SNMP 暗号化の有効化

SNMP 暗号化の現在の状態を表示するには、 コマンドを引数なしで実行します。

Procedureサーバーのインストール時に SNMP 暗号化を有効にする

  1. パッケージがインストールされているかどうかを確認します。

    • (Solaris 9 以前が動作するシステムの場合) 次を入力することによって、/usr/lib/libcrypt_d.so 暗号化ライブラリを含む SUNWcry パッケージがシステムにインストールされていることを確認します。


      % pkginfo | grep SUNWcry
      

      パッケージがインストールされていれば、次のようなメッセージが表示されます。


      application SUNWcry

      注 –

      SUNWcry パッケージは Solaris Encryption Kit の一部です。Solaris Encryption Kit を入手する方法については、Sun の販売代理店に問い合わせてください。セキュアなシステムの管理についての詳細は、Solaris のシステム管理マニュアルを参照してください。


    • (Solaris 10 が動作するシステムの場合) 次を入力することによって、/usr/lib/libpkcs11.so 暗号化ライブラリを含む SUNWcsl パッケージがシステムにインストールされていることを確認します。


      % pkginfo | grep SUNWcsl
      

      パッケージがインストールされていれば、次のようなメッセージが表示されます。


      application SUNWcsl
    • (Linux が動作するシステムの場合) /usr/lib/pkcs11 にある PKCS11_API.so 暗号化ライブラリを用意し、pkcs_slot デーモンを有効にします。

  2. サーバーホストからスーパーユーザーとして、次のコマンドを実行します。


    # es-config -r
    

    適切なパッケージが存在することが検出され、すべての Sun Management Center コンポーネントが自動的に停止されて、セキュリティーシードの入力が求められます。

  3. セキュリティーシードを入力します。

    次に、 SNMPv1 コミュニティー文字列の入力が求められます。

  4. 暗号化された通信を開始するかどうかの問い合わせがあります。暗号化された通信を開始する場合は y、開始しない場合は n を入力します。

  5. 自動ネゴシエーション機能を有効にするかどうかの問い合わせがあります。自動ネゴシエーション機能を有効にする場合は y、無効にする場合は n を入力します。

    自動ネゴシエーション機能の詳細は、「ネゴシエーション機能」を参照してください。

SNMP 通信

Sun Management Center エージェントは、サーバーと SNMPv1、SNMPv2c、および SNMPv2usec 通信できます。デフォルトでは、これらの通信は有効ですが、SNMPv1 および SNMPv2c 通信は、domain-config.x ファイルを編集することによって無効にできます。ただし、SNMPv2usec 通信を無効にすることはできません。

ProcedureSNMPv1 通信の無効化

  1. Sun Management Center エージェントでスーパーユーザーになります。

    % su -

  2. /var/opt/SUNWsymon/cfg/domain-config.x ファイルを開きます。

  3. このファイルに次の行を追加します。


    agent = 
    {
             agentServer = "agentHostName"
             snmpPort = "161"
             SNMPv1 = off
    }

    agentHostName は、エージェントがインストールされているホストの名前です。

ProcedureSNMPv2c 通信の無効化

  1. Sun Management Center エージェントでスーパーユーザーになります。

    % su -

  2. /var/opt/SUNWsymon/cfg/domain-config.x ファイルを開きます。

  3. このファイルに次の行を追加します。


    agent = 
    {
             agentServer = "agentHostName"
             snmpPort = "161"
             SNMPv2c = off
    }

    agentHostName は、エージェントがインストールされているホストの名前です。

SNMPv3

SNMPv3 は、SNMPv2usec の限界を克服するために導入された業界標準のプロトコルです。SNMP バージョン 3 のユーザーセキュリティーモデル (SNMPv3 usm) によって生成される SNMP メッセージは、SNMPv2usec の生成するメッセージに比較してより構造化されています。

Sun Management Center 3.6.1 ソフトウェアは SNMPv3 をサポートしています。SNMPv3 を使用すると、Sun Management Center エージェントは他社製の管理アプリケーションと安全に通信できます。