証明書の申請
現在、インターネット上には、有効期間が数か月から数年の個人用無料 SSL 証明書を提供する組織が多数あります。 startssl: https://www.startssl.com を例に挙げると、申請が成功すると 3 年間有効になり、期限切れ後は無料で更新できます。
具体的な申請プロセスも非常に簡単です。
登録してログインした後、証明書ウィザード >> dv ssl 証明書を選択して、無料の ssl 証明書を申請します。
電子メールでドメイン名を確認した後、独自のサーバーで ssl 証明書の CSR を生成します。入力を生成するためのシークレットを覚えておいてください。後で使用します:
openssl req -newkey rsa:2048 -keyout weizhimiao.cn.key -out weizhimiao.cn.csr
が生成されます。 証明書は、証明書が保存されている指定されたディレクトリ (/data/secret/
など) に配置されます。証明書 weizhimiao.csr
の内容を表示し、その内容をページの証明書署名要求 (csr) セクションにコピーして、ページを送信します。
生成された証明書をダウンロードし、対応する Web サーバー (nginx、1_weizhimiao.cn_bundle.crt) を選択すると、秘密キーと公開キーの両方が得られます。
1_weizhimiao.cn_bundle.crt (公開鍵)
weizhimiao.cn.key (秘密鍵)
nginx 設定 (指定したドメイン名に https を追加)
nginx.conf 現在の設定
... http { ... include /etc/nginx/conf.d/*.conf; server { ... } }
./conf.d/weizhimiao.cn.conf追加
server{ listen 443 ssl; server_name weizhimiao.cn; ssl_certificate /data/secret/1_weizhimiao.cn_bundle.crt; ssl_certificate_key /data/secret/weizhimiao.cn.key; ssl_prefer_server_ciphers on; ssl_protocols tlsv1 tlsv1.1 tlsv1.2; ssl_ciphers 'keecdh+ecdsa+aes128 keecdh+ecdsa+aes256 keecdh+aes128 keecdh+aes256 kedh+aes128 kedh+aes256 des-cbc3-sha +sha !anull !enull !low !md5 !exp !dss !psk !srp !kecdh !camellia !rc4 !seed'; add_header strict-transport-security 'max-age=31536000; preload'; add_header x-frame-options deny; ssl_session_cache shared:ssl:10m; ssl_session_timeout 10m; keepalive_timeout 70; ssl_dhparam /data/secret/dhparam.pem; add_header x-content-type-options nosniff; add_header x-xss-protection 1; root /data/www/weizhimiao.cn; index index.html; location / { } }
注:
A /data/secret/dhparam.pem
ファイルは構成で使用されます。このファイルは pem 形式のキー ファイルであり、使用されますセッション中のTLS用。 sslのセキュリティを強化するために使用されます。このファイルを生成するメソッド
cd /data/secret/ openssl dhparam 2048 -out dhparam.pem
は、元のアクセスをポート 80 にリダイレクトします。
server{ listen 80; server_name weizhimiao.cn; return 301 https://weizhimiao.cn$request_uri; }
test
を ./conf.d/weizhimiao.cn.conf に追加して、構成ファイルに構文エラーがあるかどうかを確認します。公開キー生成時の前回の入力、パスワード。
nginx -t enter pem pass phrase: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
nginx を再起動します (リロードが機能しないことに注意してください)
nginx -s stop enter pem pass phrase: nginx enter pem pass phrase:
ブラウザで weizhimiao.cn にアクセスして、有効かどうかを確認します。
さらに、nginx がセキュリティ証明書を使用して構成された後、nginx はリロード、停止、その他の操作ごとにパスワードを必要とします。
復号化されたキー ファイルを生成して、元のキー ファイルを置き換えることができます。
cd /data/secret/ openssl rsa -in weizhimiao.cn.key -out weizhimiao.cn.key.unsecure
weizhimiao.cn.conf
の weizhimiao.cn.key
ファイルを置き換えます。
server { ... ssl_certificate /data/secret/1_weizhimiao.cn_bundle.crt; ssl_certificate_key /data/secret/weizhimiao.cn.key.unsecure; ... }
リロード後は毎回、パスワードを入力する必要があります。
最後に、ssllabs を使用してテストします。 ###############結果############
以上がNginxサーバーhttpsの設定方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。