制作https私有证书 —https证书
1 参考
参考1:linux下使用openssl生成https的crt和key证书
直接在linux下执行即可。
2 openssl制作证书
- 生成私有证书密钥
openssl genrsa -out server.key 2048
- 生成证书请求文件
openssl req -new -x509 -key server.key -out ca.crt -days 3650 \
-subj '/c=cn/st=zhejiang/l=hangzhou/o=haha/ou=haha/cn=192.168.3.220/emailaddress=xxx@qq.com'
- -x509:输出自签名证书而不是证书请求文件。
- -subj arg:指定证书dn信息。
示例:
-subj '/c=cn/st=zhejiang/l=hangzhou/o=haha/ou=haha/cn=192.168.3.220/emailaddress=电子邮箱'
解释:
这个subject参数指定了证书的dn(distinguished name)信息。dn包含证书主体的身份信息,格式为一系列键值对,使用/分隔。每个键值对使用=号连接。这个subject参数包含的键值对有:- /c=cn:国家名称是cn(china)
- /st=zhejiang:省份是zhejiang
- /l=hangzhou:城市是hangzhou
- /o=haha:组织名称是haha
- /ou=haha:组织单元名称也是haha
- /cn=192.168.3.220:公共名称(common name)是192.168.3.220
- /emailaddress=hh@qq.com:电子邮箱是hh@qq.com证书的dn信息遵循x.500标准。常用的dn字段及其含义有:- c:国家(country)
- st:省/市/自治区(state/province)
- l:地点(locality)
- o:组织(organization)
- ou:组织单元(organization unit)
- cn:公共名称(common name),主机名或网站
- emailaddress:电子邮箱地址证书的dn字段内容并不影响证书的功能,但具有重要的识别作用。真实的dn信息可以帮助用户判断证书的可信度。
- 生成证书签名请求文件(csr)
openssl req -new -key server.key -out server.csr \
-subj '/c=cn/st=zhejiang/l=hangzhou/o=haha/ou=haha/cn=192.168.3.220/emailaddress=xxx@qq.com'
- 使用自签名ca证书签发ssl证书
openssl x509 -req -days 3650 -in server.csr -ca ca.crt -cakey server.key -cacreateserial -out server.crt
根据以上操作最后生成的文件:
3 证书的使用
使用时只需要配置server.crt
和server.key
即可。
发表评论