Oracle Solaris Trusted Extensions 管理の手順

ProcedureTrusted Extensions ネットワークをデバッグする

期待どおりに通信していない 2 つのホストをデバッグする場合、Trusted Extensions と Solaris のデバッグ用のツールを使用できます。たとえば、snoopnetstat など Solaris のネットワークデバッグコマンドを使用できます。詳細は、snoop(1M) および netstat(1M) のマニュアルページを参照してください。Trusted Extensions に固有のコマンドについては、表 2–4 を参照してください。

始める前に

ネットワーク設定をチェックできる役割で、大域ゾーンにいる必要があります。セキュリティー管理者役割またはシステム管理者役割が、これらの設定をチェックできます。

  1. tnd デーモンをトラブルシューティングするには、ポーリング間隔を変更し、デバッグ情報を収集します。


    注 –

    tnd サービスが実行されているのは、ldap サービスが実行されている場合だけです。


    詳しくは、tnd(1M) のマニュアルページを参照してください。

  2. 通信できないホスト同士が同じネームサービスを使用していることを確認します。

    1. 各ホストで、nsswitch.conf ファイルを確認します。

      1. nsswitch.conf ファイルで、Trusted Extensions データベースの値を確認します。

        たとえば、ネットワークの管理に LDAP を使用するサイトでは、エントリは次のようになります。


        # Trusted Extensions
        tnrhtp: files ldap
        tnrhdb: files ldap
      2. 値が異なる場合、nsswitch.conf ファイルを修正します。

        これらのエントリを修正する場合、システム管理者は「ネームサービススイッチ」アクションを使用します。詳細は、「Trusted Extensions の CDE 管理アクションを起動する」を参照してください。このアクションでは、必要な DAC および MAC ファイルのアクセス権が維持されます。

    2. LDAP ネームサービスが構成されていることを確認します。


      $ ldaplist -l
    3. 両方のホストが LDAP ネームサービスにあることを確認します。


      $ ldaplist -l hosts | grep hostname
      
  3. 各ホストが正しく定義されていることを確認します。

    1. Solaris 管理コンソールを使用して定義を確認します。

      • 「セキュリティーテンプレート」ツールで、各ホストが他方のホストのセキュリティーテンプレートと互換性のあるセキュリティーテンプレートに割り当てられていることを確認します。

      • ラベルなしシステムの場合、デフォルトのラベル割り当てが正しいことを確認します。

      • 「トラステッドネットワークゾーン」ツールで、マルチレベルポート (MLP) が正しく構成されていることを確認します。

    2. コマンド行を使用して、カーネルのネットワーク情報が最新であることを確認します。

      各ホストのカーネルキャッシュでの割り当てが、ネットワーク上およびほかのホスト上の割り当てに一致することを確認します。

      伝送のソース、宛先、ゲートウェイホストのセキュリティー情報を取得するには、tninfo コマンドを使用します。

      • 任意のホストの IP アドレスと、割り当てられたセキュリティーテンプレートを表示します。


        $ tninfo -h hostname
        IP Address: IP-address
        Template: template-name
        
      • テンプレート定義を表示します。


        $ tninfo -t template-name
        template: template-name
        host_type: one of CIPSO or UNLABELED
        doi: 1
        min_sl: minimum-label
        hex: minimum-hex-label
        max_sl: maximum-label
        hex: maximum-hex-label
        
      • ゾーンの MLP を表示します。


        $ tninfo -m zone-name
        private: ports-that-are-specific-to-this-zone-only
        shared: ports-that-the-zone-shares-with-other-zones
        
  4. 正しくない情報があれば修正します。

    • ネットワークセキュリティー情報を変更または確認するには、Solaris 管理コンソール ツールを使用します。詳細は、「トラステッドネットワーキングのツールを開く」を参照してください。

    • カーネルキャッシュを更新するには、情報が最新でないホストで tnctl サービスを再起動します。このプロセスが完了するにはしばらく時間がかかります。次に、tnd サービスをリフレッシュします。リフレッシュに失敗した場合は、tnd サービスの再起動を試みます。詳細は、「カーネルキャッシュとトラステッドネットワークデータベースを同期する」を参照してください。


      注 –

      tnd サービスが実行されているのは、ldap サービスが実行されている場合だけです。


      再起動するとカーネルキャッシュが消去されます。起動時に、キャッシュにデータベース情報が生成されます。カーネルへの情報生成にローカルデータベースと LDAP データベースのどちらが使用されるかは、nsswitch.conf ファイルで決まります。

  5. デバッグに役立つ伝送情報を収集します。

    • 経路指定構成を確認します。

      route コマンドの get サブコマンドを使用します。


      $ route get [ip] -secattr sl=label,doi=integer
      

      詳細は、route(1M) のマニュアルページを参照してください。

    • パケットのラベル情報を表示します。

      snoop -v コマンドを使用します。

      -v オプションを使用すると、ラベル情報などパケットヘッダーの詳細が表示されます。このコマンドでは多くの情報が表示されるため、コマンドで調べられるパケットを制限したい場合があります。詳細は、snoop(1M) のマニュアルページを参照してください。

    • 経路指定テーブルのエントリとソケットのセキュリティー属性を表示します。

      netstat -a|-r コマンドで、-R オプションを使用します。

      -aR オプションを使用すると、ソケットの拡張セキュリティー属性が表示されます。-rR オプションを使用すると、経路指定テーブルのエントリが表示されます。詳細は、netstat(1M) のマニュアルページを参照してください。