`

Nginx服务器部署SSL证书

 
阅读更多

 

http://jingyan.baidu.com/article/154b463178eac928ca8f41a9.html

 

SSL证书也称为服务器证书,是遵守全球统一的严格身份认证的SSL协议的一种数字证书,由全球信任的证书颁发机构(CA)验证服务器身份后颁发。将SSL证书安装在网站服务器上,可实现网站身份验证和数据加密传输双重功能。用户通过http协议访问网站时,浏览器和服务器之间是明文传输,这就意味着用户填写的密码、帐号、交易记录等机密信息都是明文,随时可能被泄露、窃取、篡改,被黑客加以利用。安装SSL证书后,使用Https协议加密访问网站,可激活客户端浏览器到网站服务器之间的"SSL加密通道"(SSL协议),实现高强度双向加密传输,防止传输数据被泄露或篡改钓鱼欺诈网站泛滥。 同时,网站部署全球信任的SSL证书后,浏览器内置安全机制,实时查验证书状态,通过浏览器向用户展示网站认证信息,让用户轻松识别网站真实身份,防止钓鱼网站仿冒。

工具/原料

 
  • 本次部署使用的GDCA恒信(EV)SSL测试证书进行部署操作。
  • 制作证书请求文件的工作环境,需要先安装好OPENSSL工具

生成证书请求

 
  1. 1

    安装OpenSSL工具

    您需要使用Openssl工具来创建证书请求。安装OpenSSL到C:\OpenSSL;

    安装完后将C:\OpenSSL\bin目录下的openssl.cfg重命名为openssl.cnf

    Nginx服务器部署SSL证书
    Nginx服务器部署SSL证书
  2. 2

    生成服务器证书私钥

    命令行进入C:\OpenSSL\bin,生成证书私钥。产生的私钥文件可以是server.key这样简单的命名或者使用我们推荐的使用主机域名方式进行命名。

    cd c:\OpenSSL\bin

    先设置环境变量

    set OPENSSL_CONF=openssl.cnf

    参考:

    openssl genrsa -out server.key 2048

    例:

    输入命令:openssl genrsa -out D:\testweb.95105813.cn.key 2048

    Nginx服务器部署SSL证书
  3. 3

    生成服务器证书请求(CSR)文件

     

    参考:

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

    例:

    输入命令:openssl req -new -key D:\testweb.95105813.cn.key -out D:\certreq.csr

    如出现以下报错请先设置环境变量

    set OPENSSL_CONF=openssl.cnf 

    Nginx服务器部署SSL证书
  4. 4

    执行成功后提示要输入您的相关信息。填写说明:

    1.Country Name:

    填您所在国家的ISO标准代号,如中国为CN,美国为US

    2.State or Province Name:

    填您单位所在地省/自治区/直辖市,如广东省或 Guangdong

    3.Locality Name:

    填您单位所在地的市/县/区,如佛山市或Foshan

    4.Organization Name:

    填您单位/机构/企业合法的名称,如广东数字证书认证中心有限公司或Guangdong Certification Authority Co.,Ltd.

    5.Organizational Unit Name:

    填:部门名称,如技术支持部或Technical support

    6.Common Name:

    域名,如:testweb.95105813.cn。在多个域名时,填主域名

    7.Email Address:

    填您的邮件地址,不必输入,按回车跳过

    8.‘extra’attributes  

    从信息开始的都不需要填写,按回车跳过直至命令执行完毕。

    Nginx服务器部署SSL证书
  5. 5

    除第1、6、7、8项外,2-5的信息填写请统一使用中文或者英文填写。并确保您填写的所有内容和您提交到颁发单位的资料一致,以保证SSL证书的签发。

    END

服务器证书的导入

 
  1. 1

    SSL证书获取

    申请提交后通过颁发单位的审核后会颁发给你证书,根据颁发单位的不同,需要使用的根证书和CA证书也不相同。一般颁发单位在颁发证书的时候都会将根证书、CA证书、服务器证书一起发邮件给你,GDCA的证书也可以通过他们官网下载根证书和CA证书。

  2. 2

    转换证书编码

     

    从官网上下载的证书需要先转换为Base64编码格式。以根证书为例:

    打开证书,详细信息-复制到文件,在证书导出向导里,将证书编码改成Base64编码格式,导出到指定目录里。

    Nginx服务器部署SSL证书
    Nginx服务器部署SSL证书
    Nginx服务器部署SSL证书
    Nginx服务器部署SSL证书
  3. 3

    转换成Base64编码格式后,用文本编辑器打开,可以看到文件内容是以-----BEGIN CERTIFICATE-----开头,-----END CERTIFICATE-----结尾。以同样方式将CA证书也转换成Base64编码格式。

    Nginx服务器部署SSL证书
  4. 4

    导入根证书和CA证书到服务器证书

     

    然后将用文本编辑器打开您的服务器证书、CA证书和根证书,将CA证书和根证书都加入到您的服务器证书文件里,将文件保存为testweb.95105813.cn.crt。文件里证书的保存顺序是 服务器证书-CA证书-根证书:

    例: testweb.95105813.cn.crt

    Nginx服务器部署SSL证书
    END

部署服务器证书

 
  1. 配置给nginx服务器本机使用

    打开nginx安装目录下conf目录中的nginx.conf文件,找到被注释掉的server 配置,进行修改:

    Nginx服务器部署SSL证书
  2. server {

            listen       443 ssl;

            server_name  localhost;

     

            ssl_certificate /usr/local/nginx/conf/testweb.95105813.cn.crt;

            ssl_certificate_key  /usr/local/nginx/conf/testweb.95105813.cn.key;

            ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;

            ssl_session_cache    shared:SSL:1m;

            ssl_session_timeout  5m;

            ssl_ciphers  HIGH:!aNULL:!MD5;

            ssl_prefer_server_ciphers  on;

     

            location / {

                root   html;

                index  index.html index.htm;

            }

        }

    把服务器证书testweb.95105813.cn.crt和私钥testweb.95105813.cn.key上传到配置文件指向的目录/usr/local/nginx/conf/

    保存退出,并重新加载nginx配置nginx -s reload后通过https方式访问您的站点,测试站点证书的安装配置。

  3. 使用nginx作为反向代理 

     

    Nginx常被用作反向代理服务器使用。以下是配置示例:

    在 /usr/local/nginx目录下创建servers和ssls目录

    mkdir ssls

    mkdir servers

    把服务器证书testweb.95105813.cn.crt及其私钥testweb.95105813.cn.key上传到ssls目录下。在servers目录创建服务器testweb.95105813.cn的配置文件testweb.95105813.cn.conf:

    server{

             listen       443;

             server_name  testweb.95105813.cn;

             ssl                  on;

             ssl_certificate      /usr/local/nginx/ssls/testweb.95105813.cn.crt;

             ssl_certificate_key  /usr/local/nginx/ssls/testweb.95105813.cn.key;

             ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;

         location /{

               proxy_pass https://192.168.100.13:8002; #后端的web服务器

               proxy_set_header Host $host;

               proxy_set_header X-Real-IP $remote_addr;

               proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;

               fastcgi_param HTTPS $https if_not_empty;

               proxy_set_header X-Forwarded-Proto https;

               }

         error_page   500 502 503 504  /50x.html;

         error_page 400  https://$host$uri?$args;

         location = /50x.html {

            root   html;

            }

           }

    打开nginx安装目录下conf目录中的nginx.conf文件,加入:

    include /usr/local/nginx/servers/testweb.95105813.cn.conf 

    Nginx服务器部署SSL证书
  4. 4

    保存退出,并重新加载nginx配置nginx -s reload,通过https方式访问您的站点,测试站点证书的安装配置。

分享到:
评论

相关推荐

    Nginx 应用服务器SSL部署证书视频操作

    在Nginx服务器上,SSL配置主要位于`/etc/nginx/sites-available/`目录下的服务器块配置文件。需要创建或编辑一个配置文件,例如`example.com.conf`,并添加以下关键部分: ```nginx server { listen 443 ssl; ...

    nginx配置下载SSL证书之后在服务器中配置之后就可以https访问

    以下将详细介绍如何在Nginx服务器中配置SSL证书,使得网站能够支持HTTPS访问。 首先,你需要从数字证书管理服务提供商(如Let's Encrypt、Comodo、Symantec等)购买并申请SSL证书。申请过程中,你需要提供域名信息...

    Vue项目部署Nginx配置文件 SSL

    Nginx 是一款高性能的 HTTP 和反向代理服务器,常被用来部署 web 应用,包括 Vue 项目。SSL(Secure Sockets Layer)和其继任者 TLS(Transport Layer Security)则是用于在互联网上提供安全通信的标准,通过 HTTPS ...

    本地nginx部署ssl.rar

    "本地nginx部署ssl.rar"这个压缩包文件显然包含了关于如何在本地nginx服务器上配置SSL的详细步骤和资源。 Nginx是一款高性能的HTTP和反向代理服务器,广泛用于网站服务器和负载均衡配置。它以其稳定性、高性能和...

    Nginx环境SSL证书部署方法

    在Nginx服务器环境中部署SSL证书是保证网站安全通信的重要步骤。SSL(Secure Sockets Layer)证书能够实现数据加密和服务器身份验证,确保客户端和服务器间传输的数据不被第三方截取或篡改。当完成证书的购买和申请...

    SSL证书部署Apache服务器、IIS服务器、Nginx服务器、Tomcat服务器文档

    本文将详细讲解如何在四种常见的服务器平台上部署SSL证书:Apache、IIS、Nginx和Tomcat。 1. **Apache服务器安装SSL证书** Apache服务器是开源的Web服务器,使用mod_ssl模块来支持SSL协议。安装步骤如下: - **...

    教你搭建http php java服务器+ssl证书=https网站,Linux+Nginx-Apache PHP-Tomcat java+SSL证书.zip

    手把手教你搭建https服务器,部署ssl证书到php java服务器(Nginx-Apache PHP-Tomcat java+SSL证书) 1.购买免费的SSL证书 2.下载SSL证书 3.往nginx上新增ssl 4.往Apache上新增ssl 5.往Tomcat上新增ssl 6.解决警告 7....

    centos7.6部署Nginx1.1.18中间件SSL加密证书改造步骤

    在本文中,我们将深入探讨如何在...通过以上步骤,你已经在CentOS 7.6上成功部署了支持SSL加密的Nginx服务器,并实现了国密SM2证书的使用,确保了网站数据传输的安全。记得定期更新SSL证书,以保持其有效性和安全性。

    Ngnix SSL证书部署指南

    本文档提供了Nginx SSL证书的部署方法,旨在帮助用户快速部署SSL证书,提高Nginx服务器的安全性。 一、 安装SSL证书的环境 要部署SSL证书,需要具备以下环境: * Linux服务器一台 * Nginx服务安装 * SSL证书一张...

    TomcatSSL证书部署指南

    综合以上内容,部署SSL证书到Tomcat服务器涉及了从获取证书到配置Tomcat以及后续的备份和恢复等多步骤。安全地配置和使用SSL证书,对于维护Web服务器的安全通信和用户数据的保密性是必不可少的。沃通电子认证服务...

    免费SSL证书_CloudFlare SSL和Wosign沃通SSL申请开通和安装使用

    而选择FullSSL模式时,需要在服务器上部署SSL证书,可以是自签发的证书,并且在Nginx等web服务器软件中进行配置。 另一个免费SSL证书的提供者是Wosign沃通SSL。Wosign是一家中国的SSL证书颁发机构,其产品同样被...

    Nginx 证书部署.docx

    Nginx 证书部署是指在 Nginx 服务器上安装和配置 SSL/TLS 证书,以便实现 HTTPS 加密连接。下面是 Nginx 证书部署的详细过程: 1. 获取证书 首先,需要获得 SSL 证书文件和私钥文件。这些文件通常可以从证书颁发...

    PHPStudy(小皮)ssl证书批量替换工具

    这个工具专为在Windows服务器上运行PHPStudy的用户设计,旨在简化SSL证书的替换过程,避免逐个站点进行操作的繁琐步骤。 该工具的核心功能包括: 1. **批量替换**:能够一次性处理多个网站的SSL证书更换,显著提高...

    Nginx配置SSL证书部署HTTPS网站的方法(颁发证书)

    通过上述步骤,你可以成功地在Nginx服务器上配置SSL证书,实现HTTPS网站的部署。然而,自签名证书通常不被浏览器信任,可能会显示警告,而第三方CA签发的证书则会被广泛认可,提供更好的用户体验。在生产环境中,...

    服务器使用Nginx部署Springboot项目的详细教程(jar包)

    下载并安装Nginx服务器。按照官方文档或相关教程进行安装,确保服务器支持HTTP和HTTPS通信。 6. **配置Nginx**: 编辑`nginx.conf`配置文件。在`http`块中,添加两个`server`块,分别对应你的两个项目。每个`...

    在Linux虚拟机中搭建Nginx服务器以及SSL、反向代理和负载均衡的实现[汇编].pdf

    2. **Linux下配置HTTPS**:首先需要生成SSL证书,包括私钥和公钥,然后将它们配置到Nginx的配置文件中,启用HTTPS支持。 3. **SSL/TLS协议分析**:涉及到证书链、加密算法选择、握手过程等,这些都影响着网站的安全...

    在Linux虚拟机中搭建Nginx服务器以及SSL、反向代理和负载均衡的实现.pdf

    在Linux虚拟机中搭建Nginx服务器,以及SSL、反向代理和负载均衡的实现是一项重要的网络服务配置工作。以下是对这些概念的详细说明: **一、虚拟机下的网络配置** 1. **Bridged模式**:在这种模式下,虚拟机就像...

    ssl证书,可用于nginx

    在描述中提到SSL证书“可用于nginx”,意味着我们要讨论的是如何在Nginx服务器上配置和使用SSL证书。 Nginx是一款高性能的HTTP和反向代理服务器,广泛应用于网站和应用程序的服务器部署。支持SSL/TLS协议是Nginx...

    自动化脚本一键生成Nginx https证书证书格式为pem

    在Nginx中,通常需要两个文件:一个包含公钥的服务器证书(server.crt),另一个包含私钥的文件(server.key)。 生成HTTPS证书的过程通常包括以下步骤: 1. **生成RSA密钥对**:使用OpenSSL工具,我们可以运行`...

    泛微协同办公nginx部署手册

    ### 泛微协同办公nginx部署手册 #### 一、服务器背景环境及准备工作 在开始部署泛微协同办公系统之前,我们需要准备以下环境: - **负载均衡服务器**:192.168.52.9 - **应用服务器1**:192.168.52.11 (端口8080)...

Global site tag (gtag.js) - Google Analytics