Apstraサーバーを初めて起動すると、一意の自己署名証明書が自動的に生成され、Apstraサーバー /etc/aos/nginx.conf.d
に保存されます(nginx.crt
はWebサーバーのパブリックキーであり nginx.key
、プライベートキーです)。この証明書は、ApstraサーバーとREST APIの暗号化に使用され、内部デバイスとサーバーの接続には使用されません。システム バックアップを実行する場合は、HTTPS 証明書が etc/aos
保持されないため、フォルダーを手動でバックアップする必要があります。デフォルトの SSL 証明書の置き換えを推奨します。Web サーバー証明書の管理はエンド ユーザーが行います。ジュニパーのサポートはベスト エフォートのみです。
- 既存の OpenSSL キーをバックアップします。
admin@aos-server:/$ sudo -s
[sudo] password for admin:
root@aos-server:/# cd /etc/aos/nginx.conf.d
root@aos-server:/etc/aos/nginx.conf.d# cp nginx.crt nginx.crt.old
root@aos-server:/etc/aos/nginx.conf.d# cp nginx.key nginx.key.old
- 組み込みの openssl コマンドを使用して、新しい OpenSSL プライベート キーを作成します。
root@aos-server:/etc/aos/nginx.conf.d# openssl genrsa -out nginx.key 2048
Generating RSA private key, 2048 bit long modulus
.............+++
......+++
e is 65537 (0x10001)
注意:
デフォルト nginx.crt
または nginx.key
ファイル名の変更を試みないでください。これらの値は、nginxの設定ファイルから参照されます。これらのファイルは、後続のサービス アップグレードの一環として置き換えられるため、ファイル名を予測可能にする必要があります。さらに、Apstraサーバーのアップグレード中に nginx.conf
このファイルが置き換えられるので、 に設定を変更しないでください。
- 証明書署名要求を作成します。ApstraサーバーのHTTPSサービスに主観的な代替名(SAN)を使用して署名されたSSL証明書を作成する場合は、OpenSSLテンプレートを手動で作成する必要があります。詳細については、Juniper Support Knowledge Base の記事 KB37299 を参照してください。
注意:
高度な証明書要求用のカスタムOpenSSL設定ファイルを作成した場合、nginxはサービスの起動時に(*.conf)を読み込もうとするため、nginx設定フォルダに置かないでください。
root@aos-server:/etc/aos/nginx.conf.d# openssl req -new -sha256 -key nginx.key -out nginx.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:California
Locality Name (eg, city) []:Menlo Park
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Apstra, Inc
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:aos-server.apstra.com
Email Address []:support@apstra.com
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
- 証明書署名要求(nginx.csr)を認証機関に送信します。必要な手順は本書の範囲外です。CA のインストラクションは実装ごとに異なります。有効な SSL 証明書は有効です。以下の例は、証明書の自己署名です。
root@aos-server:/etc/aos/nginx.conf.d# openssl req -x509 -sha256 -days 3650 -key nginx.key -in nginx.csr -out nginx.crt
root@aos-server:/etc/aos/nginx.conf.d#
- SSL 証明書が一致することを確認します。秘密鍵、公開鍵、CSR。
root@aos-server:/etc/aos/nginx.conf.d# openssl rsa -noout -modulus -in nginx.key | openssl md5
(stdin)= 60ac4532a708c98d70fee0dbcaab1e75
root@aos-server:/etc/aos/nginx.conf.d# openssl req -noout -modulus -in nginx.csr | openssl md5
(stdin)= 60ac4532a708c98d70fee0dbcaab1e75
root@aos-server:/etc/aos/nginx.conf.d# openssl x509 -noout -modulus -in nginx.crt | openssl md5
(stdin)= 60ac4532a708c98d70fee0dbcaab1e75
- 新しい証明書を読み込むには、nginx コンテナを再起動します。
root@aos-server:/etc/aos/nginx.conf.d# docker restart aos_nginx_1
aos_nginx_1
root@aos-server:/etc/aos/nginx.conf.d
- 新しい証明書が Web ブラウザーに含まれており、新しい証明書の共通名が「aos-server.apstra.com」と一致することを確認します。