下载
- 此文章针对window系统的用户
- 下载
http://slproweb.com/products/Win32OpenSSL.html
找到图中下载的位置,选择下载32位或64位的openssl
- 下载后,根据安装提示,进行安装
- 我安装的是64的opensll
- 首先打开安装的openssl的文件夹,找到bin,打开bin文件夹,找到openssl.exe,双击打开openssl.exe
- 这个时候,我们就可以去生成证书了
- 下面只写运行命令,其他过程省略
- http部署
openssl req -x509 -newkey rsa:2048 -nodes -sha256 -keyout localhost-privkey.pem -out localhost-cert.pem
// 生成localhost-cert.pem和localhost-privkey.pem
// 放在Nginx中的certs中
// 在自己项目的 .conf中配置
proxy_cache_path cache levels = 1:2 keys_zone=my_cache:10m
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name test.com;
return 302 https://$server_name$request_uri;
}
server {
listen 443
server_name test.com;
ssl on;
ssl_certificate_key ../certs/localhost-privkey.pem;
ssl_certificate ../certs/localhost-cert.pem
localhost / {
proxy_cache my_cache
proxy_pass http://127.0.0.1:8888;
proxy_set_Header Host $host;
}
}
- 制作并安装CA
genrsa -out ca.key 1024
req -new -key ca.key -out ca.csr // 如果只是调试,就一直空格
x509 -req -in ca.csr -signkey ca.key -days 36000 -out ca.crt
- 签发服务器证书
genrsa -out server.key 1024
req -new -key server.key -out server.csr//这里有个错误,退出重新启动openssl可以解决。
// problem creating object tsa_policy1=1.2.3.4.1
quit //重新打开openssl
req -new -key server.key -out server.csr
// 根据自己的项目来写
// Country Name (2 letter code) [AU]:CN
...
//OpenSSL>
x509 -req -CA ca.crt -CAkey ca.key -CAcreateserial -days 36000 -in server.csr -out server.crt
- 安装CA到受信任的机构
- 找到ca.crt,双击安装,安装到“受信任的根证书颁发机构”
- 也可以打开certmgr.msc查看安装结果。
- 把服务器证书记录到apache
- httpd.conf中以下注释放开:
- LoadModule ssl_module modules/mod_ssl.so
- Include conf/extra/httpd-ahssl.conf
- httpd-ahssl.conf中登记服务器证书
- SSLCertificateFile “${SRVROOT}/conf/server.crt”
- SSLCertificateKeyFile “${SRVROOT}/conf/server.key”
- 复制服务器证书到上述指定位置
- erver.crt
- server.key
- 重启apache服务,重启浏览器。
- 启动service.msc,重启服务。