ホームページ >バックエンド開発 >PHPチュートリアル >HTTPS 用の自己署名証明書を簡単に実装
[関連する学習に関する推奨事項: php プログラミング (ビデオ)]
自作の証明書は、学習環境やテスト環境でよく使用されます。プロジェクトが商用化されている場合、運用するには、権威あるサードパーティ CA 組織が発行した証明書を購入する必要があります。
ディレクトリ /etc/httpd/ca
を作成し、コマンド
# 非对称加密 rsa 算法生成2048 比特位的私钥 openssl genrsa -out server.key 2048
を実行して生成します。 CSR 証明書の署名 ファイル
# 指定私钥 server.key 生成新的 server.csr 文件 openssl req -new -key server.key -out server.csr
に登録情報を入力してください。この列にドメイン名または IP アドレスを入力してください。
Common Name (eg, your name or your server's hostname) []:lamp.test.com
新しく生成された秘密キーと証明書を ssl 構成ディレクトリにコピーします。
cp server.key /etc/pki/tls/private/cp server.crt /etc/pki/tls/certs/
変更ssl.conf
構成ファイル
アクセスhttps://lamp.test.com
証明書の有効期間が 1 年から 10 年に変更されました。
最初に、ローカル nginx に http_ssl_module
モジュールがインストールされているかどうかを確認します。インストールされていない場合は、ソース コードから nginx を再インストールし、パラメータ --with-http_ssl_module
を使用します。
nginx -V
/etc/ssl
ディレクトリに入り、コマンド
# 使用 des3 算法 生成 4096 比特位服务器私钥 openssl genrsa -des3 -out server.key 4096# 生成证书签名请求文件 openssl req -new -key server.key -out server.csr # 生成 4096 位 ca 私钥 openssl genrsa -des3 -out ca.key 4096# 去除服务器私钥避免以后每次载入文件需要输入密码 openssl rsa -in server.key -out server.key # 以 x509 证书格式标准生成 10 年的 crt ,注意填写域名或者 IP 地址 openssl req -new -x509 -key ca.key -out ca.crt -days 3650# 请求有效期为 3650 天 传入文件为server.csr 指定 CA 文件为 ca.crt 指定私钥文件为ca.key 并自动创建 CA 序列文件 输出证书文件 server.crt 至此签名成功 openssl x509 -req -days 365 -in server.csr -CA ca.crt -CAkey ca.key -CAcreateserial -out server.crt
を実行します。nginx 設定ファイルを変更します
listen 80;# 监听 443 端口 listen 443 ssl;server_name lnmp.test.com;# 配置服务器证书 ssl_certificate /etc/ssl/server.crt;# 配置服务器私钥 ssl_certificate_key /etc/ssl/server.key;
nginx を再起動
nginx -t nginx -s reload
lnmp.test.com にアクセス
HTTPS の nginx シンプルなデプロイメントが正常に実装されました。
プログラミング学習について詳しく知りたい方は、php training のコラムに注目してください!
以上がHTTPS 用の自己署名証明書を簡単に実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。