升级nginx为https

升级nginx为https条件

1、查看nginx是否支持ssl

/usr/local/nginx/sbin/nginx -V
Centos7 配置Nginx实现HTTPS
注:查看 configure arguments 信息中是否包含 -with-http_ssl_module 字样,如果没有则需要重新编译。找到之前安装 Nginx 时的编译目录,配置ssl模块,因为这次是升级nginx,所以不需要执行 make install,执行命令如下:
. /configure --with-http_ssl_module 
make

2、查看openssl配置文件

vi /etc/pki/tls/openssl.cnf
Centos7 配置Nginx实现HTTPS 
注:以上截图默认就是这样的重要参数配置路径,如果你要配置修改路径,那么切记在后边签证书等等的操作都要按照这个配置路径去创建,不然当认证的时候会找不到证书!

3、创建生成证书需要的文件

1)创建证书索引数据库文件

touch /etc/pki/CA/index.txt

2) 指定第一个颁发证书的序列号

echo 01 > /etc/pki/CA/serial

注:必须是两位十六进制数,99之后是9A!

4、CA自签证书

1)生成CA私钥

cd /etc/pki/CA

umask 066

openssl genrsa -out /etc/pki/CA/private/cakey.pem 2048
Centos7 配置Nginx实现HTTPS 
注:进入到/etc/pki/CA/目录下执行这两条命令!

2) 生成CA自签名证书

openssl req -new -x509 -key /etc/pki/CA/private/cakey.pem -days 7300 -out /etc/pki/CA/cacert.pem
Centos7 配置Nginx实现HTTPS 
注释:
-new: 生成新证书签署请求
-x509: 专用于 CA 生成自签证书
-key: 生成请求时用到的私钥文件
-days n:证书的有效期限
-out: 证书的保存路径
提示输入国家,省,市,公司名称,部门名称,CA主机名(颁发者名称)

4)查看生成的自签名证书

//linux系统下查看

openssl x509 -in /etc/pki/CA/cacert.pem -noout -text

//windows系统下查看

需要更改上述文件名后缀为.cer即可查看

5、颁发证书

1)在当前创建/root/key/目录

mkdir key

2)生成web服务器私钥

cd key/

umask 066

openssl genrsa -out service.key 2048
Centos7 配置Nginx实现HTTPS

3) 生成CA证书申请文件

openssl req -new -key service.key -out service.csr
Centos7 配置Nginx实现HTTPS 
注:同样提示输入国家、省、市、公司等信息。切记:国家,省,公司名称三项必须和CA一致。主机名称必须和网站域名相同,如www.centos73.com。或者使用泛域名,即*.centos73.com,匹配所有。

4) 将证书文件移动到CA服务器/etc/pki/CA/csr目录下

mv service.csr /etc/pki/CA/csr/
Centos7 配置Nginx实现HTTPS
注:默认好像是没有这个csr目录,那么就手动创建一个!

5) CA签署证书,并将证书颁发给请求者

openssl ca -in /etc/pki/CA/csr/service.csr -out /etc/pki/CA/certs/service.crt -days 365
Centos7 配置Nginx实现HTTPS

6)查看证书中的信息

//查看自签证书

openssl x509 -in 绝对路径 -noout –text | issuer | subject | serial | dates
Centos7 配置Nginx实现HTTPS
Centos7 配置Nginx实现HTTPS

//查看颁发证书的序列号

cat /etc/pki/CA/serial 
Centos7 配置Nginx实现HTTPS

//查看指定编号的证书状态

openssl ca -status 1
Centos7 配置Nginx实现HTTPS 
注:这个编号是颁发的第几个证书,当前就一个所以是1!

//查看证书详细信息

cat /etc/pki/CA/index.txt
Centos7 配置Nginx实现HTTPS 
注:开头V表示当前证书的状态正常!

//查看subjects信息
Centos7 配置Nginx实现HTTPS 
注:yes表示subjects信息必须是唯一的,不能重复申请!

6、修改nginx配置文件

vi /usr/local/nginx/conf/nginx.conf
Centos7 配置Nginx实现HTTPS
注:这里有一个坑就是默认的HTTPS SERVER这行必须删除,要不然一直报错!

7、重启nginx服务

/etc/init.d/nginx restart

8、测试(建议使用Firefox浏览器测试)

访问网页测试

1)域名访问地址:https://nginx.wangfeiyu.com/

Centos7 配置Nginx实现HTTPS
注:以上截图访问方式使用的是https加密访问但是需要我们将证书导入浏览器才行!

导入方式:

//点击高级
Centos7 配置Nginx实现HTTPS

//点击添加列外
Centos7 配置Nginx实现HTTPS

//点击确认安全列外
Centos7 配置Nginx实现HTTPS
Centos7 配置Nginx实现HTTPS
注:以上截图已经可以访问到网页,说明nginx加密成功或者证书导入成功!其他的浏览器导入证书方式不一样,但是超级简单,自行百度即可!

2)IP访问地址:http://192.168.152.177/

Centos7 配置Nginx实现HTTPS
注:这种方式默认使用的还是http协议!也可以设置为通过http跳转到https!

3)IP地址https访问:https://192.168.152.177/

Centos7 配置Nginx实现HTTPS 
注:以上截图访问方式使用的是https加密访问但是需要我们将证书导入浏览器才行!导入方式以上面方式相同。

参考文章:https://www.cnblogs.com/mingzhang/p/8949541.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值