简介
主要是为了通信更加安全,地址栏有把帅气的小锁😜😜。
- frp:快速反向代理,帮助您向internet公开NAT或防火墙后面的本地服务器。
- NGINX:NGINX是一个免费的,开源的高性能HTTP服务器和反向代理,以及IMAP / POP3代理服务器。NGINX以其高性能,稳定性,丰富的功能集,简单的配置和低资源消耗而闻名。
就是实现内网穿透后给网站加个🔒。
思路🤔
工作思路,用户到外网服务器是走HTTPS,外网服务器到内网服务器是走HTTP,因为外网服务器到内网服务器没有暴露,所以安全性没什么问题。
配置代码
外网服务器端:
NGINX:80和443在同一个server
server{
listen 80;
listen 443 ssl http2;
server_name blog.xlxs.top;
location / {
proxy_pass http://127.0.0.1:7001;
proxy_set_header Host $host:80;
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;
}
ssl_certificate /etc/letsencrypt/live/blog.xlxs.top/fullchain.pem; # 这里四行由let's encrypt自动生成
ssl_certificate_key /etc/letsencrypt/live/blog.xlxs.top/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
}
FRP:
[common]
bind_port = 1234
vhost_http_port = 7001
subdomail_host = blog.xlxs.top
内网服务器端:
NGINX:
server {
listen 80;
server_name blog.xlxs.top;
location / {
proxy_pass http://127.0.0.1:8080;
}
}
FRP:(因为两个服务器不暴露,用http,https要有正确的crt和key,不然502)
[common]
server_addr = xxx.xxx.xxx.xxx
server_port = 1234
[http]
type = http
local_port = 80
custom_domains = blog.xlxs.top