背景: 因为局域网内架设了 tiddlywiki、 Nextcloud 等服务,同时也把公司的网站架设在了本地,为了实现局域网直接在局域网内访问,而外部访问通过frps服务器作为反向代理的目的,才有此内容。 实现的效果如下图琐事
不喜欢废话,这里直接贴代码,有需要的更改关键信息的内容即可。
1. vps需要安装nginx和frp
nginx的安装教程比较多,这里不详细介绍, frps 服务的安装通过gofrp.org 自行学习即可,也可参考我之前的几篇文章:
frp透传软件最新toml格式的配置文件的使用_frp toml-CSDN博客
使用frp0.61.0透传局域网的https服务到自有域名_frp 0.61-CSDN博客
2. 命令行操作
2.1 安装nginx
2.2 安装frps,编写配置内容
2.3启用systemd服务管理frps
让frps 服务开机自启动
1.局域网服务器也要安装nginx
2. 假设我们搭建了tiddlywiki服务,并使用34580端口提供服务
相关的安装可参考我的文章:
Debian12中搭建TiddlyWiki服务并进行配置-CSDN博客
相较链接中的内容,我们这次不直接为tiddlywiki 开启ssl,而是通过nginx来通过自有签名来进行加密,提供https服务。
关于自签名证书,可以参考我的文章:
创建包含可导入浏览器信任的SSL自签名证书_浏览器信任证书-CSDN博客
3. tiddlywiki 的 systemd配置文件
4. frpc服务的配置
1. 自签名证书
为了更清晰的体现效果,我们构建来两套自签名证书,webA在VPS中使用,webB在局域网中使用; 位置都在各自的 /home/SSL/ 目录中。
2.VPS中nginx的配置
3.局域网Server中nginx的配置
要想局域网内的pc直接在局域网内通过域名访问wiki服务,而不用通过公网再绕回来,就需要有局域网DNS服务器将 wiki.frpshost.com指向 192.168.10.250; 或者更直接的办法,修改windows11等操作系统上的host文件,添加一行内容即可。
C:WindowsSystem32driversetchosts
192.168.10.250 wiki.frpshost.com
当然,要先为host文件设定用户权限,然后才可以编辑。 相关教程用搜索引擎搜索即可
如果局域网Server上有多种服务,则需要在frpc.toml 中,为每一个服务指定转发端口和二级域名; 同时,VPS上也最好为每一个服务单独建一个nginx配置文档,便于管理。
还可以用crtrobt申请正式的SSL证书。
openclaw docker 教程
经过这一系列操作,无论是公网访问wiki.frpshost.com还是在局域网内访问,都会自动转换为https,且两种环境下所采用的SSL证书是不同的,可以点击查看证书内容
发布者:Ai探索者,转载请注明出处:https://javaforall.net/283799.html原文链接:https://javaforall.net
