Oracle® Solaris 11.2 でのネットワークのセキュリティー保護

印刷ビューの終了

更新: 2014 年 9 月
 
 

IPsec を使用してほかのサーバーとの Web サーバー通信を保護する方法

Web サーバーを実行するシステムで、IPsec を使用して Web クライアントのリクエスト以外のすべてのトラフィックを保護できます。保護されるネットワークトラフィックは、通常、Web サーバーとほかのバックエンドサーバーの間です。

Web クライアントが IPsec をバイパスできるだけでなく、この手順では IPsec ポリシーによってサーバーが DNS クライアントのリクエストを作成できるようになります。その他のすべてのトラフィックは IPsec で保護されます。

始める前に

    特定の権利を持つユーザーは、root でなくてもこれらのコマンドを実行できます。

  • 構成コマンドを実行するには、Network IPsec Management 権利プロファイルが割り当てられている管理者になる必要があります。

  • IPsec 関連のシステムファイルを編集して鍵を作成するには、pfedit コマンドを使用します。

  • hosts ファイルを編集するには、root 役割になるか、そのファイルを編集するための明示的なアクセス権を持っている必要があります。

詳細は、Oracle Solaris 11.2 でのユーザーとプロセスのセキュリティー保護 の割り当てられている管理権利の使用を参照してください。

リモートで管理する場合は、Example 7–1 およびOracle Solaris 11.2 での Secure Shell アクセスの管理 のSecure Shell を使用して ZFS をリモートで管理する方法でセキュアなリモートログイン手順を確認してください。

  1. IPsec ポリシー検査をバイパスするサービスを指定します。

    Web サーバーの場合、TCP ポート 80 (HTTP) と 443 (保護 HTTP) が該当します。Web サーバーが DNS 名検査をするときは、TCP と UDP の両方にポート 53 も組み込む必要がある場合もあります。

  2. Web サーバーポリシーを IPsec ポリシーファイルに追加します。

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

    # pfedit /etc/inet/ipsecinit.conf
    ...
    # Web traffic that web server should bypass.
    {lport  80 ulp tcp dir both} bypass {}
    {lport 443 ulp tcp dir both} bypass {}
    
    # Outbound DNS lookups should also be bypassed.
    {rport 53 dir both} bypass {}
    
    # Require all other traffic to use ESP with AES and SHA-2.
    # Use a unique SA for outbound traffic from the port
    {} ipsec {encr_algs aes encr_auth_algs sha512 sa shared}

    これで、保護トラフィックだけがシステムへのアクセスを許可されます。ただし、Step 1 で説明した、検査を省略するトラフィックは例外です。

  3. IPsec ポリシーファイルの構文を確認します。
    # ipsecconf -c /etc/inet/ipsecinit.conf
  4. IPsec ポリシーをリフレッシュします。
    # svcadm refresh ipsec/policy
  5. IPsec 用の鍵をリフレッシュします。

    ike サービスを再起動します。

    # svcadm restart ike:ikev2

    注 - IKEv1 プロトコルのみを実行できるシステムと通信している場合は、ike:default インスタンスを指定します。

    鍵を手動で構成した場合は、IPsec の鍵を手動で作成する方法の手順に従います。

    これで設定が完了しました。

  6. (オプション) Web 以外のトラフィックのために Web サーバーと通信する場合は、リモートシステムを有効にします。

    リモートシステムの /etc/inet/ipsecinit.conf ファイルに次の行を追加します。

    ## Communicate with web server about nonweb stuff
    ##
    {raddr webserver} ipsec {encr_algs aes encr_auth_algs sha512 sa shared}

    構文を検証したあと、IPsec ポリシーをリフレッシュしてアクティブ化します。

    remote-system # ipsecconf -c /etc/inet/ipsecinit.conf
    remote-system # svcadm refresh ipsec/policy

    IPsec ポリシーが一致した場合にかぎり、リモートシステムは、非 Web トラフィックを持つ Web サーバーと安全に通信できます。

  7. (オプション) トンネルごとのエントリも含め、IPsec ポリシーエントリを一致した順序で表示します。
    # ipsecconf -L -n