制作ssl证书
下载mkcert
下载链接:https://github.com/FiloSottile/mkcert/releases
安装mkcert(windows为例),生成CA证书
下载完成后,在下载目录打开命令行,输入 mkcert -install 安装 CA证书
生成自签证书
mkcert 192.168.2.64 或者 mkcert example.com 生成自签证书
给客户端安装CA证书的公钥
mkcert -CAROOT 可以查看CA证书的位置
rootCA.pem改名为rootCA.crt 然后安装(改名若想继续生成自签证书,需要将名字改回去)、
安装证书目录需要选择证书存储,然后选“受信任的根证书颁发机构”
nginx 配置反向代理
安装nginx
apt-get install nginx
新建配置文件
cd /etc/nginx/site-available
touch example.com
vim example.com
#SSL 默认访问端口号为 443
listen 443 ssl;
#请填写绑定证书的域名
server_name example.com;
#请填写证书文件的相对路径或绝对路径
ssl_certificate /ssl/server.cer;
#请填写私钥文件的相对路径或绝对路径
ssl_certificate_key /ssl/server.key;
ssl_session_timeout 5m;
#请按照以下套件配置,配置加密套件,写法遵循 openssl 标准。
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
#请按照以下协议配置
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
location / {
#网站主页路径。此路径仅供参考,具体请您按照实际目录操作。
#例如,您的网站主页在 Nginx 服务器的 /etc/www 目录下,则请修改 root 后面的 html 为 /etc/www。
proxy_pass http://localhost:5052; # 或者容器内部的相应端口
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
#root html;
#index index.html index.htm;
}
}
ssl_certificate ssl_certificate_key 是自签证书的路径
proxy_pass 是服务启动的路径
错误提示:
nginx: [alert] could not open error log file: open() "/var/log/nginx/error.log" failed (13: Permission denied)2:
# 运行
sudo chown -R www-data:www-data /var/log/nginx
sudo chmod 755 /var/log/nginx
2024/10/26 16:26:07 [emerg] 36705#36705: open() "/run/nginx.pid" failed (13: Permission denied)
# 运行
sudo chown www-data:www-data /run/nginx.pid
标签:www,ssl,证书,局域网,nginx,mkcert,proxy,https
From: https://www.cnblogs.com/xingyu-q/p/18508629