ssl配置
Apache SSL配置
网址: http://weizhifeng.net/apache-ssl.html
概念
开始之前介绍几个SSL相关的概念:
- CA(Certification Authority,认证中心)
- SSL (Secure Sockets Layer,安全套接层协议)
- TLS(Transport Layer Security,传输层安全)
- CSR (Certificate Signing Request,证书签名请求)
流程
需要启用SSL的服务器自己生成CSR,然后让权威的CA进行签名认证或者 自己创建一个CA证书,然后给自己的CSR签名,不过这样的证书不会被浏览器认可。 以下步骤确保已经安装了openssl,windows版本的在这。
创建一个自签名的CA证书:
openssl req -x509 -newkey rsa:1024 -keyout ca.key -out ca.crt
生成服务器CSR:
openssl req -newkey rsa:1024 -keyout server.key -out server.csr
如果不使需要CA证书签名的话,进行如下操作:
openssl req -x509 -days 1024 -key server.key -in server.csr > server.crt
如果需要用CA证书签名:
openssl x509 -req -in server.csr -out server.crt -CA ca.crt -CAkey ca.key -CAcreateserial
查看证书:
openssl x509 -noout -text -in server.crt
验证证书:
openssl verify -CAfile ca.crt server.crt
生成客户端CSR:
openssl req -newkey rsa:1024 -keyout client.key -out client.csr
用CA证书签名:
openssl x509 -req -in client.csr -out client.crt -CA caca.crt -CAkey caca.key -CAcreateserial
转换,使证书可以安装到浏览器:
openssl pkcs12 -export -clcerts -in client.crt -inkey client.key -out client.pfx
修改配置文件httpd-ssl.conf:
SSLCertificateFile conf/ssl.crt/server.crt #服务器证书
SSLCertificateKeyFile conf/ssl.key/server.key #服务器私钥
SSLCACertificateFile conf/ssl.crt/ca/ca.crt #CA证书
SSLVerifyClient require #强制浏览器必须安装了证书才能访问
证书链介绍
生成Root CA私钥与证书: 生成RootCA私钥 —> 使用私钥生成CSR —> 生成自签名根证书(用来给二级CA证书签名)。
生成二级CA 私钥与证书:(假如有两个二级CA, 分别负责管理服务器端和客户端证书)
2.1 生成ServerCA私钥 —> 使用私钥生成CSR —> 使用根证书签名生成二级证书(ServerCA证书用来给服务器证书签名)。
2.2 先生成ClientCA私钥 —> 使用私钥生成 CSR—> 使用根证书签名生成二级证书(ClientCA证书用来给客户端证书签名)。生成服务器端与客户端的私钥与证书:
3.1 生成ServerA私钥 —> 使用私钥生成CSR —> 使用ServerCA证书签名生成三级证书(ServerA证书)。
3.2 生成ClientA私钥 —> 使用私钥生成 CSR—> 使用ClientCA证书签名生成三级证书(ClientA证书)。
3.3 先生成ClientB私钥 —> 使用私钥生成 CSR—> 使用ClientCA证书签名生成三级证书(ClientB证书)。
...可以生成N个客户端证书
证书结构:
RootCA
|
|-------ServerCA
| |
| |--------ServerA
|
|-------ClientCA
|
|------- ClientA
|------- ClientB
|......
参考:
http://www.shenmiguo.com/archives/2009/284_linux-apache-ssl-guide.html
ssl配置的更多相关文章
- 百度CDN 网站SSL 配置
百度CDN SSL配置步骤 一般从SSL提供商购买到的证书是CRT二进制格式的. 1. 将 CRT 导入到IIS中, 然后从IIS中导出为PFX格式 2. 下载openssl,执行下面命令 提取用户证 ...
- Nginx SSL配置过程
1. 在godaddy购买了UCC SSL(最多5个域名)的SSL证书 2. 设置证书 -- 管理 -- 3. 需要制作证书申请CSR文件(在线工具制作或者openssl命令制作),保存CSR和key ...
- SSL 通信原理及Tomcat SSL 配置
SSL 通信原理及Tomcat SSL 双向配置 目录1 参考资料 .................................................................. ...
- nginx反向代理cas server之1:多个cas server负载均衡配置以及ssl配置
系统环境采用centOS7 由于cas server不支持session持久化方式的共享,所以请用其他方式代替,例如:组播复制. 为什么不支持session持久化:http://blog.csdn.n ...
- centos7邮件服务器SSL配置
在上篇文章centos7搭建postfix邮件服务器的搭建中我们没有配置SSL,接下来我们在这篇文章中讲讲centos7邮件服务器SSL配置. 1. 创建SSL证书 [root@www ~]# cd ...
- Sahi (2) —— https/SSL配置(102 Tutorial)
Sahi (2) -- https/SSL配置(102 Tutorial) jvm版本: 1.8.0_65 sahi版本: Sahi Pro 6.1.0 参考来源: Sahi官网 Sahi Quick ...
- Nginx SSL配置
一.SSL 原理 ① 客户端( 浏览器 )发送一个 https 请求给服务器② 服务器要有一套证书,其实就是公钥和私钥,这套证书可以自己生成,也可以向组织申请,服务器会把公钥传输给客户端③ 客户端收到 ...
- Tomcat服务器配置https协议(Tomcat HTTPS/SSL 配置)
通常商用服务器使用https协议需要申请SSL证书,证书都是收费的,价格有贵的有便宜的.它们的区别是发行证书的机构不同,贵的证书机构更权威,证书被浏览器否决的几率更小. 非商业版本可以通过keytoo ...
- Mosquitto 单向SSL配置
Mosquitto 单向SSL配置 摘自:https://blog.csdn.net/a_bcd_123/article/details/70167833 2017年04月14日 06:56:06 s ...
随机推荐
- Liunx常用的特殊环境变量
[weiqiang.liu@l~]$ sh variable xiaoqiang xiaoxuenumber:2scname:variablefirst:xiaoqiangsecond:xiaoxue ...
- poj 2230 Watchcow(欧拉回路)
关键是每条边必须走两遍,重复建边即可,因为确定了必然存在 Euler Circuit ,所以所有判断条件都不需要了. 注意:我是2500ms跑过的,鉴于这道题ac的code奇短,速度奇快,考虑解法应该 ...
- Linux编译安装Darwin Streaming Server 6.0.3。。。
目前主流的流媒体服务器有微软的windows media server.RealNetworks的Helixserver和苹果公司的Darwin Streaming Server. 微软的window ...
- 【转】话说我打算一天学完object c语法,系列1--------来自书Objective-c程序设计
原文网址:http://blog.csdn.net/zengraoli/article/details/8993466 类型: NSString NSInteger NSLong控制台输出 NSObj ...
- iOS 获取已连接的wifi信息
转:http://blog.csdn.net/marujunyy/article/details/16843173 首先需要 #import <SystemConfiguration/Cap ...
- C# chart,有关如何在鼠标移动到Series上时显示节点及数据 (有待继续更新)
一.效果与思路 效果: 解决方案1 用chart的mousemove时间,实时跟踪鼠标最近的X轴的位置,然后把cursorX设置到那个位置上,让用户知道我是选的那一个X的值,同时用tooltip显示该 ...
- PHP 调用外部程序的几种方式
/* php 调用python 的代码 // 第一种: // echo passthru('C:/Python34/PY.exe D:/do.py'); // 第二种: // echo exec('C ...
- 多校6 1001 HDU5793 A Boring Question (推公式 等比数列求和)
题解:http://bestcoder.hdu.edu.cn/blog/ 多校6 HDU5793 A Boring Question // #pragma comment(linker, " ...
- Tkinter教程之Label篇
本文转载自:http://blog.csdn.net/jcodeer/article/details/1811293 #Tkinter教程之Label篇'''1.Label的第一个例子text属性使用 ...
- 【转】VC6.0附带小工具软件一览
)ActiveX Control Test Container称为"ActiveX 控件测试容器",顾名思义,此工具的主要功能就是测试ActiveX 控件,可以通过改变Active ...