博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
编译Nginx, 并使用自签证书实现https访问
阅读量:5049 次
发布时间:2019-06-12

本文共 2434 字,大约阅读时间需要 8 分钟。

1. 编译安装nginx1.8.1

[root@centos7 nginx-1.8.1]# ./configure --prefix=/usr/local/nginx.1.8.1 --with-http_stub_status_module --with-http_ssl_module[root@centos7 nginx-1.8.1]# make && make install[root@centos7 nginx-1.8.1]# export PATH=$PATH:/usr/local/nginx.1.8.1/sbin[root@centos7 ~]# echo "export PATH=$PATH:/usr/local/nginx.1.8.1/sbin" > /etc/profile.d/nginx.sh [root@centos7 ~]# grep nginx /etc/man_db.conf MANPATH_MAP /usr/local/nginx.1.8.1/sbin /usr/local/nginx.1.8.1/man[root@centos7 ~]# mkdir -p /usr/local/nginx.1.8.1/man/man8/[root@centos7 ~]# cp /home/Allen/nginx-1.8.1/man/nginx.8 /usr/local/nginx.1.8.1/man/man8/

2. nginx加入systemd管理

[root@centos7 nginx-1.8.1]# vim /etc/systemd/system/nginx.service[Unit]Description=nginx server daemonDocumentation=man:nginx(8)After=network.target[Service]Type=forkingExecStart=/usr/local/nginx.1.8.1/sbin/nginxExecReload=/usr/local/nginx.1.8.1/sbin/nginx -s reloadExecStop=/usr/local/nginx.1.8.1/sbin/nginx -s quit#PrivateTmp=true[Install]WantedBy=multi-user.target[root@centos7 nginx-1.8.1]# systemctl daemon-reload

3. 证书自签名

[root@centos7 ~]# vim req.cnfdistinguished_name = req_distinguished_namex509_extensions = v3_reqprompt = no[req_distinguished_name]C = ENST = BeijingL = BeijingO = jzbgOU = OpsCN = www.jzbg.com[v3_req]keyUsage = critical, digitalSignature, keyAgreementextendedKeyUsage = serverAuthsubjectAltName = @alt_names[ alt_names ]DNS.1 = www.jzbg.com[root@centos7 ~]# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /usr/local/nginx.1.8.1/ssl/private.key -out /usr/local/nginx.1.8.1/ssl/nginx.crt -config req.cnf -sha256

4. 配置nginx

[root@centos7 ~]# vim /usr/local/nginx.1.8.1/conf/nginx.confserver {    listen       19972 ssl;    server_name  www.jzbg.com;    ssl on;    ssl_certificate      /usr/local/nginx.1.8.1/ssl/nginx.crt;    ssl_certificate_key  /usr/local/nginx.1.8.1/ssl/private.key;    ssl_session_timeout 5m;    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;    ssl_prefer_server_ciphers on;    location / {        root   html;        error_page   500 502 503 504  /50x.html;        index  index.html index.htm;    }}

5. 启动nginx

[root@centos7 nginx-1.8.1]# systemctl start nginx[root@centos7 nginx-1.8.1]# ss -ant | grep 19972LISTEN     0      128          *:19972                    *:*

此时访问会出现如下问题

1444068-20181119124401580-154193055.png

6. 在Windows中导入证书

1444068-20181119112618168-421948319.png

1444068-20181119112622954-67256523.png

1444068-20181119112634037-1026727781.png

1444068-20181119112647353-2123790655.png

1444068-20181119112659167-1616159151.png

1444068-20181119112711677-102917631.png

7. 测试效果

正常访问,不报证书错误

1444068-20181119123742009-988206878.png

转载于:https://www.cnblogs.com/jzbgltb/p/9967069.html

你可能感兴趣的文章
Codeforces Round #374 (Div. 2)
查看>>
oracle数据类型
查看>>
socket
查看>>
Vue中使用key的作用
查看>>
二叉索引树 树状数组
查看>>
日志框架--(一)基础篇
查看>>
Java设计模式之原型模式
查看>>
Spring学习(四)-----Spring Bean引用同xml和不同xml bean的例子
查看>>
哲理故事与管理之道(20)-用危机激励下属
查看>>
关于源程序到可运行程序的过程
查看>>
wepy的使用
查看>>
转载:mysql数据库密码忘记找回方法
查看>>
scratch少儿编程第一季——06、人在江湖混,没有背景怎么行。
查看>>
面向对象1
查看>>
在ns2.35中添加myevalvid框架
查看>>
【贪心+DFS】D. Field expansion
查看>>
为什么要使用href=”javascript:void(0);”
查看>>
二进制文件的查看和编辑
查看>>
C# Async与Await的使用
查看>>
Mysql性能调优
查看>>