IPsec と IKE の管理

新しい事前共有鍵を追加する方法

ipsecinit.conf ファイルのポリシーエントリごとに 1 つの事前共有鍵が必要です。IPsec と IKE が動作している間に新しいポリシーエントリを追加すれば、in.iked デーモンはそれらの新しい鍵を読み込むことができます。この手順では、次の条件がすでにそろっているものとします。

  1. システムコンソールから、スーパーユーザーになるか、同等の役割を引き受けます。


    注 –

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


  2. in.iked デーモンがキー情報の変更を許可するかどうか確認します。


    # /usr/sbin/ikeadm get priv
    Current privilege level is 0x0, base privileges enabled

    コマンドから 0x1 または 0x2 の権限レベルが戻された場合には、キー情報を変更できます。レベル 0x0 の場合には、キー情報を操作できません。デフォルトでは、in.iked デーモンは 0x0 の権限レベルで実行されます。

  3. in.iked デーモンがキー情報の変更を許可しない場合は、デーモンを強制終了します。次に、正しい権限レベルでデーモンを再起動します。


    # pkill in.iked
    # /usr/lib/inet/in.iked -p 2
    Setting priv/usr/lib/inet/in.iked -pilege level to 2!
  4. 乱数を生成し、64 〜 448 ビットのキーを作成します。

    詳細については、乱数を生成する方法を参照してください。

  5. このキーを何らかの方法でリモートシステムの管理者に送信します。

    両者は、同じ事前共有鍵を同時に追加する必要があります。

  6. ikeadm コマンドモードの add preshared サブコマンドを使って新しいキー情報を追加します。


    ikeadm> add preshared { localidtype id-type localid id
    remoteidtype id-type remoteid id ike_mode mode key key }
    
    id-type

    id のタイプを指定する

    id

    id-type が IP のとき IP アドレスを指定する

    mode

    IKE モードを指定する。有効な値は main だけ

    key

    16 進数の事前共有鍵を指定する

    1. たとえば、ホスト enigma で新しいインタフェース ada 用のキーを追加します。


      # ikeadm
      ikeadm> add preshared { localidtype ip localid 192.168.116.16
      remoteidtype ip remoteid 192.168.15.7 ike_mode main
      key 8d1fb4ee500e2bea071deb2e781cb48374411af5a9671714672bb1749ad9364d }
      ikeadm: Successfully created new preshared key.
    2. ホスト ada でも、同じキーを追加します。


      # ikeadm
      ikeadm> add preshared { localidtype ip localid 192.168.116.16
      remoteidtype ip remoteid 192.168.15.7 ike_mode main
      key 8d1fb4ee500e2bea071deb2e781cb48374411af5a9671714672bb1749ad9364d }
      ikeadm: Successfully created new preshared key.
  7. ikeadm コマンドモードを終了します。


    ikeadm> exit
    #
  8. システムごとに、in.iked デーモンの権限レベルを低くします。


    # ikeadm set priv base
    
  9. システムごとに、ipsecinit.conf ファイルを有効にして、追加したインタフェースを保護します。


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

    注意 – 注意 –

    ipsecconf コマンドの実行時には警告を読んでください。in.iked デーモンの再起動時にも、同じ警告が表示されます。ソケットがすでにラッチされている (使用されている) 場合には、システムへ侵入される恐れがあります。詳細については、ipsecinit.confipsecconf のセキュリティについてを参照してください。


  10. システムごとに、ikeadm コマンドを実行して新しい規則を読み込みます。


    # ikeadm read rules
    

    ada および enigma システムの新しい規則の例がこの手順の始めにあります。規則は /etc/inet/ike/config ファイルに格納されているため、ikeadm コマンドでファイル名を指定する必要はありません。

  11. IKE 事前共有鍵がリブート時に確実に使用できるように、この鍵を /etc/inet/secret/ike.preshared ファイルに追加します。

    1. たとえば、enigma システムで、次のキー情報を ike.preshared ファイルに追加します。


      # ike.preshared on enigma for the ada interface
      #…
      { localidtype IP
        localid 192.168.116.16
        remoteidtype IP
        remoteid 192.168.15.7
        # enigma and ada's shared key in hex (32 - 448 bits required)
        key 8d1fb4ee500e2bea071deb2e781cb48374411af5a9671714672bb1749ad9364d
      }
    2. ada システムで、次のキー情報を ike.preshared ファイルに追加します。


      # ike.preshared on ada for the enigma interface
      #…
      { localidtype IP
        localid 192.168.15.7
        remoteidtype IP
        remoteid 192.168.116.16
        # ada and enigma's shared key in hex (32 - 448 bits required)
        key 8d1fb4ee500e2bea071deb2e781cb48374411af5a9671714672bb1749ad9364d
      }
  12. 両システムが通信できることを確認します。事前共有鍵が同一であることを確認する方法を参照してください。