生成本地CA证书
安装Choco
cmd 安装:
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
检查安装是否成功(ps:需要重新打开CMD)
choco -v
常用指令Commands
choco list -li 查看本地安装的软件
choco search nodejs 查找安装包
choco install sublimetext3 下载
choco uninstall sublimetext3 卸载
choco upgrade sublimetext3 更新(update)
安装mkcert
cmd 安装:
choco install mkcert
安装成功后,应该可以使用 mkcert 命令了:
mkcert
将 CA 证书加入本地可信 CA
mkcert -install
WIN+R>>>[certmgr.msc]>>>查看证书
certmgr.msc
生成自签证书(IP修改为自己的固定IP)
mkcert localhost 127.0.0.1 192.168.1.95 ::1
通过输出,我们可以看到成功生成了 localhost+3.pem 证书文件和 localhost+3-key.pem 私钥文件,只要在nginx上使用这两个文件就可以了。
Nginx 使用SSL证书
将localhost+3.pem 证书文件和 localhost+3-key.pem 私钥文件 COPY到conf目录
修改nginx.conf文件
#如果是纯静态项目可以这样配置
server {
listen 9666 ssl;
server_name localhost; #你的域名,需要将域名解析
charset utf-8;
ssl_certificate localhost+3.pem;
ssl_certificate_key localhost+3-key.pem;
location / {
root C:\********\xxxx-views; #项目路径
index index.html index.htm;
}
}
#如果Tomcat项目 可以使用反向代理
server {
listen 8443 ssl;
server_name localhost; #你的域名,需要将域名解析
charset utf-8;
ssl_certificate localhost+3.pem;
ssl_certificate_key localhost+3-key.pem;
location / {
proxy_pass http://localhost:8081; #核心关键的地方,将数据交给本地8081端口的后台去处理(类似于重定向)
}
}
重启Nginx
nginx -s stop
nginx
此时通过设置的端口号 即可访问项目https://localhost:**(地址栏为HTTPS)
JDK生成证书
用jdk生成本地SSL证书 cmd 键入以下内容 并根据提示键入内容
keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "c:\tomcat.keystore"
Tomcat 使用JDK生成的证书
前往Tomcat的conf目录修改service.xml(其中keystorePass为秘钥)
PS:Tomcat的证书在浏览器会显示证书错误, 有红色警告,如有介意可使用Nginx配置SSL证书 然后进行反向代理
5 comments
有参考价值,谢谢
想想你的文章写的特别好
👍️
大哥牛批(´இ皿இ`)
大哥牛比