步驟 3:設定 Web 伺服器 - AWS CloudHSM

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

步驟 3:設定 Web 伺服器

更新 Web 伺服器軟體組態,以使用 HTTPS 憑證以及您在 上一個步驟中建立的對應仿造 PEM 私有金鑰。請記得在開始之前備份現有的憑證和金鑰。這將完成針對 SSL/TLS 卸載搭配 AWS CloudHSM設定您的 Linux Web 伺服器軟體。

完成以下其中一個區段中的步驟。

設定 NGINX Web 伺服器

使用此區段可在支援的平台上設定 NGINX。

更新 NGINX 的 Web 伺服器組態
  1. 連接至您的用戶端執行個體。

  2. 執行以下命令,為 Web 伺服器憑證和仿造 PEM 私有金鑰建立所需的目錄。

    $ sudo mkdir -p /etc/pki/nginx/private
  3. 執行以下命令,將您的 Web 伺服器憑證複製到所需的位置。以 Web 伺服器憑證的名稱取代 <web_server.crt>

    $ sudo cp <web_server.crt> /etc/pki/nginx/server.crt
  4. 執行以下命令,將您的仿造 PEM 私有金鑰複製到所需的位置。以包含仿造 PEM 私有金鑰的檔案名稱取代 <web_server_fake_PEM.key>

    $ sudo cp <web_server_fake_PEM.key> /etc/pki/nginx/private/server.key
  5. 執行以下命令來變更檔案的擁有權,使得名為 nginx 的使用者可讀取這些檔案。

    $ sudo chown nginx /etc/pki/nginx/server.crt /etc/pki/nginx/private/server.key
  6. 執行以下命令來備份 /etc/nginx/nginx.conf 檔案。

    $ sudo cp /etc/nginx/nginx.conf /etc/nginx/nginx.conf.backup
  7. 更新 NGINX 組態。

    注意

    每個叢集可以在所有 NGINX Web 伺服器上支持最多 1000 個 NGINX 工作者程序。

    Amazon Linux

    使用文字編輯器來編輯 /etc/nginx/nginx.conf 檔案。這需要 Linux 根許可。在檔案上方,新增下列行:

    • 如果使用用戶端 SDK 3

      ssl_engine cloudhsm; env n3fips_password;
    • 如果使用用戶端 SDK 5

      ssl_engine cloudhsm; env CLOUDHSM_PIN;

    然後將以下內容新增至檔案的 TLS 區段:

    # Settings for a TLS enabled server. server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name _; root /usr/share/nginx/html; ssl_certificate "/etc/pki/nginx/server.crt"; ssl_certificate_key "/etc/pki/nginx/private/server.key"; # It is *strongly* recommended to generate unique DH parameters # Generate them with: openssl dhparam -out /etc/pki/nginx/dhparams.pem 2048 #ssl_dhparam "/etc/pki/nginx/dhparams.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_protocols TLSv1.2; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA"; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
    Amazon Linux 2

    使用文字編輯器來編輯 /etc/nginx/nginx.conf 檔案。這需要 Linux 根許可。在檔案上方,新增下列行:

    • 如果使用用戶端 SDK 3

      ssl_engine cloudhsm; env n3fips_password;
    • 如果使用用戶端 SDK 5

      ssl_engine cloudhsm; env CLOUDHSM_PIN;

    然後將以下內容新增至檔案的 TLS 區段:

    # Settings for a TLS enabled server. server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name _; root /usr/share/nginx/html; ssl_certificate "/etc/pki/nginx/server.crt"; ssl_certificate_key "/etc/pki/nginx/private/server.key"; # It is *strongly* recommended to generate unique DH parameters # Generate them with: openssl dhparam -out /etc/pki/nginx/dhparams.pem 2048 #ssl_dhparam "/etc/pki/nginx/dhparams.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_protocols TLSv1.2; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA"; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
    CentOS 7

    使用文字編輯器來編輯 /etc/nginx/nginx.conf 檔案。這需要 Linux 根許可。在檔案上方,新增下列行:

    • 如果使用用戶端 SDK 3

      ssl_engine cloudhsm; env n3fips_password;
    • 如果使用用戶端 SDK 5

      ssl_engine cloudhsm; env CLOUDHSM_PIN;

    然後將以下內容新增至檔案的 TLS 區段:

    # Settings for a TLS enabled server. server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name _; root /usr/share/nginx/html; ssl_certificate "/etc/pki/nginx/server.crt"; ssl_certificate_key "/etc/pki/nginx/private/server.key"; # It is *strongly* recommended to generate unique DH parameters # Generate them with: openssl dhparam -out /etc/pki/nginx/dhparams.pem 2048 #ssl_dhparam "/etc/pki/nginx/dhparams.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_protocols TLSv1.2; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA"; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
    CentOS 8

    使用文字編輯器來編輯 /etc/nginx/nginx.conf 檔案。這需要 Linux 根許可。在檔案上方,新增下列行:

    ssl_engine cloudhsm; env CLOUDHSM_PIN;

    然後將以下內容新增至檔案的 TLS 區段:

    # Settings for a TLS enabled server. server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name _; root /usr/share/nginx/html; ssl_certificate "/etc/pki/nginx/server.crt"; ssl_certificate_key "/etc/pki/nginx/private/server.key"; # It is *strongly* recommended to generate unique DH parameters # Generate them with: openssl dhparam -out /etc/pki/nginx/dhparams.pem 2048 #ssl_dhparam "/etc/pki/nginx/dhparams.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA"; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
    Red Hat 7

    使用文字編輯器來編輯 /etc/nginx/nginx.conf 檔案。這需要 Linux 根許可。在檔案上方,新增下列行:

    • 如果使用用戶端 SDK 3

      ssl_engine cloudhsm; env n3fips_password;
    • 如果使用用戶端 SDK 5

      ssl_engine cloudhsm; env CLOUDHSM_PIN;

    然後將以下內容新增至檔案的 TLS 區段:

    # Settings for a TLS enabled server. server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name _; root /usr/share/nginx/html; ssl_certificate "/etc/pki/nginx/server.crt"; ssl_certificate_key "/etc/pki/nginx/private/server.key"; # It is *strongly* recommended to generate unique DH parameters # Generate them with: openssl dhparam -out /etc/pki/nginx/dhparams.pem 2048 #ssl_dhparam "/etc/pki/nginx/dhparams.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_protocols TLSv1.2; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA"; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
    Red Hat 8

    使用文字編輯器來編輯 /etc/nginx/nginx.conf 檔案。這需要 Linux 根許可。在檔案上方,新增下列行:

    ssl_engine cloudhsm; env CLOUDHSM_PIN;

    然後將以下內容新增至檔案的 TLS 區段:

    # Settings for a TLS enabled server. server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name _; root /usr/share/nginx/html; ssl_certificate "/etc/pki/nginx/server.crt"; ssl_certificate_key "/etc/pki/nginx/private/server.key"; # It is *strongly* recommended to generate unique DH parameters # Generate them with: openssl dhparam -out /etc/pki/nginx/dhparams.pem 2048 #ssl_dhparam "/etc/pki/nginx/dhparams.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA"; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
    Ubuntu 16.04 LTS

    使用文字編輯器來編輯 /etc/nginx/nginx.conf 檔案。這需要 Linux 根許可。在檔案上方,新增下列行:

    ssl_engine cloudhsm; env n3fips_password;

    然後將以下內容新增至檔案的 TLS 區段:

    # Settings for a TLS enabled server. server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name _; root /usr/share/nginx/html; ssl_certificate "/etc/pki/nginx/server.crt"; ssl_certificate_key "/etc/pki/nginx/private/server.key"; # It is *strongly* recommended to generate unique DH parameters # Generate them with: openssl dhparam -out /etc/pki/nginx/dhparams.pem 2048 #ssl_dhparam "/etc/pki/nginx/dhparams.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_protocols TLSv1.2; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA"; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
    Ubuntu 18.04 LTS

    使用文字編輯器來編輯 /etc/nginx/nginx.conf 檔案。這需要 Linux 根許可。在檔案上方,新增下列行:

    ssl_engine cloudhsm; env CLOUDHSM_PIN;

    然後將以下內容新增至檔案的 TLS 區段:

    # Settings for a TLS enabled server. server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name _; root /usr/share/nginx/html; ssl_certificate "/etc/pki/nginx/server.crt"; ssl_certificate_key "/etc/pki/nginx/private/server.key"; # It is *strongly* recommended to generate unique DH parameters # Generate them with: openssl dhparam -out /etc/pki/nginx/dhparams.pem 2048 #ssl_dhparam "/etc/pki/nginx/dhparams.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA"; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
    Ubuntu 20.04 LTS

    使用文字編輯器來編輯 /etc/nginx/nginx.conf 檔案。這需要 Linux 根許可。在檔案上方,新增下列行:

    ssl_engine cloudhsm; env CLOUDHSM_PIN;

    然後將以下內容新增至檔案的 TLS 區段:

    # Settings for a TLS enabled server. server { listen 443 ssl http2 default_server; listen [::]:443 ssl http2 default_server; server_name _; root /usr/share/nginx/html; ssl_certificate "/etc/pki/nginx/server.crt"; ssl_certificate_key "/etc/pki/nginx/private/server.key"; # It is *strongly* recommended to generate unique DH parameters # Generate them with: openssl dhparam -out /etc/pki/nginx/dhparams.pem 2048 #ssl_dhparam "/etc/pki/nginx/dhparams.pem"; ssl_session_cache shared:SSL:1m; ssl_session_timeout 10m; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers "ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA"; ssl_prefer_server_ciphers on; # Load configuration files for the default server block. include /etc/nginx/default.d/*.conf; location / { } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { } }
    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

    儲存檔案。

  8. 備份 systemd 組態檔案,然後設定 EnvironmentFile 路徑。

    Amazon Linux

    不需要採取行動。

    Amazon Linux 2
    1. 備份 nginx.service 檔案。

      $ sudo cp /lib/systemd/system/nginx.service /lib/systemd/system/nginx.service.backup
    2. 在文字編輯器中開啟 /lib/systemd/system/nginx.service 檔案,然後在 [Service] (服務) 區段中,新增以下路徑:

      EnvironmentFile=/etc/sysconfig/nginx
    CentOS 7

    不需要採取行動。

    CentOS 8
    1. 備份 nginx.service 檔案。

      $ sudo cp /lib/systemd/system/nginx.service /lib/systemd/system/nginx.service.backup
    2. 在文字編輯器中開啟 /lib/systemd/system/nginx.service 檔案,然後在 [Service] (服務) 區段中,新增以下路徑:

      EnvironmentFile=/etc/sysconfig/nginx
    Red Hat 7

    不需要採取行動。

    Red Hat 8
    1. 備份 nginx.service 檔案。

      $ sudo cp /lib/systemd/system/nginx.service /lib/systemd/system/nginx.service.backup
    2. 在文字編輯器中開啟 /lib/systemd/system/nginx.service 檔案,然後在 [Service] (服務) 區段中,新增以下路徑:

      EnvironmentFile=/etc/sysconfig/nginx
    Ubuntu 16.04
    1. 備份 nginx.service 檔案。

      $ sudo cp /lib/systemd/system/nginx.service /lib/systemd/system/nginx.service.backup
    2. 在文字編輯器中開啟 /lib/systemd/system/nginx.service 檔案,然後在 [Service] (服務) 區段中,新增以下路徑:

      EnvironmentFile=/etc/sysconfig/nginx
    Ubuntu 18.04
    1. 備份 nginx.service 檔案。

      $ sudo cp /lib/systemd/system/nginx.service /lib/systemd/system/nginx.service.backup
    2. 在文字編輯器中開啟 /lib/systemd/system/nginx.service 檔案,然後在 [Service] (服務) 區段中,新增以下路徑:

      EnvironmentFile=/etc/sysconfig/nginx
    Ubuntu 20.04 LTS
    1. 備份 nginx.service 檔案。

      $ sudo cp /lib/systemd/system/nginx.service /lib/systemd/system/nginx.service.backup
    2. 在文字編輯器中開啟 /lib/systemd/system/nginx.service 檔案,然後在 [Service] (服務) 區段中,新增以下路徑:

      EnvironmentFile=/etc/sysconfig/nginx
    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  9. 檢查 /etc/sysconfig/nginx 檔案是否存在,然後執行以下其中一項:

    • 如果檔案存在,請執行下列命令來備份檔案:

      $ sudo cp /etc/sysconfig/nginx /etc/sysconfig/nginx.backup
    • 如果檔案不存在,請開啟文字編輯器,然後建立在 /etc/sysconfig/ 資料夾中建立名為 nginx 的檔案。

  10. 設定 NGINX 環境。

    注意

    用戶端 SDK 5 引入了用於存儲 CU 憑證的 CLOUDHSM_PIN 環境變量。

    Amazon Linux

    在文字編輯器中開啟 /etc/sysconfig/nginx 檔案。這需要 Linux 根許可。新增加密使用者 (CU) 憑證:

    • 如果使用用戶端 SDK 3

      n3fips_password=<CU user name>:<password>
    • 如果使用用戶端 SDK 5

      CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    儲存檔案。

    Amazon Linux 2

    在文字編輯器中開啟 /etc/sysconfig/nginx 檔案。這需要 Linux 根許可。新增加密使用者 (CU) 憑證:

    • 如果使用用戶端 SDK 3

      n3fips_password=<CU user name>:<password>
    • 如果使用用戶端 SDK 5

      CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    儲存檔案。

    CentOS 7

    在文字編輯器中開啟 /etc/sysconfig/nginx 檔案。這需要 Linux 根許可。新增加密使用者 (CU) 憑證:

    • 如果使用用戶端 SDK 3

      n3fips_password=<CU user name>:<password>
    • 如果使用用戶端 SDK 5

      CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    儲存檔案。

    CentOS 8

    在文字編輯器中開啟 /etc/sysconfig/nginx 檔案。這需要 Linux 根許可。新增加密使用者 (CU) 憑證:

    CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    儲存檔案。

    Red Hat 7

    在文字編輯器中開啟 /etc/sysconfig/nginx 檔案。這需要 Linux 根許可。新增加密使用者 (CU) 憑證:

    • 如果使用用戶端 SDK 3

      n3fips_password=<CU user name>:<password>
    • 如果使用用戶端 SDK 5

      CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    儲存檔案。

    Red Hat 8

    在文字編輯器中開啟 /etc/sysconfig/nginx 檔案。這需要 Linux 根許可。新增加密使用者 (CU) 憑證:

    CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    儲存檔案。

    Ubuntu 16.04 LTS

    在文字編輯器中開啟 /etc/sysconfig/nginx 檔案。這需要 Linux 根許可。新增加密使用者 (CU) 憑證:

    n3fips_password=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    儲存檔案。

    Ubuntu 18.04 LTS

    在文字編輯器中開啟 /etc/sysconfig/nginx 檔案。這需要 Linux 根許可。新增加密使用者 (CU) 憑證:

    CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    儲存檔案。

    Ubuntu 20.04 LTS

    在文字編輯器中開啟 /etc/sysconfig/nginx 檔案。這需要 Linux 根許可。新增加密使用者 (CU) 憑證:

    CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    儲存檔案。

    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  11. 啟動 NGINX 伺服器。

    Amazon Linux

    在文字編輯器中開啟 /etc/sysconfig/nginx 檔案。這需要 Linux 根許可。新增加密使用者 (CU) 憑證:

    $ sudo service nginx start
    Amazon Linux 2

    停止任何正在運行的 NGINX 進程

    $ sudo systemctl stop nginx

    重新載入 systemd 組態以取得最新的變更

    $ sudo systemctl daemon-reload

    啟動 NGINX 進程

    $ sudo systemctl start nginx
    CentOS 7

    停止任何正在運行的 NGINX 進程

    $ sudo systemctl stop nginx

    重新載入 systemd 組態以取得最新的變更

    $ sudo systemctl daemon-reload

    啟動 NGINX 進程

    $ sudo systemctl start nginx
    CentOS 8

    停止任何正在運行的 NGINX 進程

    $ sudo systemctl stop nginx

    重新載入 systemd 組態以取得最新的變更

    $ sudo systemctl daemon-reload

    啟動 NGINX 進程

    $ sudo systemctl start nginx
    Red Hat 7

    停止任何正在運行的 NGINX 進程

    $ sudo systemctl stop nginx

    重新載入 systemd 組態以取得最新的變更

    $ sudo systemctl daemon-reload

    啟動 NGINX 進程

    $ sudo systemctl start nginx
    Red Hat 8

    停止任何正在運行的 NGINX 進程

    $ sudo systemctl stop nginx

    重新載入 systemd 組態以取得最新的變更

    $ sudo systemctl daemon-reload

    啟動 NGINX 進程

    $ sudo systemctl start nginx
    Ubuntu 16.04 LTS

    停止任何正在運行的 NGINX 進程

    $ sudo systemctl stop nginx

    重新載入 systemd 組態以取得最新的變更

    $ sudo systemctl daemon-reload

    啟動 NGINX 進程

    $ sudo systemctl start nginx
    Ubuntu 18.04 LTS

    停止任何正在運行的 NGINX 進程

    $ sudo systemctl stop nginx

    重新載入 systemd 組態以取得最新的變更

    $ sudo systemctl daemon-reload

    啟動 NGINX 進程

    $ sudo systemctl start nginx
    Ubuntu 20.04 LTS

    停止任何正在運行的 NGINX 進程

    $ sudo systemctl stop nginx

    重新載入 systemd 組態以取得最新的變更

    $ sudo systemctl daemon-reload

    啟動 NGINX 進程

    $ sudo systemctl start nginx
    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  12. (選用) 將平台設定為在啟動時啟動 NGINX。

    Amazon Linux
    $ sudo chkconfig nginx on
    Amazon Linux 2
    $ sudo systemctl enable nginx
    CentOS 7

    不需要採取行動。

    CentOS 8
    $ sudo systemctl enable nginx
    Red Hat 7

    不需要採取行動。

    Red Hat 8
    $ sudo systemctl enable nginx
    Ubuntu 16.04 LTS
    $ sudo systemctl enable nginx
    Ubuntu 18.04 LTS
    $ sudo systemctl enable nginx
    Ubuntu 20.04 LTS
    $ sudo systemctl enable nginx
    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

