HTTPS の有効化
MATLAB® Production Server™ は、HTTPS を使用して、サーバー インスタンスとクライアント間に安全な接続を確立します。HTTPS は、クライアントがサーバーへの接続を検証するための、証明書ベースの認証を提供します。オプションとして、サーバーがクライアントの証明書ベースの認証を提供できるように HTTPS を構成することもできます。クライアント認証の構成の詳細については、クライアント認証の構成を参照してください。HTTPS は、クライアントとサーバー インスタンス間に暗号化されたデータ パスも提供します。
SSL 証明書および鍵の取得とコピー
サーバー インスタンスで HTTPS を設定するには、SSL 証明書と、対応する秘密鍵を、サーバー インスタンスの
フォルダーに保存する必要があります。SSL 証明書と秘密鍵は PEM 形式でなければなりません。<instance_root>/x509/
自己署名 SSL 証明書を生成するには、以下の openssl
コマンドを使用します。
openssl req -x509 -nodes -newkey rsa:4096 -keyout private_key.pem -out cert_chain.pem -days 365
private_key.pem
を使用して自己署名証明書 cert_chain.pem
を生成します。この証明書の有効期限は 365 日間です。詳細については、OpenSSL を参照してください。自己署名 SSL 証明書は、暗号化は提供するものの認証は提供しないため、テスト環境での使用に適しています。認証機関 (CA) によって署名された SSL 証明書は、本番環境での使用に適しています。
構成ファイルの編集
HTTPS を構成するには、サーバー インスタンスの main_config
構成ファイルで以下のプロパティを指定します。
https
:HTTPS ポートx509-cert-chain
:PEM 形式の証明書チェーンで有効な証明書x509-private-key
:PEM 形式の有効な秘密鍵
サーバーで https
プロパティを設定する場合、x509-cert-chain
プロパティと x509-private-key
プロパティの両方を設定する必要があります。設定しなかった場合、サーバーは起動に失敗します。サーバー構成ファイルの詳細については、Server Configuration Properties を参照してください。
以下の構成の抜粋では、./x509/cert_chain.pem
に保存されている証明書と、./x509/private_key.pem
に保存されている暗号化されていない秘密鍵を使用して、ポート "port" で安全な接続を受け入れるようにサーバー インスタンスを構成します。
...
--https port
--x509-cert-chain ./x509/cert_chain.pem
--x509-private-key ./x509/private_key.pem
...
暗号化されていない秘密鍵よりも高いセキュリティを必要とする本番環境の設定では、暗号化された秘密鍵を使用してください。秘密鍵の復号化用のパスフレーズを、所有者による読み取り専用アクセスが設定されたファイルで指定し、x509-passphrase
プロパティを使用してサーバー インスタンスに通知します。
...
--https port
--x509-cert-chain ./x509/cert_chain.pem
--x509-private-key ./x509/private_key.pem
--x509-passphrase ./x509/key_passphrase
...
サーバーを起動するには、http
プロパティ、https
プロパティ、または両方のプロパティを設定する必要があります。クライアントがサーバーと通信する際に、HTTP ではなく HTTPS のみを使用するようにするには、http
プロパティを無効にする必要があります。https
プロパティと http
プロパティの両方が有効になっている場合、クライアントは HTTPS と HTTP の両方を使用してサーバーと通信できます。HTTP サポートが必要でない限り、https
プロパティを有効にすることをお勧めします。