CentOS中使用Openssl自建CA认证与颁发证书
时间:2014-05-20 11:22 来源:linux.it.net.cn 作者:IT网
1、建立CA认证
#修改openssl.cnf文件
vi /etc/pki/tls/openssl.cnf
#修改[ CA_default ]下的dir = 设置为
dir = /etc/pki/CA
#转到CA目录
cd /etc/pki/CA
#生成私钥文件
mkdir private
openssl genrsa -out private/cakey.pem 1024
#设置400权限
chmod 400 private/cakey.pem
#基于这个私钥自行签署证书
openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3655
注意:证书只有放在/etc/pki/CA下才可以用
#创建需要使用的目录和文件
mkdir certs newcerts crl
touch index.txt serial
echo 01 > serial
#这些目录与文件的作用
certs 存放证书的位置
crl 存放证书调销列表
index.txt 存放都发给谁证书了,发了第几个了
newcerts 存放生成的新证书
serial 内部管理序列号,默认从00或01开始
这些文件的名字任意,但要与/etc/pki/tls/openssl.cnf中的配置保持一致
#将根证书转换成浏览器支持的.p12(PKCS12)格式
openssl pkcs12 -export -clcerts -in cacert.pem -inkey private/cakey.pem -out private/ca.p12
#生成后导入浏览器中受信任的证书颁发机构后重启浏览器,否则颁发的证书会提示证书不受信任。
完成以上设置后,现在就可以颁发证书了。
2、客户端申请证书
#建立存放私钥的目录
mkdir /etc/ssl
cd /etc/ssl
#生成私钥
openssl genrsa -out host.key 1024
chmod 600 host.key
#生成申请
openssl req -new -key host.key -out host.csr
#把host.csr发送到CA主机,直接拷贝过去也可以
scp host.csr ip:/tmp
#在CA主机上签署证书
#由于传送到了/tmp目录,所以先转到/tmp
cd /tmp
openssl ca -in host.csr -out /etc/pki/CA/newcerts/host.crt
#一路Yes即可
#客户端获取颁发的证书或直接拷贝过去
scp ip:/etc/pki/CA/newcerts/host.crt
至此设置全部完成,如果使用Nginx或lnmp/lnmpa一键包,可以参照CentOS Lnmp/Lnmpa 使用SSL安全协议第3部分进行配置。
3、吊销证书
#吊销证书命令
openssl ca -revoke xxx.pem
#生成吊销证书列表
openssl ca -gencrl -out xxx.crl
(责任编辑:IT)
1、建立CA认证 #修改openssl.cnf文件 vi /etc/pki/tls/openssl.cnf#修改[ CA_default ]下的dir = 设置为 dir = /etc/pki/CA#转到CA目录 cd /etc/pki/CA#生成私钥文件 mkdir private openssl genrsa -out private/cakey.pem 1024#设置400权限 chmod 400 private/cakey.pem#基于这个私钥自行签署证书 openssl req -new -x509 -key private/cakey.pem -out cacert.pem -days 3655注意:证书只有放在/etc/pki/CA下才可以用 #创建需要使用的目录和文件 mkdir certs newcerts crl touch index.txt serial echo 01 > serial#这些目录与文件的作用 certs 存放证书的位置 crl 存放证书调销列表 index.txt 存放都发给谁证书了,发了第几个了 newcerts 存放生成的新证书 serial 内部管理序列号,默认从00或01开始 这些文件的名字任意,但要与/etc/pki/tls/openssl.cnf中的配置保持一致#将根证书转换成浏览器支持的.p12(PKCS12)格式 openssl pkcs12 -export -clcerts -in cacert.pem -inkey private/cakey.pem -out private/ca.p12 #生成后导入浏览器中受信任的证书颁发机构后重启浏览器,否则颁发的证书会提示证书不受信任。完成以上设置后,现在就可以颁发证书了。 2、客户端申请证书 #建立存放私钥的目录 mkdir /etc/ssl cd /etc/ssl#生成私钥 openssl genrsa -out host.key 1024 chmod 600 host.key#生成申请 openssl req -new -key host.key -out host.csr#把host.csr发送到CA主机,直接拷贝过去也可以 scp host.csr ip:/tmp#在CA主机上签署证书 #由于传送到了/tmp目录,所以先转到/tmp cd /tmp openssl ca -in host.csr -out /etc/pki/CA/newcerts/host.crt #一路Yes即可#客户端获取颁发的证书或直接拷贝过去 scp ip:/etc/pki/CA/newcerts/host.crt 至此设置全部完成,如果使用Nginx或lnmp/lnmpa一键包,可以参照CentOS Lnmp/Lnmpa 使用SSL安全协议第3部分进行配置。 3、吊销证书 #吊销证书命令 openssl ca -revoke xxx.pem#生成吊销证书列表 openssl ca -gencrl -out xxx.crl(责任编辑:IT) |