生成本地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)

安装Choco


安装mkcert

cmd 安装:

choco install mkcert

安装成功后,应该可以使用 mkcert 命令了:

mkcert

将 CA 证书加入本地可信 CA

mkcert -install

将 CA 证书加入本地可信 CA

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"  

用jdk生成SSL证书

Tomcat 使用JDK生成的证书

前往Tomcat的conf目录修改service.xml(其中keystorePass为秘钥)

Tomcat 使用证书

PS:Tomcat的证书在浏览器会显示证书错误, 有红色警告,如有介意可使用Nginx配置SSL证书 然后进行反向代理

Last modification:June 3, 2024
如果觉得我的文章对你有用,您可以给博主买一杯果汁,谢谢!