ホームページ >バックエンド開発 >PHPチュートリアル >HTTPS 用の自己署名証明書を簡単に実装

HTTPS 用の自己署名証明書を簡単に実装

coldplay.xixi
coldplay.xixi転載
2020-09-03 16:16:043861ブラウズ

HTTPS 用の自己署名証明書を簡単に実装

[関連する学習に関する推奨事項: php プログラミング (ビデオ)]

自作の証明書は、学習環境やテスト環境でよく使用されます。プロジェクトが商用化されている場合、運用するには、権威あるサードパーティ CA 組織が発行した証明書を購入する必要があります。

Apache に HTTPS をデプロイします。

ディレクトリ /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 での HTTPS のデプロイ

最初に、ローカル 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 サイトの他の関連記事を参照してください。

声明:
この記事はlearnku.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。