1元虚拟主机

当前位置:  首页 >  SSL教程 >  SSL证书-NginX安装指南

SSL证书-NginX安装指南

来源:未知

作者:admin

更新时间:2017-08-01 13:56

景安网络—河南专业的多线服务器托管商!提供快云服务器,快云VPS,虚拟主机,域名注册,网站空间,服务器托管,服务器租用,SSL证书。1元试用30天vps活动,活动进行中!查看详情

第一步:证书签章要求 (CSR)  

  1. 安装 openssl(加密工具)
# yum install mod_ssl openssl
 
  1. 产生证书私钥和证书请求文件(CSR)
# cd /etc/pki/tls/certs
 
# openssl req -nodes -newkey rsa:2048 -sha256 -keyout nginxssl.key -out nginxssl.csr
Generating a 2048 bit RSA private key
..............+++
..........................+++
writing new private key to 'server.key'
-----
You are about to be asked to enter information that will be incorporated into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [XX]:CN
State or Province Name (full name) []:Guangdong
Locality Name (eg, city) [Default City]:Shenzhen
Organization Name (eg, company) [Default Company Ltd]:ABC eCommerce Limited
Organizational Unit Name (eg, section) []:IT Dept.
Common Name (eg, your name or your server's hostname) []:www.abc.com
Email Address []:
 
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
 
 
从Email地址开始,下面的信息都不需要,请保留为空,直接回车即可。在完成了如上的交互信息输入后,当前目录下将产生两个文件:.key (公钥) 和 .csr (私钥)。请妥善保存这两个文件,请不要泄露私钥文件.
详细介绍命令:
字段 说明 示例
Country Name ISO国家代码(两位字符) CN
State or Province Name 所在省份 Guangdong
Locality Name 所在城市。请勿使用缩写,例如:Saint Louis, 而非 St. Louis Shenzhen
Organization Name 公司名称。如果您的公司或部门名称中有 &、@ 或其他使用 shift 键的符号,请拼出该符号或在注册时省略此字元。例如:XY & Z Corporation 会是 XYZ Corporation 或 XY and Z Corporation ABC eCommerce Limited
Organizational Unit Name 部门名称 IT Dept.
Common Name 申请证书的域名 www.abc.com
Email Address 不需要输入  
A challenge password 不需要输入  
 
  1. 验证您的证书签章要求
    https://cryptoreport.websecurity.symantec.com/checker/ 
    请确保  Signature algorithm: SHA256

  1. 提交CSR 给商服
请保管好key私钥文件,提交CSR等待证书签发 .
第二步:安装服务器证书
证书是审核完毕后您将会收到 ”服务器证书代码”。中级CA证书代码可透过服务商网页下载。为保障保障服务器证书在客户端的兼容性,服务器证书代码 与 中级CA证书代码 需要合并,再安装服务器。举例:服务器证书代码 档名为domain.crt 、中级CA证书代码档名为ca_intermediate.crt
 
domain.crt
 
 
ca_intermediate.crt
 
合并domain.crt 、ca_intermediate.crt 成上下段。域名证书在上,中级证书在下,中间不空行
存为domain.crt

 
 
 
 
 
 
附录:如何辨识中级证书
 
每张证书都会显示发行者,如下:
 
 
 
以上例子有 Symantec Class 3 EV SSL CA – G3, GeoTrust SSL CA – G3, RapidSSL SHA256 – CA。这就是各个证书对应的中级证书。
 
 
 
所谓 “证书安全链” 就是结合秘钥,域名证书,和中级证书,串连起来的加密链,确保加密数据的安全。
 
1、  修改nginx.conf文件
Nginx的参数配置都在nginx.conf文件中,SSL配置也是如此,下面就是配置举例:
 
http {
  server {
    listen                       443;
    ssl                          on;
    ssl_certificate              /etc/nginx/certs/domain.crt;
    ssl_certificate_key          /etc/nginx/certs/server.key;
    ssl_verify_depth             1;
    keepalive_timeout            70;
  }
}
 
 
配置参数说明如下:
在Nginx下的证书备份是非常简单的,打开nginx.conf文件,找到ssl_certificate和ssl_certificate_key指定的2个文件,通常是.cer(.crt)和.key文件,将这两个文件复制到备份媒质上即可。
listen 443:SSL协议监听的端口,SSL协议缺省使用443端口。
server_name:指定SSL网站主机名。
ssl on:SSL功能打开,采用SSL通信协议。
ssl_certificate:证书文件,server.crt
ssl_certificate_key:私钥文件,server.key
ssl_verify_client on:        要求SSL客户证书认证。
ssl on:SSL            功能打开,采用SSL通信协议。
ssl_verify_depth 1:  SSL客户证书认证链长度。 
 
 
2、  重新启动nginx
/etc/init.d/nginx restart
 第三步:设置OCSP装订

OCSP (Online Certificate Status Protocol,在线证书状态协议) 是维护服务器和其它网络资源安全性的两种普遍模式之一。OCSP装订(英语:OCSP Stapling),是一个TLS证书状态查询扩展,作为在线证书状态协议的代替方法对X.509证书状态进行查询。服务器在TLS握手时发送事先缓存的OCSP响应,用户只需验证该响应的有效性而不用再向数字证书认证机构(CA)发送请求。
 
OCSP装订需求NGINX 1.3.7 版本或以上。
检测Nginx版本
# nginx -v
 
3.1 设定
1. 配置OCSP装订指示,在nginx.conf 加入:
ssl_stapling on;
ssl_stapling_verify on;

2. 配置OCSP装订转换机 (非强制)
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 5s;
 
3. 配置ssl_trust certificate 指示
为了通过OCSP装订审核,终端服务器需要先配置根证书和中级证书,指令如下:
 ssl_trusted_certificate /etc/ssl/CA.crt
以上的 CA.crt 范例内容包含所关联根证书和中级证书。完整范例如下:
server {
    listen 443 ssl;
    server_name  serverhostname;
    ssl_certificate /etc/ssl/SSL_Cert.crt;
    ssl_certificate_key /etc/ssl/cert_key.key;
    ssl_trusted_certificate /etc/ssl/CA.crt
    ssl_stapling on;
    ssl_stapling_verify on;
    resolver 8.8.8.8 8.8.4.4 valid=300s;
    resolver_timeout 5s;
}
注意:若在服务器配置OCSP装订,终端服务器的OCSP请求必须默认允许连接到赛门铁克OCSP服务器。若您的服务器是安装在防火墙后端,则必须创建防火墙策略外接链接允许赛门铁克OCSP。
 
 
使用Openssl工具验证终端服务器ssl证书与赛门铁克OCSP链接,请参考以下文档:
https://knowledge.symantec.com/support/mpki-for-ssl-support/index?page=content&actp=CROSSLINK&id=HOWTO111088 
 
保存nginx.conf档并重启 Nginx
/etc/init.d/nginx restart
 
3.2 验证OCSP装订
只有 openssl 工具版本 0.9.8k或以上才能验证OCSP装订。
# openssl s_client -connect yourdomain.com:443 -tls1 -tlsextdebug -status
范例显示结果:
OCSP response:
======================================
OCSP Response Data:
OCSP Response Status: successful (0x0)
若显示以上结果说明OCSP装订已经配置成功,不成功则显示:
OCSP response:
======================================
OCSP response: no response sent
 
另一个验证是透过赛门铁克官网https://cryptoreport.websecurity.symantec.com/checker/ 
OCSP装订将显示 "Enabled" 或 "Not Enabled"
第四步:关闭不安全的加密方式 (cipher) 
在提高网络服务器的SSL证书部署优化方面,我们通常建议系统管理员使用更加安全的加密套件,对于这一点,我们提出对常见的服务器支持的方案。
打开目录下  nginx.conf  文件在配置文件中加入(适用于nginx 1.0.6+ 和 1.1.0+):
ssl_protocols TLSv1.2 TLSv1.1 TLSv1;
ssl_prefer_server_ciphers on;
ssl_ciphers EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH;
 
 
第五步:设置http自动跳转到https

nginx配置SSL证书之后,配置如下:
server {
listen 80 default backlog=2048;
listen 443;
server_name domain.com;
root /var/www/html;
ssl on;
ssl_certificate /etc/nginx/certs/domain.crt;
ssl_certificate_key /etc/nginx/certs/server.key;
}
http访问的时候,报错如下:
400 Bad Request
The plain HTTP request was sent to HTTPS port. Sorry for the inconvenience.
Please report this message and include the following information to us.
Thank you very much!
 
说是http的请求被发送到https的端口上去了,所以才会出现这样的问题。
 
server {
listen 80 default backlog=2048;
listen 443 ssl;
server_name domain.com;
root /var/www/html;
# ssl on;
ssl_certificate /etc/nginx/certs/domain.crt;
ssl_certificate_key /etc/nginx/certs/server.key;
}
 
把ssl on;这行去掉,ssl写在443端口后面。这样http和https的链接都可以用,完美解决。

本文链接:http://ssl.zzidc.com/SSLjiaocheng/2017/0801/470.html

关键字:SSL证书,SSL,SSL证书安装,安装ssl证书

若无特别注明,文章皆为景安网络原创,转载请注明出处。

域名1元

 
返回顶部

联系我们

SSL产品
24小时客服热线:

4006-598-598

0371-9618961