LINUX OPENSSL证书签发 1. 安装OPENSSL并确认openssl.cnf文件位置 1. $ yum install openssl 2. $ rpm -qa | grep openssl 3. $ rpm -ql openssl-* 2. 相关目录设定,用于存储证书, 临时性文件与私钥 1. $ mkdir /etc/ssl 2. $ mkdir /etc/ssl/private 3. $ chmod 700 /etc/ssl/private 4. $ mkdir /etc/ssl/crl 5. $ mkdir /etc/ssl/newcrt 3. SSL初始化配置,将默认配置文件转移到新的位置,进行修改,并导出OPENSSL所需环境变量 1. $ cp /usr/share/ssl/openssl.cnf /etc/ssl 2. $ ln -s /etc/ssl/openssl.cnf /usr/share/ssl/openssl.cnf 3. $ echo 'export OPENSSL_CONF="/etc/ssl/openssl.cnf"' >> ~/.bashrc 4. $ vi /etc/ssl/openssl.cnf ; 修改"dir = /etc/ssl" 4. 生成随机数 1. $ openssl rand -out /etc/ssl/private/.rand 1024 2. $ chmod 700 /etc/ssl/private/.rand 5. 生成RSA,CA私钥,CA私钥用于提供签发CA根证书,CA根证书需要提供给他人下载,使其可以使用此证书对其它证书,如WEB证书进行认证 1. $ openssl genrsa -des3 -out /etc/ssl/private/CA.key 2048 2. $ chmod 700 /etc/ssl/private/CA.key 2048 6. 填写CA证书申请文件(CSR) 1. $ openssl req -new -key /etc/ssl/private/CA.key -out /tmp/CA.rc 之后会弹出一些信息,按照提示进行输入即可,完成后会生成一个证书请求文件,这一步骤就相当于你在专业认证机构网页上输入你的相关信息,然后服务器会提供你一个(CSR)文件,之后你可以使用该文件签发证书,该文件只是一个中间文件,包含了你生成证书的相关内容 7. 签发CA,由于是根证书,所以没有上级证书,自己给自己签发 1. $ openssl x509 \ 2. -req -days 7310 \ 3. -sha1 -extfile /etc/ssl/openssl.conf \ 4. -extensions v3_ca \ 5. -signkey /etc/ssl/private/CA.key \ 6. -in /tmp/CA.rc \ 7. -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证书私钥 1. $ openssl genrsa -out /etc/ssl/private/www.key 2048 2. $ chmod 700 /etc/ssl/private/www.key ; 填写证书申请文件(CSR) ; 注意"COMMON NAME"为FQDN ; 附加挑战密码不要输入,否则每次启动服务器都要输入此密码 1. $ openssl req \ 2. -new -key /etc/ssl/private/www.key \ 3. -out /tmp/www.rc ; 签发WEB证书 1. $ openssl x509 \ 2. -req -days 3650 -sha1 \ 3. -extfile /etc/ssl/openssl.cnf \ 4. -extensions v3_req \ 5. -CA /etc/ssl/certs/CA.crt \ 6. -CAkey /etc/ssl/private/CA.key \ 7. -CAserial /etc/ssl/ca.srl -CAcreateserial \ 8. -in /tmp/www.rc \ 9. -out /etc/ssl/certs/www.crt 本文来源:https://www.wddqw.com/doc/68333def0975f46527d3e1af.html