第一步,自制CA证书和Server证书,私钥
自制CA私钥
openssl genrsa -des3 -out ca.key 4096
自制CA证书
openssl req -new -x509 -days 3650 -key ca.key -out ca.crt
自制Server私钥,生成免密码版本
openssl genrsa -des3 -out server.key 4096
openssl rsa -in server.key -out server.nosecret.key
制作csr文件
openssl req -new -key server.key -out server.csr
用CA证书私钥对csr签名(CA不能用X509,这点需要注意)生成Server证书
openssl ca -days 3650 -in server.csr -cert ca.crt -keyfile ca.key -out server.crt
第二步,配置web服务器,nginx配置方法如下
server { listen 443; server_name www.mydomain.com; ssl on; ssl_certificate ssl/server.crt; ssl_certificate_key ssl/server.nosecret.key; location /t { echo "Hello World"; } }
lighttpd配置如下(需要cat server.nosecret.key server.crt > server.pem)
$HTTP["host"] =~ "(^.*\.|)mydomain.com" { $SERVER["socket"] == ":443" { ssl.engine = "enable" ssl.pemfile = "/etc/lighttpd/server.pem" ssl.ca-file = "/etc/lighttpd/server.crt" } proxy.balance = "round-robin" proxy.server = ( "/" => (( "host" => "127.0.0.1", "port" => 9000 )) ) }
第三步,验证方法如下
浏览器使用需导入ca.crt到根证书,curl和wget命令行工具使用方法如下
curl -v --cacert ca.crt "https://www.mydomain.com/t" wget --ca-certificate=ca.crt https://www.mydomain.com/t 不检查证书 curl需要指定-k参数,wget需要带参数-no-check-certificate
查看证书内容,有效期,用途方法如下
openssl x509 -in ca.crt -noout -text openssl x509 -in ca.crt -noout -dates openssl x509 -in ca.crt -noout -purpose
地址: 江苏省常州市
QQ: 79232781
联系人: DIS工作室
电话: 13585315012
邮箱: disstudio@yeah.net
Copyright ©2008-2025 DIS工作室 All Rights Reserved.地址: 江苏省常州市
联系人: DIS工作室  电话: 13585315012  QQ: 79232781  邮箱: disstudio@yeah.net