域名相关问题

首页 > 新闻动态 > 帮助中心 > 域名相关问题

Apache SSL证书安装配置方法教程

2018-04-03 13:53  浏览:

Apache SSL证书安装配置方法教程

 简介
 
在申请数字证书之前,您必须先生成证书私钥和证书请求文件 (CSR, Certificate Signing Request), CSR是您的公钥证书原始文件,包含了您的服务器信息和您的单位信息,需要提交给CA认证中心。
请妥善保管和备份您的私钥。
Apache SSL证书安装配置方法教程 
 
以上是申请证书流程图。完成整个流程最快三天,慢则七天,因为发证商需要审核申请者提交的资料。
 
第一步 提交CSR
第二步 资料提交到CA
第三步 发送验证邮件到管理员邮箱 
CA获得资料后,将发送一封确认信到管理员邮箱*,信中将包含一个链接。每一个订单,都有一个唯一的PIN以做验证用。 
 第四步 邮件验证 
点击确认信中的链接,可以访问到验证网站,在验证网站,可以看到该订单的申请资料,然后点击
"I Approve"完成邮件验证。 
 
第五步 颁发证书 
CA会将证书通过邮件方式发送到申请人自己的邮箱。
 
*什么是管理员邮箱? 

认证系统为了确认您对所申请的SSL服务器域名拥有管理权,会发电子邮件到指定的管理员邮箱中。例如:您准备申请的SSL证书服务器域名为:host.domain.com,在递交申请时,可供选择的管理员邮箱如下:

admin@domain.com admin@host.domain.com
administrator@domain.com administrator@host.domain.com
hostmaster@domain.com hostmaster@host.domain.com
root@domain.com root@host.domain.com
webmaster@domain.com webmaster@host.domain.com
postmaster@yourdomain.com postmaster@host.yourdomain.com

 
SSL证书是数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。SSL 证书就是遵守SSL协议,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。
 
本指南将分成5个主题:

  1. 生成证书请求文件(CSR) 
  2. 安装服务器证书
  3. 设置OCSP装订
  4. 优化加密方式 (weak cipher) 
  5. 设置http跳转到https 

 
 
第一步:证书签章要求 (CSR) 产生说明 
 

  1. 安装 openssl(加密工具)
# yum install mod_ssl openssl

 

  1. 产生证书私钥和证书请求文件(CSR)

 Apache SSL证书安装配置方法教程


从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 不需要输入  


如果CSR需要中文字,指令加 –utf8 参数
Apache SSL证书安装配置方法教程 
 
 

  1. 验证您的证书签章要求

https://cryptoreport.websecurity.symantec.com/checker/views/csrCheck.jsp
请确保  Signature algorithm: SHA256

  1. 提交CSR 给商服

请保管好key私钥文件,提交CSR给客服等待证书签发 .
 
第二步:安装服务器证书


证书是审核完毕后您将会收到:
服务器证书
服务器中级CA证书

2.1、 配置Apache   
打开apache安装目录下 /etc/httpd/conf/httpd.conf  文件,找到   
#LoadModule ssl_module modules/mod_ssl.so   
删除行首的配置语句注释符号“#”   
保存退出。   
打开apache安装目录下conf目录中的ssl.conf文件,查到“LoadModule ssl_module”
如下:
#LoadModule ssl_module modules/mod_ssl.so   
删除行首的配置语句注释符号“#”,另加 Include /etc/httpd/conf.d/ssl.conf 

LoadModule ssl module modules/mod_ssl.so
Include /etc/httpd/conf/ssl.conf

 
2.2、打开apache安装目录下  /etc/httpd/conf/ssl.conf  文件在配置文件中的 
SSLCertificateFile  /etc/pki/tls/certs/server.crt                  将服务器证书配置到该路径下   
SSLCertificateKeyFile  /etc/pki/tls/certs/domain.com.key    将服务器证书私钥配置到该路径下   
SSLCertificateChainFile  conf/ca.crt      删除行首的“#”号注释符,并将CA证书ca.crt
 
配置到该路径下,保存退出。
 
例子
Apache SSL证书安装配置方法教程 
 
2.3、重启Apache。重启方式:   
进入Apache安装目录下的bin目录,运行如下命令   
./apachectl -k stop   
./apachectl -k start
 
附录:如何辨识中级证书
每张证书都会显示发行者,如下:
 
 Apache SSL证书安装配置方法教程
 
