我是在Linux下操作的,用的是Fedora系统,
1. 先:
yum -y install openssl在网上找了很多资料,都不太对,要么生成的不能正常做为Https服务,要么生成的过程就有问题
这里写的是自己的经验:
2. CA.* 是证书颁发机构的CA,先生成CA.*, 再用CA相关文件生成server.* 这个很重要!
3. 要在浏览器中把CA.crt导入“受信任的根证书颁发机构”
4. 生成根证书CA(<国家>。。。<域名>需要替换成自己的)
openssl req -new -newkey rsa:2048 -nodes -out CA.csr -keyout CA.key -subj "/C=<国家>/ST=<省>/L=<城市>/O=<组织>/OU=<部门>/CN=<域名>"
openssl req -new -x509 -key CA.key -out CA.crt -subj "/C=<国家>/ST=<省>/L=<城市>/O=<组织>/OU=<部门>/CN=<域名>"
5. 用根证收签发,生成站点证书(<国家>。。。<域名>需要替换成自己的)
openssl req -new -newkey rsa:2048 -nodes -out server.csr -keyout server.key -subj "/C=<国家>/ST=<省>/L=<城市>/O=<组织>/OU=<部门>/CN=<域名>"
openssl ca -in server.csr -out server.crt -cert CA.crt -keyfile CA.key
6. 碰到错误:
I am unable to access the ./demoCA/newcerts directory
./demoCA/newcerts: No such file or directory
运行下脚本
mkdir demoCA
mkdir demoCA/newcerts
mkdir demoCA/private
touch demoCA/index.txt
echo "01" >> demoCA/serial
另外说一下,Mono下,用HttpClient连Https,或SmtpClient发Gmail时,会报错,解决办法为:
在Linux下执行
mozroots --import --ask-remove --machine
certmgr -ssl -m smtps://smtp.gmail.com:465
certmgr -ssl -m https://www.google.com或者你知道HTTPS网站,直接:
certmgr -ssl -m https://<host/domain>
本文详细介绍在Fedora系统上生成自签名HTTPS证书的过程。包括安装openssl、创建证书颁发机构(CA)及其证书、生成站点证书等步骤。此外还提供了解决过程中遇到的常见错误的方法。
1257

被折叠的 条评论
为什么被折叠?