在更新您的 Web 伺服器組態之後,請移至 步驟 4:啟用 HTTPS 流量並驗證憑證

設定 Apache Web 伺服器

使用此區段可在支援的平台上設定 Apache。

更新 Apache 的 Web 伺服器組態
  1. 連線到 Amazon EC2 用戶端執行個體。

  2. 為平台定義憑證和私有金鑰的預設位置。

    Amazon Linux

    /etc/httpd/conf.d/ssl.conf 檔案中,請確定這些值存在:

    SSLCertificateFile /etc/pki/tls/certs/localhost.crt SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
    Amazon Linux 2

    /etc/httpd/conf.d/ssl.conf 檔案中,請確定這些值存在:

    SSLCertificateFile /etc/pki/tls/certs/localhost.crt SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
    CentOS 7

    /etc/httpd/conf.d/ssl.conf 檔案中,請確定這些值存在:

    SSLCertificateFile /etc/pki/tls/certs/localhost.crt SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
    CentOS 8

    /etc/httpd/conf.d/ssl.conf 檔案中,請確定這些值存在:

    SSLCertificateFile /etc/pki/tls/certs/localhost.crt SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
    Red Hat 7

    /etc/httpd/conf.d/ssl.conf 檔案中,請確定這些值存在:

    SSLCertificateFile /etc/pki/tls/certs/localhost.crt SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
    Red Hat 8

    /etc/httpd/conf.d/ssl.conf 檔案中,請確定這些值存在:

    SSLCertificateFile /etc/pki/tls/certs/localhost.crt SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
    Ubuntu 16.04 LTS

    /etc/apache2/sites-available/default-ssl.conf 檔案中,請確定這些值存在:

    SSLCertificateFile /etc/ssl/certs/localhost.crt SSLCertificateKeyFile /etc/ssl/private/localhost.key
    Ubuntu 18.04 LTS

    /etc/apache2/sites-available/default-ssl.conf 檔案中,請確定這些值存在:

    SSLCertificateFile /etc/ssl/certs/localhost.crt SSLCertificateKeyFile /etc/ssl/private/localhost.key
    Ubuntu 20.04 LTS

    /etc/apache2/sites-available/default-ssl.conf 檔案中,請確定這些值存在:

    SSLCertificateFile /etc/ssl/certs/localhost.crt SSLCertificateKeyFile /etc/ssl/private/localhost.key
    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  3. 將 Web 伺服器憑證複製到平台所需的位置。

    Amazon Linux
    $ sudo cp <web_server.crt> /etc/pki/tls/certs/localhost.crt

    以 Web 伺服器憑證的名稱取代 <web_server.crt>

    Amazon Linux 2
    $ sudo cp <web_server.crt> /etc/pki/tls/certs/localhost.crt

    以 Web 伺服器憑證的名稱取代 <web_server.crt>

    CentOS 7
    $ sudo cp <web_server.crt> /etc/pki/tls/certs/localhost.crt

    以 Web 伺服器憑證的名稱取代 <web_server.crt>

    CentOS 8
    $ sudo cp <web_server.crt> /etc/pki/tls/certs/localhost.crt

    以 Web 伺服器憑證的名稱取代 <web_server.crt>

    Red Hat 7
    $ sudo cp <web_server.crt> /etc/pki/tls/certs/localhost.crt

    以 Web 伺服器憑證的名稱取代 <web_server.crt>

    Red Hat 8
    $ sudo cp <web_server.crt> /etc/pki/tls/certs/localhost.crt

    以 Web 伺服器憑證的名稱取代 <web_server.crt>

    Ubuntu 16.04 LTS
    $ sudo cp <web_server.crt> /etc/ssl/certs/localhost.crt

    以 Web 伺服器憑證的名稱取代 <web_server.crt>

    Ubuntu 18.04 LTS
    $ sudo cp <web_server.crt> /etc/ssl/certs/localhost.crt

    以 Web 伺服器憑證的名稱取代 <web_server.crt>

    Ubuntu 20.04 LTS
    $ sudo cp <web_server.crt> /etc/ssl/certs/localhost.crt

    以 Web 伺服器憑證的名稱取代 <web_server.crt>

    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  4. 將仿造 PEM 私有金鑰複製到平台所需的位置。

    Amazon Linux
    $ sudo cp <web_server_fake_PEM.key> /etc/pki/tls/private/localhost.key

    以包含仿造 PEM 私有金鑰的檔案名稱取代 <web_server_fake_PEM.key>

    Amazon Linux 2
    $ sudo cp <web_server_fake_PEM.key> /etc/pki/tls/private/localhost.key

    以包含仿造 PEM 私有金鑰的檔案名稱取代 <web_server_fake_PEM.key>

    CentOS 7
    $ sudo cp <web_server_fake_PEM.key> /etc/pki/tls/private/localhost.key

    以包含仿造 PEM 私有金鑰的檔案名稱取代 <web_server_fake_PEM.key>

    CentOS 8
    $ sudo cp <web_server_fake_PEM.key> /etc/pki/tls/private/localhost.key

    以包含仿造 PEM 私有金鑰的檔案名稱取代 <web_server_fake_PEM.key>

    Red Hat 7
    $ sudo cp <web_server_fake_PEM.key> /etc/pki/tls/private/localhost.key

    以包含仿造 PEM 私有金鑰的檔案名稱取代 <web_server_fake_PEM.key>

    Red Hat 8
    $ sudo cp <web_server_fake_PEM.key> /etc/pki/tls/private/localhost.key

    以包含仿造 PEM 私有金鑰的檔案名稱取代 <web_server_fake_PEM.key>

    Ubuntu 16.04 LTS
    $ sudo cp <web_server_fake_PEM.key> /etc/ssl/private/localhost.key

    以包含仿造 PEM 私有金鑰的檔案名稱取代 <web_server_fake_PEM.key>

    Ubuntu 18.04 LTS
    $ sudo cp <web_server_fake_PEM.key> /etc/ssl/private/localhost.key

    以包含仿造 PEM 私有金鑰的檔案名稱取代 <web_server_fake_PEM.key>

    Ubuntu 20.04 LTS
    $ sudo cp <web_server_fake_PEM.key> /etc/ssl/private/localhost.key

    以包含仿造 PEM 私有金鑰的檔案名稱取代 <web_server_fake_PEM.key>

    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  5. 如果平台需要,請更改這些檔案的所有權。

    Amazon Linux
    $ sudo chown apache /etc/pki/tls/certs/localhost.crt /etc/pki/tls/private/localhost.key

    提供讀取許可給名為 apache 的使用者。

    Amazon Linux 2
    $ sudo chown apache /etc/pki/tls/certs/localhost.crt /etc/pki/tls/private/localhost.key

    提供讀取許可給名為 apache 的使用者。

    CentOS 7
    $ sudo chown apache /etc/pki/tls/certs/localhost.crt /etc/pki/tls/private/localhost.key

    提供讀取許可給名為 apache 的使用者。

    CentOS 8
    $ sudo chown apache /etc/pki/tls/certs/localhost.crt /etc/pki/tls/private/localhost.key

    提供讀取許可給名為 apache 的使用者。

    Red Hat 7
    $ sudo chown apache /etc/pki/tls/certs/localhost.crt /etc/pki/tls/private/localhost.key

    提供讀取許可給名為 apache 的使用者。

    Red Hat 8
    $ sudo chown apache /etc/pki/tls/certs/localhost.crt /etc/pki/tls/private/localhost.key

    提供讀取許可給名為 apache 的使用者。

    Ubuntu 16.04 LTS

    不需要採取行動。

    Ubuntu 18.04 LTS

    不需要採取行動。

    Ubuntu 20.04 LTS

    不需要採取行動。

    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  6. 為平台設定 Apache 指令。

    Amazon Linux

    找到此平台的 SSL 檔案:

    /etc/httpd/conf.d/ssl.conf

    該文件包含定義伺服器應該如何運行的 Apache 指令。指令顯示在左側,後面接著一個值。使用文字編輯器編輯此檔案。這需要 Linux 根許可。

    使用這些值更新或輸入下列指令:

    SSLCryptoDevice cloudhsm SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA

    儲存檔案。

    Amazon Linux 2

    找到此平台的 SSL 檔案:

    /etc/httpd/conf.d/ssl.conf

    該文件包含定義伺服器應該如何運行的 Apache 指令。指令顯示在左側,後面接著一個值。使用文字編輯器編輯此檔案。這需要 Linux 根許可。

    使用這些值更新或輸入下列指令:

    SSLCryptoDevice cloudhsm SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA

    儲存檔案。

    CentOS 7

    找到此平台的 SSL 檔案:

    /etc/httpd/conf.d/ssl.conf

    該文件包含定義伺服器應該如何運行的 Apache 指令。指令顯示在左側,後面接著一個值。使用文字編輯器編輯此檔案。這需要 Linux 根許可。

    使用這些值更新或輸入下列指令:

    SSLCryptoDevice cloudhsm SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA

    儲存檔案。

    CentOS 8

    找到此平台的 SSL 檔案:

    /etc/httpd/conf.d/ssl.conf

    該文件包含定義伺服器應該如何運行的 Apache 指令。指令顯示在左側,後面接著一個值。使用文字編輯器編輯此檔案。這需要 Linux 根許可。

    使用這些值更新或輸入下列指令:

    SSLCryptoDevice cloudhsm SSLProtocol TLSv1.2 TLSv1.3 SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA SSLProxyCipherSuite HIGH:!aNULL

    儲存檔案。

    Red Hat 7

    找到此平台的 SSL 檔案:

    /etc/httpd/conf.d/ssl.conf

    該文件包含定義伺服器應該如何運行的 Apache 指令。指令顯示在左側,後面接著一個值。使用文字編輯器編輯此檔案。這需要 Linux 根許可。

    使用這些值更新或輸入下列指令:

    SSLCryptoDevice cloudhsm SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA

    儲存檔案。

    Red Hat 8

    找到此平台的 SSL 檔案:

    /etc/httpd/conf.d/ssl.conf

    該文件包含定義伺服器應該如何運行的 Apache 指令。指令顯示在左側,後面接著一個值。使用文字編輯器編輯此檔案。這需要 Linux 根許可。

    使用這些值更新或輸入下列指令:

    SSLCryptoDevice cloudhsm SSLProtocol TLSv1.2 TLSv1.3 SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA SSLProxyCipherSuite HIGH:!aNULL

    儲存檔案。

    Ubuntu 16.04 LTS

    找到此平台的 SSL 檔案:

    /etc/apache2/mods-available/ssl.conf

    該文件包含定義伺服器應該如何運行的 Apache 指令。指令顯示在左側,後面接著一個值。使用文字編輯器編輯此檔案。這需要 Linux 根許可。

    使用這些值更新或輸入下列指令:

    SSLCryptoDevice cloudhsm SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA

    儲存檔案。

    啟用 SSL 模組和預設 SSL 網站組態:

    $ sudo a2enmod ssl $ sudo a2ensite default-ssl
    Ubuntu 18.04 LTS

    找到此平台的 SSL 檔案:

    /etc/apache2/mods-available/ssl.conf

    該文件包含定義伺服器應該如何運行的 Apache 指令。指令顯示在左側,後面接著一個值。使用文字編輯器編輯此檔案。這需要 Linux 根許可。

    使用這些值更新或輸入下列指令:

    SSLCryptoDevice cloudhsm SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA SSLProtocol TLSv1.2 TLSv1.3

    儲存檔案。

    啟用 SSL 模組和預設 SSL 網站組態:

    $ sudo a2enmod ssl $ sudo a2ensite default-ssl
    Ubuntu 20.04 LTS

    找到此平台的 SSL 檔案:

    /etc/apache2/mods-available/ssl.conf

    該文件包含定義伺服器應該如何運行的 Apache 指令。指令顯示在左側,後面接著一個值。使用文字編輯器編輯此檔案。這需要 Linux 根許可。

    使用這些值更新或輸入下列指令:

    SSLCryptoDevice cloudhsm SSLCipherSuite ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-ECDSA-AES256-SHA:ECDHE-ECDSA-AES128-SHA SSLProtocol TLSv1.2 TLSv1.3

    儲存檔案。

    啟用 SSL 模組和預設 SSL 網站組態:

    $ sudo a2enmod ssl $ sudo a2ensite default-ssl
    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  7. 為平台設定環境值檔案。

    Amazon Linux

    不需要採取行動。環境值要填入 /etc/sysconfig/httpd

    Amazon Linux 2

    開啟 httpd 服務檔案:

    /lib/systemd/system/httpd.service

    將下列內容加入到 [Service] 區段:

    EnvironmentFile=/etc/sysconfig/httpd
    CentOS 7

    開啟 httpd 服務檔案:

    /lib/systemd/system/httpd.service

    將下列內容加入到 [Service] 區段:

    EnvironmentFile=/etc/sysconfig/httpd
    CentOS 8

    開啟 httpd 服務檔案:

    /lib/systemd/system/httpd.service

    將下列內容加入到 [Service] 區段:

    EnvironmentFile=/etc/sysconfig/httpd
    Red Hat 7

    開啟 httpd 服務檔案:

    /lib/systemd/system/httpd.service

    將下列內容加入到 [Service] 區段:

    EnvironmentFile=/etc/sysconfig/httpd
    Red Hat 8

    開啟 httpd 服務檔案:

    /lib/systemd/system/httpd.service

    將下列內容加入到 [Service] 區段:

    EnvironmentFile=/etc/sysconfig/httpd
    Ubuntu 16.04 LTS

    不需要採取行動。環境值要填入 /etc/sysconfig/httpd

    Ubuntu 18.04 LTS

    不需要採取行動。環境值要填入 /etc/sysconfig/httpd

    Ubuntu 20.04 LTS

    不需要採取行動。環境值要填入 /etc/sysconfig/httpd

    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  8. 在儲存平台環境變數的檔案中,設定包含加密使用者 (CU) 憑證的環境變數:

    Amazon Linux

    使用文字編輯器編輯 /etc/sysconfig/httpd

    • 如果使用用戶端 SDK 3

      n3fips_password=<CU user name>:<password>
    • 如果使用用戶端 SDK 5

      CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    Amazon Linux 2

    使用文字編輯器編輯 /etc/sysconfig/httpd

    • 如果使用用戶端 SDK 3

      n3fips_password=<CU user name>:<password>
    • 如果使用用戶端 SDK 5

      CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    CentOS 7

    使用文字編輯器編輯 /etc/sysconfig/httpd

    • 如果使用用戶端 SDK 3

      n3fips_password=<CU user name>:<password>
    • 如果使用用戶端 SDK 5

      CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    CentOS 8

    使用文字編輯器編輯 /etc/sysconfig/httpd

    CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    Red Hat 7

    使用文字編輯器編輯 /etc/sysconfig/httpd

    • 如果使用用戶端 SDK 3

      n3fips_password=<CU user name>:<password>
    • 如果使用用戶端 SDK 5

      CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    Red Hat 8

    使用文字編輯器編輯 /etc/sysconfig/httpd

    CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    注意

    用戶端 SDK 5 引入了用於存儲 CU 憑證的 CLOUDHSM_PIN 環境變量。

    Ubuntu 16.04 LTS

    使用文字編輯器編輯 /etc/apache2/envvars

    export n3fips_password=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    Ubuntu 18.04 LTS

    使用文字編輯器編輯 /etc/apache2/envvars

    export CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    注意

    用戶端 SDK 5 引入了用於存儲 CU 憑證的 CLOUDHSM_PIN 環境變量。在用戶端 SDK 3 中,將 CU 憑證儲存在 n3fips_password 環境變數中。用戶端 SDK 5 支援這兩個環境變數,但建議使用 CLOUDHSM_PIN

    Ubuntu 20.04 LTS

    使用文字編輯器編輯 /etc/apache2/envvars

    export CLOUDHSM_PIN=<CU user name>:<password>

    以 CU 憑證取代<CU 使用者名稱><密碼>

    注意

    用戶端 SDK 5 引入了用於存儲 CU 憑證的 CLOUDHSM_PIN 環境變量。在用戶端 SDK 3 中,將 CU 憑證儲存在 n3fips_password 環境變數中。用戶端 SDK 5 支援這兩個環境變數,但建議使用 CLOUDHSM_PIN

    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  9. 啟動 Apache Web 伺服器。

    Amazon Linux
    $ sudo systemctl daemon-reload $ sudo service httpd start
    Amazon Linux 2
    $ sudo systemctl daemon-reload $ sudo service httpd start
    CentOS 7
    $ sudo systemctl daemon-reload $ sudo service httpd start
    CentOS 8
    $ sudo systemctl daemon-reload $ sudo service httpd start
    Red Hat 7
    $ sudo systemctl daemon-reload $ sudo service httpd start
    Red Hat 8
    $ sudo systemctl daemon-reload $ sudo service httpd start
    Ubuntu 16.04 LTS
    $ sudo service apache2 start
    Ubuntu 18.04 LTS
    $ sudo service apache2 start
    Ubuntu 20.04 LTS
    $ sudo service apache2 start
    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

  10. (選用) 將平台設定為在啟動時啟動 Apache。

    Amazon Linux
    $ sudo chkconfig httpd on
    Amazon Linux 2
    $ sudo chkconfig httpd on
    CentOS 7
    $ sudo chkconfig httpd on
    CentOS 8
    $ systemctl enable httpd
    Red Hat 7
    $ sudo chkconfig httpd on
    Red Hat 8
    $ systemctl enable httpd
    Ubuntu 16.04 LTS
    $ sudo systemctl enable apache2
    Ubuntu 18.04 LTS
    $ sudo systemctl enable apache2
    Ubuntu 20.04 LTS
    $ sudo systemctl enable apache2
    Ubuntu 22.04 LTS

    目前尚未提供對 OpenSSL 動態引擎的支援。

在更新您的 Web 伺服器組態之後,請移至 步驟 4:啟用 HTTPS 流量並驗證憑證