nginx使用ssl模块配置支持HTTPS访问 (nginx 六)

安装nginx

安装教程:https://blog.csdn.net/dengjili/article/details/88626321

测试结果,安装成功
在这里插入图片描述

删除刚刚测试成功的nginx安装的目录

在这里插入图片描述

然后回到安装包目录
在这里插入图片描述

添加ssl模块

https需要依赖于nginx的ssl模块,所有需要安装
默认情况下ssl模块并未被安装,如果要使用该模块则需要在编译nginx时指定–with-http_ssl_module参数.

命令

yum install openssl
yum install openssl-devel

重新编译nginx

需要到nginx安装包路径下面执行命令,注意一定要停掉nginx,不然会有问题
执行命令

./configure --prefix=/app/nginx --with-http_ssl_module
## 重编译一下
make & make install

创建https中的公私钥及其证书(使用openssl)

先找找个路径,存储key,当前路径为
/app/nginx/key

服务器私钥

执行命令

openssl genrsa -des3 -out server.key 1024

会输入密码,这里随便输入,一会儿删掉,创建成功后,出现一个server.key文件
在这里插入图片描述

创建客户端公钥

执行命令

openssl req -new -key server.key -out server.csr

过程中会填写一个组织单位信息,随便填写,操作完后生成公钥文件server.csr
在这里插入图片描述

删除私钥设置的秘钥

执行命令

cp server.key server.key.org
openssl rsa -in server.key.org -out server.key

在这里插入图片描述

生成浏览器证书

执行命令

openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt

在这里插入图片描述
可以把服务器上的证书导入浏览器中
在这里插入图片描述
浏览器会报不可用证书,因为证书要放在可信的机构上

配置nginx的配置信息

修改nginx.conf文件

worker_processes  1;
events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;sendfile        on;keepalive_timeout  65;server {listen       443;server_name  localhost;ssl on;ssl_certificate      /app/nginx/key/server.crt;ssl_certificate_key  /app/nginx/key/server.key;ssl_session_timeout  5m;ssl_protocols  SSLv2 SSLv3 TLSv1;ssl_ciphers  HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers   on;location / {root   html;index  index.html index.htm;}}
}

启动,测试

在这里插入图片描述

在这里插入图片描述
可以访问https
在这里插入图片描述
因为浏览器没有证书的原因
在这里插入图片描述

配置一个80端口http转发

    server {listen 80;server_name localhost;rewrite ^(.*)$  https://$host$1 permanent;}  

在这里插入图片描述


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部