以上例子有 Symantec Class 3 EV SSL CA – G3, GeoTrust SSL CA – G3, RapidSSL SHA256 – CA。这就是各个证书对应的中级证书。
 
所谓 “证书安全链” 就是结合秘钥,域名证书,和中级证书,串连起来的加密链,确保加密数据的安全性。
 
第三步:设置OCSP装订
 
OCSP装订(英语:OCSP Stapling),是一个TLS证书状态查询扩展,作为在线证书状态协议的代替方法对X.509证书状态进行查询。服务器在TLS握手时发送事先缓存的OCSP响应,用户只需验证该响应的有效性而不用再向数字证书认证机构(CA)发送请求。
OCSP装订需求Apache2.3.3版本或以上。
检测Apache版本
# apache2 –v
 
3.1 设定
在设定档底下加入两行指令:
SSLUseStapling on
SSLStaplingCache "shmcb:/var/run/ocsp(128000)"
第二行SSLStaplingCache指定快取的装置路径和记忆体大小。注意:如果Apache是安装在微软,第二行指令设为 "shmcb:C:/xampp/apache/logs/ocsp(128000)"
以上二行指令必须在 <VirtualHost> … </VirtualHost> 挂号以外,避免Apache无法重启。
 
注意:若在服务器配置OCSP装订,终端服务器的OCSP请求必须默认允许连接到赛门铁克OCSP服务器。若您的服务器是安装在防火墙后端,则必须创建防火墙策略外接链接允许赛门铁克OCSP。
使用Openssl工具验证终端服务器ssl证书与赛门铁克OCSP链接,请参考以下文档:
https://knowledge.symantec.com/support/mpki-for-ssl-support/index?page=content&actp=CROSSLINK&id=HOWTO111088 
 
保存设定档,重启Apache。
 
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"
Apache SSL证书安装配置方法教程
 
 
第四步:关闭不安全的加密方式 (cipher) 
 

  1. 通过https方式访问您的站点,测试站点证书的安装配置。

https://cryptoreport.websecurity.symantec.com/checker/views/certCheck.jsp 
 

  1. 在提高网络服务器的SSL证书部署优化方面,我们通常建议系统管理员使用更加安全的加密套件,对于这一点,我们提出对常见的服务器支持的方案。
    打开apache安装目录下  /etc/httpd/conf/ssl.conf  文件在配置文件中加入: 
SSLProtocol All –SSLv2 –SSLv3
SSLCipherSuite EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH
SSLHonorCipherOrder on

第四步:设置http自动跳转到https
 
配置好https后,需要设置url重定向规则,使网站页面的http访问都自动转到https访问。

1)先打开url重定向支持
打开Apache/conf/httpd.conf,找到 #LoadModule rewrite_module modules/mod_rewrite.so
去掉#号。

2)找到你网站目录的<Directory>段,找到
修改其中的 AllowOverride None 为 AllowOverride All

3)重启apache服务2、设置重定向规则

( 1)在你网站目录下放一个.htaccess文件。windows环境下,不能把文件直接改名为.htaccess,会提示你必须输入文件名。所以我们先新建一个“新建文本文档.txt”文档,记事本打开,选择另存为,保存类型选择“所有文件(*.*)”,文件名输入“.htaccess”,保存。这样便生成了一个.htaccess文件。

( 2)编辑器打开 .htaccess文件,写入如下规则:
RewriteEngine on
RewriteCond %{SERVER_PORT} !^443$
RewriteCond %{REQUEST_URI} !^/tz.php
RewriteRule (.*) https://%{SERVER_NAME}/$1 [R]

解释:
%{SERVER_PORT} —— 访问端口
%{REQUEST_URI} —— 比如如果url是 http://localhost/tz.php,则是指 /tz.php
%{SERVER_NAME} —— 比如如果url是 http://localhost/tz.php,则是指 localhost
 
以上规则的意思是,如果访问的url的端口不是443,且访问页面不是tz.php,则应用RewriteRule这条规则。这样便实现了:访问了 http://localhost/index.php 或者 http://localhost/admin/index.php 等页面的时候会自动跳转到 https://localhost/index.php 或者 https://localhost/admin/index.php,但是访问 http://localhost/tz.php 的时候就不会做任何跳转,也就是说 http://localhost/tz.php 和 https://localhost/tz.php 两个地址都可以访问。

【免责声明】:部分内容、图片来源于互联网,如有侵权请联系删除,QQ:228866015

下一篇:Nginx SSL数字证书安装指南 上一篇:已将域名解析到了服务器的Ip,但是仍然无法访问网站?