>  기사  >  백엔드 개발  >  HTTPS용 자체 서명 인증서를 쉽게 구현

HTTPS용 자체 서명 인증서를 쉽게 구현

coldplay.xixi
coldplay.xixi앞으로
2020-09-03 16:16:043799검색

HTTPS용 자체 서명 인증서를 쉽게 구현

【관련 학습 권장사항: php 프로그래밍(동영상)】

자가 작성한 인증서는 학습 또는 테스트 환경에서 자주 사용됩니다. 프로젝트가 상업적으로 실행되는 경우, 권위 있는 제3자가 발행한 인증서를 구입해야 합니다. 파티 CA 대행사.

Apache에 HTTPS 배포

/etc/httpd/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 中部署 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
명령을 실행하여 csr 인증서 서명 요청 파일을 생성하세요

listen 80;# 监听 443 端口
listen 443 ssl;server_name lnmp.test.com;# 配置服务器证书
ssl_certificate /etc/ssl/server.crt;# 配置服务器私钥
ssl_certificate_key /etc/ssl/server.key;
등록 정보를 입력하고 이 열에 도메인 이름 또는 IP 주소를 직접 입력하세요.

nginx -t
nginx -s reload
새로 생성된 개인 키와 인증서를 SSL 구성 디렉터리에 복사하세요.

rrreee
ssl.conf 구성 파일을 변경하세요

https://lamp.test.com 방문

인증서 유효기간이 1년에서 10년으로 변경되었습니다.

Nginx에 HTTPS를 배포하려면
먼저 로컬 nginx에 http_ssl_module 모듈이 설치되어 있는지 확인하세요. 그렇지 않은 경우 소스 코드에서 nginx를 다시 설치하고 --with- 매개변수를 사용하세요. http_ssl_모듈.

rrreee
🎜🎜/etc/ssl 입력 디렉터리에서 🎜rrreee🎜 명령을 실행하여 nginx 구성 파일을 수정합니다. 🎜rrreee🎜 nginx를 다시 시작합니다. 🎜rrreee🎜 lnmp.test.com을 방문합니다. 🎜🎜🎜🎜🎜🎜🎜 nginx 단순 배포 HTTPS를 성공적으로 구현합니다. 🎜🎜🎜프로그래밍 학습에 대해 더 자세히 알고 싶다면 🎜php training🎜 칼럼을 주목해주세요! 🎜🎜🎜

위 내용은 HTTPS용 자체 서명 인증서를 쉽게 구현의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 learnku.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제