NSX Manager で SSL Cipher の優先順位/優先設定を適用する方法
search cancel

NSX Manager で SSL Cipher の優先順位/優先設定を適用する方法

book

Article ID: 441626

calendar_today

Updated On:

Products

VMware NSX

Issue/Introduction

免責事項:これは英文の記事「How to Enforce SSL Cipher Priority/Preference on the NSX Manager(435082)」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。

厳格な TLS コンプライアンスに対応するため、セキュリティチームでは多くの場合、TLS ハンドシェイク時にサーバー側で優先する cipher suite の順序を指定することが求められます(Nginx directive の ssl_prefer_server_ciphers on; と同様)。

root shell から nginx.conf file を直接変更することは、NSX Manager では厳密にサポート対象外です。本記事では、公式にサポートされている REST API を使用して cipher priority を適用する方法について説明します。

 

Environment

VMware NSX

 

Cause

VMware では、セキュリティ目的の TLS および encryption cipher について、常に業界標準に準拠するよう努めています。

 

Resolution

NSX Manager は、API configuration array で指定された cipher の top-down order に基づいて、cipher priority を厳密に決定します。優先順位を変更するには、設定を取得し、配列を並べ替えてから再度送信する必要があります。
 
Step 1: 現在の API service configuration を取得する
  • GET request を実行して、現在の cipher suite の一覧を取得します。
  • API Endpoint: GET https://<NSX-Manager-IP>/api/v1/cluster/api-service
  • JSON output をテキストエディターに保存します。
 
Step 2: JSON 配列を並べ替える
  • JSON payload 内の cipher_suites 配列を探します。
  • 優先設定を適用するには、配列内の cipher block を手動で切り取り、貼り付けて並べ替え、最も優先したい cipher が list の一番上に、最も優先度の低い cipher が一番下になるようにします。
  • 使用する cipher については、"enabled": true が設定されていることを確認します。
 
Step 3: 新しい configuration を送信する
  • 新しく並べ替えた JSON を payload として使用し、PUT request を実行します。
  • API Endpoint: PUT https://<NSX-Manager-IP>/api/v1/cluster/api-service
  • Header: Content-Type: application/json
  • Note: 変更を適用するため、API service はクラスター全体で自動的に 再起動されます。一時的に UI が切断される場合があります(最大 60 秒)。

 

Additional Information

優先順位を設定した例:

"cipher_suites": [
    {
        "name": "TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384",
        "enabled": true
    },
    {
        "name": "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256",
        "enabled": true
    }
]

参照KB: Disable/Enable NSX-T Manager Ciphers or TLS Settings