LINUX-OPENSSL证书签发

来源:未知 责任编辑:责任编辑 发表时间:2014-01-26 22:00 点击:

======================
* OPENSSL
======================
1. 安装OPENSSL并确认openssl.cnf文件位置
$ yum install openssl
$ rpm -qa | grep openssl
$ rpm -ql openssl-*
2. 相关目录设定,用于存储证书, 临时性文件与私钥
$ mkdir /etc/ssl
$ mkdir /etc/ssl/private
$ chmod 700 /etc/ssl/private
$ mkdir /etc/ssl/crl
$ mkdir /etc/ssl/newcrt
3. SSL初始化配置,将默认配置文件转移到新的位置,进行修改,并导出OPENSSL所需环境变量
$ cp /usr/share/ssl/openssl.cnf /etc/ssl
$ ln -s /etc/ssl/openssl.cnf /usr/share/ssl/openssl.cnf
$ echo 'export OPENSSL_CONF="/etc/ssl/openssl.cnf"' >> ~/.bashrc
$ vi /etc/ssl/openssl.cnf
; 修改"dir = /etc/ssl"
4. 生成随机数
$ openssl rand -out /etc/ssl/private/.rand 1024
$ chmod 700 /etc/ssl/private/.rand
5. 生成RSA,CA私钥,CA私钥用于提供签发CA根证书,CA根证书需要提供给他人下载,使其可以使用此证书对其它证书,如WEB证书进行认证
$ openssl genrsa -des3 -out /etc/ssl/private/CA.key 2048
$ chmod 700 /etc/ssl/private/CA.key 2048
6. 填写CA证书申请文件(CSR)
$ openssl req -new -key /etc/ssl/private/CA.key -out /tmp/CA.rc
之后会弹出一些信息,按照提示进行输入即可,完成后会生成一个证书请求文件,这一步骤就相当于你在专业认证机构网页上输入你的相关信息,然后服务器会提供你一个(CSR)文件,之后你可以使用该文件签发证书,该文件只是一个中间文件,包含了你生成证书的相关内容
7. 签发CA,由于是根证书,所以没有上级证书,自己给自己签发
$ openssl x509 \
  -req -days 7310 \
  -sha1 -extfile /etc/ssl/openssl.conf \
  -extensions v3_ca \
  -signkey /etc/ssl/private/CA.key \
  -in /tmp/CA.rc \
  -out /etc/ssl/certs/CA.crt
解释
; 过期时间20年
; 配置文件/etc/ssl/openssl.conf
; 格式为v3_ca证书
; 签名密钥/etc/ssl/private/CA.key
; 证书申请文件/tmp/CA.rc
; CA证书/etc/ssl/certs/CA.crt

8. 签发WEB证书
; 签发WEB证书私钥
$ openssl genrsa -out /etc/ssl/private/www.key 2048
$ chmod 700 /etc/ssl/private/www.key
; 填写证书申请文件(CSR)
; 注意"COMMON NAME"为FQDN
; 附加挑战密码不要输入,否则每次启动服务器都要输入此密码
 
$ openssl req \
  -new -key /etc/ssl/private/www.key \
  -out /tmp/www.rc
; 签发WEB证书
$ openssl x509 \
  -req -days 3650 -sha1 \
  -extfile /etc/ssl/openssl.cnf \
  -extensions v3_req \
  -CA /etc/ssl/certs/CA.crt \
  -CAkey /etc/ssl/private/CA.key \
  -CAserial /etc/ssl/ca.srl -CAcreateserial \
  -in /tmp/www.rc \
  -out /etc/ssl/certs/www.crt
解释
; 动作: 请求证书,过期时间10年,摘要算法为SHA1
; 配置文件/etc/ssl/openssl.cnf
; 使用CA根证书/etc/ssl/certs/CA.crt进行签名
; CA私钥文件为: CA.key
; 创建并使用CA序列号文件ca.srl
; 证书请求文件为www.rc证书输出为www.crt

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • /etc/fstab 详解
  • nginx主主集群
  •  LVS-NAT和LVS-DR模式的实现详解
  •  RHCE考试之磁盘配额
  • 学习笔记:ACL详解
  •  LVM逻辑卷管理器
  • suse linux双网卡双网关配置
  •  Nginx主主负载均衡架构
  • ubuntu学习Mysql

快速直达

操作系统导航

LinuxWindows虚拟机
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1