Chinaunix首页 | 论坛 | 博客
  • 博客访问: 270118
  • 博文数量: 18
  • 博客积分: 787
  • 博客等级: 军士长
  • 技术积分: 235
  • 用 户 组: 普通用户
  • 注册时间: 2010-04-27 21:20
文章分类

全部博文(18)

文章存档

2015年(2)

2013年(2)

2012年(7)

2011年(1)

2010年(6)

分类: LINUX

2013-12-28 13:46:53

OpenSSL 证书生成主要有三步:

  1. 管理员生成“证书私钥‘,然后用私钥生成一份“证书请求文件“(.csr)
  2. 管理员将“证书请求文件“交给商业性CA签署,比如 Verisign 形成正式证书。
  3. 管理员在服务器上导入这个证书。


一、准备工作

根据 OpenSSL 默认配置文件,新建相应目录结构。当然你也可以修改配置文件[ca_default]部分,指定相应目录。

点击(此处)折叠或打开

  1. # sudo vim /usr/local/ssl/openssl.cnf #(选做,修改配置文件)
  2. # mkdir -p /usr/local/ssl/demoCA
  3. # cd /usr/local/ssl/demoCA
  4. # mkdir private crl certs newcerts
  5. # echo '01' > serial #在demoCA目录下新建serial文件并写入01。
  6. # touch index.txt #在demoCA目录下新建index.txt的空文件

二、CA 根证书

2.1、生成CA根证书私钥

生成 CA 根证书 RSA 私钥,openssl genrsa 支持 des3 参数

点击(此处)折叠或打开

  1. # openssl genrsa -out private/cakey.pem 1024 #生成CA认证中心 RSA 私钥

2.2、生成CA根证书

利用CA私钥,生成自签署的CA证书这一步很关键,也很容易出现问题。首先相应目录结构和文件一定要准备好,然后证书格式请选择pem而非crt,另外所在目录是demoCA。

点击(此处)折叠或打开

  1. # openssl req -new -x509 -key private/cakey.pem -out cacert.pem

特别注意!!

国家、省、组织名一定要填写不能为空,且记住你填写的值,其他的(包括Common Name)建议为空值。

Country Name (2 letter code) [AU]:(国家)
State or Province Name (full name) [Some-State]:(洲/省)
Locality Name (eg, city) []:(城/镇)
Organization Name (eg, company) [Internet Widgits Pty Ltd]:(组织名)
Organizational Unit Name (eg, section) []:(单位名)
Common Name (eg, YOUR name) []:(httpd-ssl.conf中的ServerName 名称)
Email Address []:(邮箱)

三、SSL 服务器证书

3.1、生成服务器证书私钥

点击(此处)折叠或打开

  1. # openssl genrsa -out private/server.key 1024

3.2、生成服务器证书请求文件

利已生成的服务器证书私钥,生成服务器证书请求csr文件

点击(此处)折叠或打开

  1. # openssl req -new -key private/server.key -out crl/server.csr

特别注意!!

1、国家、省要与上面CA证书一致,否则签署时必然要失败。

2、 Common Name 此时相当重要,请输入你需要SSL支持的域名,如 localhost(域名只能一个),否则浏览器提示证书错误。

3.3、签署服务器证书

点击(此处)折叠或打开

  1. # cd ..
  2. # openssl ca -in demoCA/crl/server.csr -out demoCA/certs/server.crt


转载自http://wangyan.org/blog/openssl-certificate-generation.html
 

阅读(2973) | 评论(0) | 转发(0) |
0

上一篇:KMP算法实现

下一篇:利用qemu调试linux内核

给主人留下些什么吧!~~