首页 > Web开发 > 详细

6,nginx 设置自签名证书以及设置网址http强制转https访问

时间:2020-12-21 18:16:11      阅读:40      评论:0      收藏:0      [点我收藏+]

自签名证书可以在自己的内网环境或者非对外环境使用,保证通信安装

1、生产证书

直接使用脚本生产:

中途会提示书如1次域名和4次密码,把一下文件保存为sh文件,赋予x权限后 直接执行,根据提示输入。

 

#!/bin/sh

# create self-signed server certificate:

read -p "Enter your domain [www.example.com]: " DOMAIN

echo "Create server key..."

openssl genrsa -des3 -out $DOMAIN.key 1024

echo "Create server certificate signing request..."

SUBJECT="/C=US/ST=Mars/L=iTranswarp/O=iTranswarp/OU=iTranswarp/CN=$DOMAIN"

openssl req -new -subj $SUBJECT -key $DOMAIN.key -out $DOMAIN.csr

echo "Remove password..."

mv $DOMAIN.key $DOMAIN.origin.key
openssl rsa -in $DOMAIN.origin.key -out $DOMAIN.key

echo "Sign SSL certificate..."

openssl x509 -req -days 3650 -in $DOMAIN.csr -signkey $DOMAIN.key -out $DOMAIN.crt

echo "TODO:"
echo "Copy $DOMAIN.crt to /etc/nginx/ssl/$DOMAIN.crt"
echo "Copy $DOMAIN.key to /etc/nginx/ssl/$DOMAIN.key"
echo "Add configuration in nginx:"
echo "server {"
echo "    ..."
echo "    listen 443 ssl;"
echo "    ssl_certificate     /etc/nginx/ssl/$DOMAIN.crt;"
echo "    ssl_certificate_key /etc/nginx/ssl/$DOMAIN.key;"
echo "}"

 

2、拷贝证书到nginx指定位置

上述脚本执行完成后会在当前目录生产4个文件,例如我的:

 

技术分享图片

 

 

我们知晓crt和key证书,拷贝走存放到nginx安装目录下一个单独目录即可,没有强制要求,一会nginx配置文件写真实路径即可。

 

3、增加nginx  ssl文件

server {
     listen       443;
     ssl on;
     server_name  www.zhangbei.com;
     root         /usr/local/nginx/html/;

     ssl_certificate /usr/local/nginx/conf/ssl/www.zhangbei.com.crt;
     ssl_certificate_key /usr/local/nginx/conf/ssl/www.zhangbei.com.key;

}

 

配置完成后重新加载nginx配置文件

nginx -s reload

 

4、使用https加上你的域名访问即可

地址栏前面会提示危险,不用理会,只是不可信而已,但是我们已经实现了ssl加密访问

技术分享图片

 

 

5、强制转换http访问为http

修改nginx默认配置文件

增加如下rewrite操作,并从新加载nginx配置文件,这样就实现了http访问自动调整到https访问,保证访问安全。

 

技术分享图片

 

6,nginx 设置自签名证书以及设置网址http强制转https访问

原文:https://www.cnblogs.com/xiaomai-rhce/p/14168914.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!