SSL HTTPS 一、生成服务器私钥、公钥 $ openssl genrsa -out server.key 2048 $ openssl rsa -in server.key -pubout -out server.pem 二、生成CA证书,步骤是 (1)生成私钥 (2)生成X.509 Certificate Signing Request(CSR), 此步骤需要输入国家、省份、城市、 组织公司名(注意不要CA的名称不要与后面签发给服务器和客户端名字相同)、 部门(可空)、 Common Name(填写域名,比如localhost)、 Email地址(可空)、 A challenge password(空)、 An optional company name(空) (3)生成X509 Certificate Data Managent(CRT) $ openssl genrsa -out ca.key 2048 $ openssl req -new -key ca.key -out ca.csr $ openssl x509 -req -in ca.csr -signkey ca.key -out ca.crt (注:V3版本请用后面的替换) 三、生成服务器证书(通过CA签名) $ openssl req -new -key server.key -out server.csr $ openssl x509 -req -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt (注:V3版本请用后面的替换) 四、其他 (1)如果genras带-des3参数,将要求输入密码。 (2)合并证书和私钥的pem $ cat server.crt server.key > server_.pem (3)在x509 req命令中加入-days 7310可以将证书设置为20年,例子: 将CA设置为20年,服务器证书设置为10年 $ openssl x509 -req -days 7310 -in ca.csr -signkey ca.key -out ca.crt $ openssl x509 -req -days 3650 -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt (4)创建版本V3的证书 $ vim v3ca.ext basicConstraints=CA:TRUE authorityKeyIdentifier=keyid, issuer keyUsage = critical, cRLSign, digitalSignature, keyCertSign $ vim v3.ext basicConstraints=CA:FALSE authorityKeyIdentifier=keyid, issuer keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment $ openssl x509 -req -days 7310 -sha1 -extfile v3ca.ext -in ca.csr -signkey ca.key -out ca.crt $ openssl x509 -req -days 3650 -sha1 -extfile v3.ext -CA ca.crt -CAkey ca.key -CAcreateserial -in server.csr -out server.crt
时间: 2024-11-08 06:51:07