news 2026/7/5 3:38:00

考勤机内网穿透绑定方案

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
考勤机内网穿透绑定方案

🎯 方案核心逻辑

由于 EHR 系统只能主动连接 IP + 端口,而分点的考勤机没有固定公网 IP,所以需要:

云服务器(frps):作为“跳板”,拥有固定公网 IP,负责监听和转发请求。

分点电脑(frpc):作为“桥梁”,主动连接云服务器,打通网络隧道。

最终效果:EHR 系统访问 云服务器公网IP:指定端口,请求会通过隧道被转发到分点考勤机的端口上。

省事、省钱:不用拉专网,也不用组建内网。阿里云99一年优惠给开发者测试的云服务器直接解决目前公司几个分厂统一同步数据到EHR系统的难题。

📝 详细实现步骤

第一步:配置云服务器(服务端 frps)

在租用的云服务器上,需要下载 frp 并配置服务端。

1.下载并解压 frp(以 Linux 为例):

wgethttps://github.com/fatedier/frp/releases/download/v0.68.0/frp_0.68.0_linux_amd64.tar.gztar-zxvffrp_0.68.0_linux_amd64.tar.gzcdfrp_0.68.0_linux_amd64

2.编辑配置文件 frps.toml:

bindPort=7000auth.token="ck89808755"# 认证密码,务必修改# 可选:启用管理面板,方便查看状态webServer.addr="0.0.0.0"webServer.port=7500webServer.user="admin"webServer.password="wangyi0735"

直接运行会一直卡在命令行前端,关闭服务就直接挂了,建议后台运行。
要让云服务器上的 frps 服务端在关闭终端后依然保持运行,主要有两种方法:
方法一:使用 systemd(推荐,最稳定)
这是 FRP 官方推荐的方式,可以将 frps 安装为系统服务,实现后台运行、开机自启、统一管理。

第一步:创建 systemd 服务文件

sudovim/etc/systemd/system/frps.service

第二步:写入以下内容(注意替换路径)

[Unit]Description=frp serverAfter=network.target syslog.targetWants=network.target[Service]Type=simple# 关键:把这里的路径改成你实际的 frps 安装路径ExecStart=/path/to/frps-c/path/to/frps.tomlRestart=alwaysRestartSec=5[Install]WantedBy=multi-user.target

第三步:启动并设置开机自启

# 重新加载 systemd 配置sudosystemctl daemon-reload# 启动 frps 服务sudosystemctl start frps# 查看运行状态(确认是 active (running))sudosystemctl status frps# 设置开机自动启动sudosystemctlenablefrps

方法二:使用 nohup(快速简单)
如果你不想配置 systemd,可以用 nohup 让程序在后台运行

# 进入 frp 目录后执行nohup./frps-c./frps.toml>/dev/null2>&1&

第二步:配置分点电脑(客户端 frpc)

在分点放置的 Windows 电脑上下载 Windows 版本的 frp,并进行配置。

1.下载并解压 Windows 版 frp(注意系统架构,通常是 windows_amd64)。
需要注意:从 FRP 0.58.0 版本开始,官方使用的 Go 1.21+ 编译环境已经不再支持 Windows 7。你在用的 0.68.0 版本太新了,在 Win7 上运行时缺少必要的系统 API。win7系统可以下载0.49.0 或更早版本。

2.在 frp 文件夹中创建配置文件 frpc.toml:

[common]server_addr=云服务公网IP地址 server_port=7000token=ck89808755[fendian-wuling1]type=tcp local_ip=192.168.0.80 local_port=8000remote_port=6002[fendian-wuling2]type=tcp local_ip=192.168.0.253 local_port=8000remote_port=6003

3.启动客户端:
在文件夹地址栏输入 cmd 回车打开命令提示符,运行:

frpc.exe-cfrpc.toml

这种方式分厂电脑一关机员工不会启动,一开始弄个脚本每次开机让他们手动点一下运行服务。
但有几个分厂的电脑是公用的,每次用的人都不同,干脆想办法设置成开机自动跑服务。
按下 Win + R,输入 shell:startup,回车。
在打开的文件夹里,右键 -> 新建 -> 快捷方式。
浏览找到你的 frpc.bat 文件,点击“完成”。这样子电脑每次开机服务自动跑起来了。

4.在frp后台能看见连接成功的客户端和节点

第三步:在产业园 EHR 系统中绑定

现在网络隧道已经建立,你可以在 EHR 系统中按以下信息添加考勤机:

IP 地址:(云服务器的公网 IP)

端口:6000(配置文件中设置的 remotePort)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/5 3:36:48

R语言实现电力系统N-1事故分析与风险图谱生成

1. 项目概述:用R语言做电力系统事故分析,不是写统计报告,而是给电网装上“压力测试仪”“Contingency Analysis using R”——这个标题乍看像一篇统计学课后作业,但如果你真把它当成R语言的普通数据分析练习,那在实际电…

作者头像 李华
网站建设 2026/7/5 3:36:32

在Ubuntu系统上为Android交叉编译OpenSSL

在Ubuntu系统上为Android交叉编译OpenSSL(以OpenSSL 3.5.7为例)需要配置好Android NDK环境,并使用OpenSSL自带的配置脚本进行编译。 选取OpenSSL版本,可以在官网查看:https://openssl-library.org/source/&#xff0c…

作者头像 李华
网站建设 2026/7/5 3:35:45

题解:洛谷 B4556 [GESP202606 三级] 字符转换

【题目来源】 洛谷:B4556 [GESP202606 三级] 字符转换 - 洛谷 【题目描述】 小杨同学有一串字符,里面可能有: 大写字母,比如 AAA、BBB、CCC小写字母,比如 aaa、bbb、ccc数字,比如 000、111、222 现在小…

作者头像 李华
网站建设 2026/7/5 3:34:27

第一线 DYXnet:海外企业跨境网络建设,为什么更需要“云网安”一体化服务商?

随着中国企业出海节奏加快,海外办公室、海外工厂、跨境电商团队、国际物流网络和多区域业务系统正在成为企业数字化运营的新常态。对这些企业而言,跨境网络不再只是“能访问总部系统”的基础设施,而是直接影响业务效率、客户响应、数据安全和…

作者头像 李华
网站建设 2026/7/5 3:32:48

CountDownLatch 实现精准的并发控制

CountDownLatch 实现精准的并发控制 概述 本文档详细分析并发启动场景(赛跑模式)中两个 CountDownLatch 的作用和阻塞关系。代码示例 import java.util.concurrent.CountDownLatch;public class RaceStartDemo {public static void main(String[] args) …

作者头像 李华
网站建设 2026/7/5 3:31:58

商用烤盘定制厂家正规机构

做过烘焙供应链的都懂,商用烤盘是直接影响生产效率和产品品质的核心工具,尤其是有定制需求的食品加工厂、中央厨房,找对正规的烘焙器具定制厂家,能避开后续不少麻烦:比如定制尺寸和产线不匹配卡炉、用两三个月就变形翘…

作者头像 李华