Linxu环境下如何使用Openssl搭建CA中心签发证书
2015-07-02 15:01
661 查看
Linxu环境下如何使用Openssl搭建CA中心签发证书
openssl rand -out private/.rand 1000
rand 随机数命令。这里将随机数文件输出到private目录下。
-out 输出文件路径,
语法
openssl genrsa[-out filename] [-passout arg] [-des] [-des3][-idea] [-f4] [-3] [-rand file(s)] [-engine id] [numbits]
一般使用
openssl genrsa -out ./CAcert/ca.cert.key -rand private/.rnd1024
-new:这个选项用于生成一个新的证书请求,并提示用户输入个人信息。如果没有指定-key则会先生成一个私钥文件,再生成证书请求
没有指定-key选项时,会生成私钥文件,默认是有密码保护的,-nodes(no des),可以明确指定不需要密码保护。-keyout可以指定生成的私钥文件名,-pubout可以指定生成的公钥文件名
-subj:替换或指定证书申请者的个人信息
格式是:/type0=value0/type1=value1/type2=...(其中C是Country,ST是state,L是local,O是Organization,OU是OrganizationUnit,CN是commonname)
req 产生证书签发申请命令
-new 表示新请求
-key 密钥,这里为private/ca.key.pem文件
-out 输出路径,这里为private/ca.csr文件
-subj 指定用户信息。这里使用泛域名"*.lesaas.cn"
得到根证书签发申请文件后,我们可以将其发生给CA机构签发,当然我们也可以自行签发根证书。
x509 签发X.509格式证书命令。
-req 表示证书输入请求。
-days 表示有效天数,这里为10000天。
-shal 表示证书摘要算法,这里为SHA1算法。
-extensions 表示按OpenSSL配置文件v3_ca项添加扩展。
-signkey 表示自签名密钥,这里为private/ca.key.pem。
-in 表示输入文件,这里为private/ca.csr。
-out 表示输出文件,这里为certs/ca.cer。
-x509: req 命令也可以调用x509命令,以进行格式转换及显示证书文件中的text,modulus等信息
openssl x509 -req -in$CLIENT_CERT_DIR/$CLIENT_CERT_NAME$CLIENT_CERT_START$CLIENT_CERT_CSR \
-out$CLIENT_CERT_DIR/$CLIENT_CERT_NAME$CLIENT_CERT_START$CLIENT_CERT_FILE \
-signkey$CLIENT_CERT_DIR/$CLIENT_CERT_NAME$CLIENT_CERT_START$CLIENT_KEY_FILE \
-CA CAcert/ca.cert.der -CAkey CAcert/ca.cert.key -days$CLIENT_CERT_DAYS -CAserial serial
0:构建随机数
构建根证书前,需要构建随机数文件(.rand),完整命令如openssl rand -out private/.rand 1000
rand 随机数命令。这里将随机数文件输出到private目录下。
-out 输出文件路径,
1:生成CA签发根证书:
1.1:构建CA根证书私钥
openssl genrsa 用于生成rsa私钥文件,生成是可以指定私钥长度和密码保护。语法
openssl genrsa[-out filename] [-passout arg] [-des] [-des3][-idea] [-f4] [-3] [-rand file(s)] [-engine id] [numbits]
一般使用
openssl genrsa -out ./CAcert/ca.cert.key -rand private/.rnd1024
1.2:生成CA根证书签发申请:
openssl req -new -key./CAcert/ca.cert.key -out ./CAcert/ca.cert.csr -config openssl.cnf -subj"/C=CN/ST=BJ/L=BJ/O=rss/OU=rss/CN=*.rss.cn"-new:这个选项用于生成一个新的证书请求,并提示用户输入个人信息。如果没有指定-key则会先生成一个私钥文件,再生成证书请求
没有指定-key选项时,会生成私钥文件,默认是有密码保护的,-nodes(no des),可以明确指定不需要密码保护。-keyout可以指定生成的私钥文件名,-pubout可以指定生成的公钥文件名
-subj:替换或指定证书申请者的个人信息
格式是:/type0=value0/type1=value1/type2=...(其中C是Country,ST是state,L是local,O是Organization,OU是OrganizationUnit,CN是commonname)
req 产生证书签发申请命令
-new 表示新请求
-key 密钥,这里为private/ca.key.pem文件
-out 输出路径,这里为private/ca.csr文件
-subj 指定用户信息。这里使用泛域名"*.lesaas.cn"
得到根证书签发申请文件后,我们可以将其发生给CA机构签发,当然我们也可以自行签发根证书。
1.3:签发CA根证书(公钥)
openssl x509 -req -days 10000 -sha1 -extensions v3_ca-signkey ./CAcert/ca.cert.key -in ./CAcert/ca.cert.csr -out ./CAcert/ca.cerx509 签发X.509格式证书命令。
-req 表示证书输入请求。
-days 表示有效天数,这里为10000天。
-shal 表示证书摘要算法,这里为SHA1算法。
-extensions 表示按OpenSSL配置文件v3_ca项添加扩展。
-signkey 表示自签名密钥,这里为private/ca.key.pem。
-in 表示输入文件,这里为private/ca.csr。
-out 表示输出文件,这里为certs/ca.cer。
-x509: req 命令也可以调用x509命令,以进行格式转换及显示证书文件中的text,modulus等信息
2:为客户端申请证书
2.1:生成客户端证书私钥
openssl genrsa -out ./certs/repro1.cert.key 10242.2: 生成客户端证书签发申请
openssl req -new -out ./certs/repro1.csr -key./certs/repro1.cert.key -subj "/C=CN/ST=BJ/L=BJ/O=repro1/OU=repro1/CN=repro1.rss.cn"2.3: 签发客户端证书
openssl x509 -req -days 3650 -sha1 -extensions v3_req -CA./CAcert/ca.cer -CAkey ./CAcert/ca.cert.key -CAserial ca.srl -CAcreateserial-in ./certs/repro1.csr -out ./certs/repro1.ceropenssl x509 -req -in$CLIENT_CERT_DIR/$CLIENT_CERT_NAME$CLIENT_CERT_START$CLIENT_CERT_CSR \
-out$CLIENT_CERT_DIR/$CLIENT_CERT_NAME$CLIENT_CERT_START$CLIENT_CERT_FILE \
-signkey$CLIENT_CERT_DIR/$CLIENT_CERT_NAME$CLIENT_CERT_START$CLIENT_KEY_FILE \
-CA CAcert/ca.cert.der -CAkey CAcert/ca.cert.key -days$CLIENT_CERT_DAYS -CAserial serial
相关文章推荐
- Tomcat——2 字节的 UTF-8 序列的字节 2 无效
- linux find
- Nginx反向代理Tomcat
- linux在s3c2440上的移植(二)
- Repro学习 之 Resiprocate+repro环境搭建(CentOS)by FloraYao
- 使用本地JConsole监控远程JVM (转)
- Apache ServiceMix应用之深入Apache Camel
- Apache ServiceMix 初探
- error: 'LOGE' was not declared in this scope
- Linux 分区初始化为物理卷,把物理卷加入卷组
- Nagios 监控Nginx和php-fpm
- opengl中的混合(gl_blend)
- linux mount挂载设备(u盘,光盘,iso等 )使用说明
- ZOJ3827 ACM-ICPC 2014 亚洲区域赛的比赛现场牡丹江I称号 Information Entropy 水的问题
- php 5.6.10V11 apache 2.4.12 V14配置
- Linux磁盘相关和MBR
- linux根据部署jenkins
- (最新版)百度地图§覆盖物OverlayOptions
- 从linux主目录中的makefile文件分析编译构成。。。
- Android 资料网站