OpenSSL

CentOS下默认的配置文件:

/etc/pki/tls/openssl.cnf

OpenSSL官方的文档不详细,一下内容参考了wisc.edu上的一个网页

创建CA私钥:

openssl genpkey -algorithm rsa -out root-ca.key

创建自签名的CA公钥:

openssl req -new -x509 -days 3650 -key root-ca.key -out root-ca.crt -config openssl.cnf

查看CA证书:

openssl x509 -noout -text -in root-ca.crt

生成一个用户私钥和签名请求:

openssl req -newkey rsa:1024 -keyout zmiller.key -config openssl.cnf -out zmiller.req

用CA签名:

openssl ca -config openssl.cnf -out zmiller.crt -infiles zmiller.req

这一步需要openssl.cnf里面的设置,要设置好才能成功。index.txt文件可以创建一个空的,serial文件空的不行,可以创建一个内容为01的文件。

OpenVPN里面带的EasyRSA脚本用来进行PKI管理不错,要比直接用OpenSSL简单。