Solaris のシステム管理 (IP サービス)

2 つのシステム間のトラフィックを保護

この手順を行う前に、各システムに 2 つのアドレス (IPv4 アドレスと IPv6 アドレス) があり、有効なアルゴリズムのいずれかを使用して AH (Authentication Header) 保護を呼び出しているものとします。 また、SA (Security Association) は共有されているものとします。 すなわち、2 つのシステムを保護するのに必要なのは 1 組だけの SA です。

  1. システムコンソールからスーパーユーザーになります。


    注 –

    リモートログインすると、セキュリティ上重要なトラフィックが盗聴される恐れがあります。何らかの方法でリモートログインを保護していても、システム全体のセキュリティがリモートログインセッションレベルに低下します。


  2. システムごとに、他のシステムのアドレスとホスト名を /etc/inet/ipnodes ファイルに追加します。次のように、1 つのシステムのエントリは連続してそのファイルに入力します。

    1. partym という名前のシステムでは、次のように入力します。


      # Secure communication with enigma 
      192.168.66.1 enigma
      fec0::10:20ff:fea0:21f7 enigma
    2. enigma という名前のシステムでは、次のように入力します。


      # Secure communication with partym 
      192.168.55.2  partym
      fec0::9:a00:20ff:fe7b:b667 partym

      システムの名前は、一例として使用しているだけです。実際にシステム間のトラフィックを保護する場合には、各自のシステムの名前を使用してください。

    これで、起動スクリプトでは、存在しないネーミングサービスに依存することなくシステム名を使用できます。

  3. システムごとに、/etc/inet/ipsecinit.conf ファイルを編集して IPsec ポリシーエントリを追加します。

    1. enigma システムでは、次のように入力します。


      {laddr enigma raddr partym} ipsec {auth_algs any sa shared}
    2. partym システムでは、次のように入力します。


      {laddr partym raddr enigma} ipsec {auth_algs any sa shared}
  4. システムごとに、2 つのシステム間のセキュリティアソシエーションの組を追加します。

    システムごとに、読み取り専用 (600 のアクセス権) の /etc/inet/secret/ipseckeys ファイルを編集し、このファイルに次の行を入力します。


    add ah spi random-number dst local-system authalg an_algorithm_name \
    	    authkey random-hex-string-of-algorithm-specified-length
    add ah spi random-number dst remote-system authalg an_algorithm_name \
    	    authkey random-hex-string-of-algorithm-specified-length
    

    注 –

    キーと SPI は、セキュリティアソシエーションごとに変更できますが、同じにしてはいけません。


  5. 各システムをリブートします。


    # /etc/reboot
    

    リブートでは、起動プロセスの終了前に /etc/inet/secret/ipseckeys ファイルが読み取られます。 キーを変更する場合は、両方のシステムで ipseckeys ファイルが変更されていることを確認してください。

例 — IPv4 アドレス間のトラフィックの保護

次の例では、IPv4 アドレスを持つシステム間のトラフィックを保護する方法について説明します。この例では、自動キー管理 (IKE) を使用してセキュリティアソシエーションを作成します。IKE は、管理者が介在する必要が少なく、大量のトラフィックを容易に保護するようにスケーリングします。

  1. 次のように、2 つのシステム間のトラフィックを保護にある手順 2/etc/inet/ipnodes ファイルを /etc/hosts ファイルに置き換えます。

    partym という名前のシステムでは、次のように enigma を追加します。


    # echo "192.168.66.1 enigma">> /etc/hosts
    

    enigma という名前のシステムでは、次のように partym/etc/hosts ファイルに追加します。


    # echo "192.168.55.2 partym">> /etc/hosts
    
  2. ipsecinit.conf ファイルを編集して IPsec ポリシーエントリを追加します。

  3. ipseckey コマンドではなく、ike.config(4) ファイルを使用して、セキュリティアソシエーションを追加します。 この手順については、IKE 作業を参照してください。


    注 –

    2 つのシステム間のトラフィックを保護手順 4 で説明されているように、キーを手動で作成することもできます。


  4. リブートします。

例 — リブートなしでの IPv6 アドレス間のトラフィックの保護

次の例では、IPv6 アドレスを持つシステム間の保護トラフィックをテストする方法について説明します。

  1. 2 つのシステム間のトラフィックを保護手順 4 まで実行します。

  2. リブートしないで、引数として ipseckeys ファイルを指定する ipseckey コマンドを入力することで、セキュリティアソシエーションをデータベースに追加します。


    # ipseckey -f /etc/inet/secret/ipseckeys 
    
  3. 次のように、ipsecconf コマンドを使用して IPsec ポリシーを有効にします。


    # ipsecconf -a /etc/inet/ipsecinit.conf 
    

    注 –

    このコマンドの実行時には警告を読んでください。ソケットがすでに使用中 (ラッチされた) の場合には、システムのセキュリティが低下します。