Nginx 下面搭建https 网站

简介:

  SSL 证书是一种数字证书,它使用 Secure Socket Layer 协议在浏览器和 Web 服务器之间建立一条安全通道,从而实现:
1、数据信息在客户端和服务器之间的加密传输,保证双方传递信息的安全性,不可被第三方窃听;
2、用户可以通过服务器证书验证他所访问的网站是否真实可靠。

 

一、环境介绍


操作系统:centos 7 


IP: 192.168.10.21 


二、部署步骤


查看是否安装openssl

rpm -qa | grep openssl

openssl-libs-1.0.1e-51.el7_2.7.x86_64

openssl-1.0.1e-51.el7_2.7.x86_64


创建私钥

openssl genrsa -out 192.168.10.21.key 2048


创建签名请求的证书(CSR):


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


wKioL1j5c9LQETEbAADanaY8dow192.jpg-wh_50


查看 CSR

[root@localhost ~]# ll 192.168.10.21.csr

-rw-r--r-- 1 root root 952 Apr 21 10:48 192.168.10.21.csr


加载SSL支持的Nginx并使用上述私钥时除去必须的口令:

cp 192.168.10.21.key 192.168.10.21.key.org

openssl rsa -in 192.168.10.21.key.org -out 192.168.10.21.key 


标记证书使用上述私钥和CSR


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


wKiom1j5eBqz9uXTAABEXtwv6wI307.jpg-wh_50


创建ssl 目录


mkdir -pv /etc/nginx/ssl


拷贝证书文件 


cp 192.168.10.21.crt 192.168.10.21.key /etc/nginx/ssl


修改 nginx 配置文件


vim   /etc/nginx/ssl



# Settings for a TLS enabled server.

#

#    server {

#        listen       443 ssl http2 default_server;

#        listen       [::]:443 ssl http2 default_server;

#        server_name  _;

#        root         /usr/share/nginx/html;

#

#        ssl_certificate "/etc/pki/nginx/server.crt";

#        ssl_certificate_key "/etc/pki/nginx/private/server.key";

#        ssl_session_cache shared:SSL:1m;

#        ssl_session_timeout  10m;

#        ssl_ciphers HIGH:!aNULL:!MD5;

#        ssl_prefer_server_ciphers on;

#

#        # Load configuration files for the default server block.

#        include /etc/nginx/default.d/*.conf;

#

#        location / {

#        }

#

#        error_page 404 /404.html;

#            location = /40x.html {

#        }

#

#        error_page 500 502 503 504 /50x.html;

#            location = /50x.html {

#        }

#    }




server {

        listen       443 ssl http2 default_server;

        listen       [::]:443 ssl http2 default_server;

        server_name  _;

        root         /usr/share/nginx/html;


        ssl_certificate "ssl/192.168.10.21.crt";

        ssl_certificate_key "ssl/192.168.10.21.key";

        ssl_session_cache shared:SSL:1m;

        ssl_session_timeout  10m;

        ssl_ciphers HIGH:!aNULL:!MD5;

        ssl_prefer_server_ciphers on;


        # Load configuration files for the default server block.

        include /etc/nginx/default.d/*.conf;


        location / {

        }


        error_page 404 /404.html;

     location = /40x.html {

        }


        error_page 500 502 503 504 /50x.html;

            location = /50x.html {

        }

    }


检查配置文件、重新加载


nginx -t -c /etc/nginx/nginx.conf


nginx -s reload


测试


wKiom1j5gjTzYasNAAAbTO1D8bE714.jpg-wh_50


wKioL1j5gsHypHcXAAC_Ftz6LpA618.jpg-wh_50






本文转自 水滴石川1 51CTO博客,原文链接:http://blog.51cto.com/sdsca/1918216,如需转载请自行联系原作者

相关文章
|
3月前
|
应用服务中间件 Linux 网络安全
nginx安装部署ssl证书,同时支持http与https方式访问
为了使HTTP服务支持HTTPS访问,需生成并安装SSL证书,并确保Nginx支持SSL模块。首先,在`/usr/local/nginx`目录下生成RSA密钥、证书申请文件及自签名证书。接着,确认Nginx已安装SSL模块,若未安装则重新编译Nginx加入该模块。最后,编辑`nginx.conf`配置文件,启用并配置HTTPS服务器部分,指定证书路径和监听端口(如20000),保存后重启Nginx完成部署。
1135 8
|
3月前
|
负载均衡 Ubuntu 应用服务中间件
nginx修改网站默认根目录及发布(linux、centos、ubuntu)openEuler软件源repo站点
通过合理配置 Nginx,我们可以高效地管理和发布软件源,为用户提供稳定可靠的服务。
266 13
|
4月前
|
安全 应用服务中间件 Linux
判断一个网站是否使用HTTPS协议
判断一个网站是否使用HTTPS协议
525 4
|
4月前
|
存储 安全 搜索推荐
应该使用HTTPS的一些网站
应该使用HTTPS的一些网站
188 3
|
4月前
|
Web App开发 算法 应用服务中间件
nginx开启局域网https访问
【10月更文挑战第22天】为了调试WebRTC功能,需要在局域网内搭建HTTPS协议。具体步骤包括:在已部署Nginx和安装OpenSSL的环境中生成私钥、证书签名请求和自签名证书;将生成的文件放置到Nginx的证书目录并修改Nginx配置文件,最后重启Nginx服务。注意,自签名证书不受第三方机构认可,如需正式使用,需向CA申请签名。
160 2
|
5月前
|
安全 应用服务中间件 Shell
nginx配置https的ssl证书和域名
nginx配置https的ssl证书和域名
|
5月前
|
Docker 容器
docker nginx-proxy 添加自定义https网站
docker nginx-proxy 添加自定义https网站
72 4
|
5月前
|
前端开发 JavaScript 应用服务中间件
使用nginx部署网站
使用nginx部署网站
|
6月前
|
安全 应用服务中间件 网络安全
检查一个网站是否启用了HTTPS
检查一个网站是否启用了HTTPS
1295 5
|
6月前
|
存储 安全 搜索推荐
https网站
https网站
374 1