欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

nginx配置https加密访问的详细教程

程序员文章站 2022-07-26 11:10:49
环境:1台 centos linux release 7.5.1804 (core)关闭防火墙和selinux开始部署:1、安装nginx@1.1 依赖安装yum -y install wget gc...

环境:

 1台 centos linux release 7.5.1804 (core)
关闭防火墙和selinux

开始部署:

1、安装nginx

@1.1 依赖安装

yum -y install wget gcc gcc-c++ pcre-devel openssl-devel

@1.2 nginx软件包下载

 wget http://nginx.org/download/nginx-1.19.0.tar.gz

@1.3 解压、编译、安装

[root@localhost ~]# tar xf nginx-1.19.0.tar.gz 
[root@localhost ~]# cd nginx-1.19.0
[root@localhost nginx-1.19.0]# ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module && make && make install

@1.4 切换到 nginx 目录、做个软链接

[root@localhost nginx-1.19.0]# cd /usr/local/nginx/
[root@localhost nginx]# ln -s /usr/local/nginx/sbin/nginx /usr/local/sbin/nginx

2、配置私钥和证书

@2.1 创建私钥

[root@localhost nginx]# mkdir sslkey
[root@localhost nginx]# cd sslkey/
[root@localhost sslkey]# openssl genrsa -des3 -out server.key 1024

nginx配置https加密访问的详细教程

@2.2 生成证书文件

[root@localhost sslkey]# openssl req -new -key server.key -out server.csr

nginx配置https加密访问的详细教程

[root@localhost sslkey]# openssl req -x509 -days 3650 -key server.key -in server.csr > server.crt

nginx配置https加密访问的详细教程

-days参数指明证书有效期,单位为天
x509表示生成的为x.509证书
以上签署证书仅仅做测试用,真正运行的时候,应该将csr发送到一个ca返回真正的证书

用openssl x509 -noout -text -in server.crt 可以查看证书的内容。证书实际上包含了public key
@2.3 生成无密的私钥

[root@localhost sslkey]# openssl rsa -in server.key -out server.key.unsecure

nginx配置https加密访问的详细教程

查看生成证书与私钥文件

nginx配置https加密访问的详细教程

3、nginx配置https

@3.1 修改配置nginx.conf,将监听端口80替换成443,配置ssl认证

[root@localhost conf]# pwd
/usr/local/nginx/conf
[root@localhost conf]# vim nginx.conf
server {
  listen  443;
  server_name localhost;
  ssl_certificate   /usr/local/nginx/sslkey/server.crt;
  ssl_certificate_key  /usr/local/nginx/sslkey/server.key.unsecure;
  ssl_protocols   tlsv1 tlsv1.1 tlsv1.2;
  ssl_ciphers  ecdhe-rsa-aes128-gcm-sha256:ecdhe:ecdh:aes:high:!null:!anull:!md5:!adh:!rc4;
  ssl_prefer_server_ciphers on;

nginx配置https加密访问的详细教程

@3.2 启动 nginx 并查看端口

[root@localhost conf]# nginx
[root@localhost conf]# ss -nltp|grep 443
listen  0  128   *:443      *:*     users:(("nginx",pid=25949,fd=6),("nginx",pid=25948,fd=6))

4 浏览器访问即可!

nginx配置https加密访问的详细教程

到此这篇关于nginx配置https加密访问的详细教程的文章就介绍到这了,更多相关nginx配置https加密访问内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!