Openssl管理证书

简单记录下openssl的使用示例,以备忘。

CA证书生成

生成CA的私有密钥

# openssl genrsa --out /etc/pki/ca/private/cakey.pem 2048

生成CA自身的证书

# openssl req -new -x509 -key /etc/pki/ca/private/cakey.pem -out /etc/pki/ca/cacert.pem

参数说明: -x509:生成x.509格式的证书 -new:生成一个新的证书 -key:新的证书所对应的私有密钥 -out:输出证书

至此为止是CA的建设。只需要在其他系统中导入这个自建的CA证书,那些由该CA签名的证书将被信任。

下面部分则为应用创建证书并签名


为应用或用户创建证书并签名

生成应用的私有密钥

# openssl genrsa -out /tmp/nginx_key.pem 2048

为应用生成证书签名请求

# openssl req -new -key /tmp/nginx_key.pem -out /tmp/nginx_cert.crt

生成的nginx_cert.crt即为证书签名请求,需要把这个文件交给CA进行签名


在CA中为证书签名

# openssl x509 -req -in /tmp/nginx_cert.crt -out /etc/pki/ca/newcert/nginx_cert.crt -CAkey /etc/pki/ca/private/cakey.pem -CA /etc/pki/ca/cacert.pem -CAcreateserial

参考基于OpenSSL自建CA和颁发SSL证书