GitHub - fatedier/frp: A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.

服务端需要部署在一台能在公网访问的机器上

服务端

以服务端IP地址47.10.13.3为例

配置文件

[root@xx bin]# pwd
/usr/bin
[root@xx bin]# cat frps.ini
[common]
# frp监听的端口,默认是7000,可以改成其他的
bind_port=5001
# 授权码,请改成更复杂的
token=2022# frp管理后台端口,请按自己需求更改
dashboard_port = 5000
# frp管理后台用户名和密码,请改成自己的
dashboard_user = admin
dashboard_pwd = admin
enable_prometheus = true# frp日志配置
log_file = /root/frps.log
log_level = debug
log_max_days = 5

将服务端程序及配置文件放到/usr/bin目录下

[root@xx bin]# pwd
/usr/bin
[root@xx bin]# ll frps*
-rwxr-xr-x 1 root root 14036992 Sep 23 21:37 frps
-rw-r--r-- 1 root root      425 Sep 23 23:53 frps.ini

配置服务端frps服务及开机自动启动服务

[root@xx system]# pwd
/lib/systemd/system
[root@xx system]# cat frps.service
[Unit]
Description=Frps Server Service
After=network.target[Service]
TimeoutStartSec=30
Restart=on-failure
RestartSec=5s
ExecStart=/usr/bin/frps -c /usr/bin/frps.ini
ExecStop=/bin/kill $MAINPID
ExecReload=/usr/bin/frps reload -c /usr/bin/frps.ini[Install]
WantedBy=multi-user.target
# 重新加载配置文件
systemctl daemon-reload# 启动frpc服务
systemctl start frps# 开机自启动frpc服务
systemctl enable frps# 重启服务
systemctl restart frps

服务启动后,可以通过 http://47.10.13.3:5000 访问frp的管理页面,默认用户名密码都是admin

查看服务状态

[root@xx system]# service frps.service status
Redirecting to /bin/systemctl status frps.service
● frps.service - Frps Server ServiceLoaded: loaded (/usr/lib/systemd/system/frps.service; disabled; vendor preset: disabled)Active: active (running) since Sat 2022-09-24 09:04:48 CST; 4min 39s agoMain PID: 16047 (frps)CGroup: /system.slice/frps.service└─16047 /usr/bin/frps -c /usr/bin/frps.iniSep 24 09:04:48 lm systemd[1]: Started Frps Server Service.

服务端OS为CentOS,查看服务启动日志

[root@xx log]# pwd
/var/log
[root@xx log]# tail -20 messages
Sep 24 09:04:40 lm systemd: Reloading.
Sep 24 09:04:48 lm systemd: Started Frps Server Service.
Sep 24 09:10:01 lm systemd: Started Session 199071 of user root.

查看frps日志

[root@xx ~]# pwd
/root
[root@xx ~]# tail -200 frps.log
2022/09/23 23:54:35 [I] [root.go:209] frps uses config file: ./frps.ini
2022/09/23 23:54:35 [I] [service.go:194] frps tcp listen on 0.0.0.0:65001
2022/09/23 23:54:35 [I] [service.go:293] Dashboard listen on 0.0.0.0:65000
2022/09/23 23:54:35 [I] [root.go:218] frps started successfully
2022/09/23 23:54:53 [I] [service.go:450] [acad8bcb8f05e9e4] client login info: ip [117.143.51.99:9017] version [0.44.0] hostname [] os [linux] arch [amd64]
2022/09/23 23:54:53 [D] [control.go:219] [acad8bcb8f05e9e4] new work connection registered
2022/09/23 23:54:53 [I] [tcp.go:64] [acad8bcb8f05e9e4] [ssh] tcp proxy listen port [65002]
2022/09/23 23:54:53 [I] [control.go:465] [acad8bcb8f05e9e4] new proxy [ssh] type [tcp] success
2022/09/23 23:55:23 [D] [control.go:494] [acad8bcb8f05e9e4] receive heartbeat
2022/09/24 09:04:48 [I] [root.go:209] frps uses config file: /usr/bin/frps.ini
2022/09/24 09:04:48 [I] [service.go:194] frps tcp listen on 0.0.0.0:65001
2022/09/24 09:04:48 [I] [service.go:293] Dashboard listen on 0.0.0.0:65000
2022/09/24 09:04:48 [I] [root.go:218] frps started successfully
2022/09/24 09:04:53 [I] [service.go:450] [420388e842065db5] client login info: ip [117.143.51.99:8840] version [0.44.0] hostname [] os [linux] arch [amd64]
2022/09/24 09:04:53 [D] [control.go:219] [420388e842065db5] new work connection registered
2022/09/24 09:04:53 [I] [tcp.go:64] [420388e842065db5] [ssh] tcp proxy listen port [65002]
2022/09/24 09:04:53 [I] [control.go:465] [420388e842065db5] new proxy [ssh] type [tcp] success
2022/09/24 09:05:23 [D] [control.go:494] [420388e842065db5] receive heartbeat
2022/09/24 09:05:53 [D] [control.go:494] [420388e842065db5] receive heartbeat
2022/09/24 09:06:23 [D] [control.go:494] [420388e842065db5] receive heartbeat
2022/09/24 09:06:53 [D] [control.go:494] [420388e842065db5] receive heartbeat

客户端

客户端就是连接到任意内网的机器

将客户端程序及配置文件放到/usr/local/bin下

shang@shang-pc:/usr/local/bin$ pwd
/usr/local/bin
shang@shang-pc:/usr/local/bin$ ll frpc*
-rwxr-xr-x 1 root root 10997760 Sep 24 00:50 frpc*
-rw-r--r-- 1 root root      153 Sep 24 00:50 frpc.ini

配置文件

shang@shang-pc:/usr/local/bin$ pwd
/usr/local/bin
shang@shang-pc:/usr/local/bin$ cat frpc.ini
[common]
### 服务端IP地址,一般为公网IP
server_addr = 47.10.13.3
### 服务端端口,接收客户端TCP连接
server_port = 5001
token = 2022log_file = /root/frpc.log
log_level = debug
log_max_days = 5[ssh]
type = tcp
### 客户端内网IP
local_ip = 192.168.0.200
### 客户端端口
local_port = 22
### 服务端会将 5002 端口接收到的TCP数据包转发到客户端的22端口
remote_port = 5002

配置客户端机器的frpc服务及开机自动启动

shang@shang-pc:/lib/systemd/system$ pwd
/lib/systemd/system
shang@shang-pc:/lib/systemd/system$ cat frpc.service
[Unit]
Description=Frpc Client Service
After=network.target[Service]
TimeoutStartSec=30
Restart=on-failure
RestartSec=5s
ExecStart=/usr/local/bin/frpc -c /usr/local//bin/frpc.ini
ExecStop=/bin/kill $MAINPID
ExecReload=/usr/local/bin/frpc reload -c /usr/local/bin/frpc.ini[Install]
WantedBy=multi-user.target
# 重新加载配置文件
systemctl daemon-reload# 启动frpc服务
systemctl start frpc# 开机自启动frpc服务
systemctl enable frpc# 重启服务
systemctl restart frpc

查看服务状态

shang@shang-pc:/lib/systemd/system$ service frpc status
● frpc.service - Frpc Client ServiceLoaded: loaded (/lib/systemd/system/frpc.service; disabled; vendor preset: enabled)Active: active (running) since Sat 2022-09-24 01:04:53 UTC; 17min agoMain PID: 1966 (frpc)Tasks: 6 (limit: 4536)Memory: 4.0MCPU: 814msCGroup: /system.slice/frpc.service└─1966 /usr/local/bin/frpc -c /usr/local//bin/frpc.iniSep 24 01:04:53 shang-pc systemd[1]: Started Frpc Client Service.
Sep 24 01:04:53 shang-pc frpc[1966]: 2022/09/24 01:04:53 [I] [service.go:349] [420388e842065db5] login to server success, get run id [4>
Sep 24 01:04:53 shang-pc frpc[1966]: 2022/09/24 01:04:53 [I] [proxy_manager.go:144] [420388e842065db5] proxy added: [ssh]
Sep 24 01:04:53 shang-pc frpc[1966]: 2022/09/24 01:04:53 [I] [control.go:181] [420388e842065db5] [ssh] start proxy success

系统日志

shang@shang-pc:/var/log$ pwd
/var/log
shang@shang-pc:/var/log$ tail -200 syslog
Sep 24 01:02:26 shang-pc systemd[1]: Started Frpc Client Service.
Sep 24 01:02:26 shang-pc frpc[1820]: 2022/09/24 01:02:26 #033[1;33m[W] [service.go:128] login to server failed: dial tcp 47.103.103.39:65001: connect: connection refused#033[0m
Sep 24 01:02:26 shang-pc frpc[1820]: dial tcp 47.103.103.39:65001: connect: connection refused
Sep 24 01:02:26 shang-pc systemd[1]: frpc.service: Main process exited, code=exited, status=1/FAILURE
Sep 24 01:02:26 shang-pc systemd[1]: frpc.service: Failed with result 'exit-code'.
Sep 24 01:02:31 shang-pc systemd[1]: frpc.service: Scheduled restart job, restart counter is at 108.
Sep 24 01:02:31 shang-pc systemd[1]: Stopped Frpc Client Service.
Sep 24 01:04:53 shang-pc systemd[1]: Started Frpc Client Service.
Sep 24 01:04:53 shang-pc frpc[1966]: 2022/09/24 01:04:53 #033[1;34m[I] [service.go:349] [420388e842065db5] login to server success, get run id [420388e842065db5], server udp port [0]#033[0m
Sep 24 01:04:53 shang-pc frpc[1966]: 2022/09/24 01:04:53 #033[1;34m[I] [proxy_manager.go:144] [420388e842065db5] proxy added: [ssh]#033[0m
Sep 24 01:04:53 shang-pc frpc[1966]: 2022/09/24 01:04:53 #033[1;34m[I] [control.go:181] [420388e842065db5] [ssh] start proxy success#033[0m

通过公网IP登录内网机器

(base) [  9:23上午 ]  [ shang@iMac:~ ]$ ssh -p 5002 shang@47.10.13.3
shang@47.10.13.3's password:
Welcome to Ubuntu 22.04.1 LTS (GNU/Linux 5.15.0-43-generic x86_64)* Documentation:  https://help.ubuntu.com* Management:     https://landscape.canonical.com* Support:        https://ubuntu.com/advantageSystem information as of Sat Sep 24 01:23:33 AM UTC 2022System load:  0.0               Processes:               120Usage of /:   6.6% of 97.87GB   Users logged in:         1Memory usage: 5%                IPv4 address for enp2s0: 192.168.0.200Swap usage:   0%65 updates can be applied immediately.
30 of these updates are standard security updates.
To see these additional updates run: apt list --upgradableLast login: Sat Sep 24 01:23:34 2022 from 192.168.0.200
shang@shang-pc:~$ pwd
/home/shang
shang@shang-pc:~$ uname -a
Linux shang-pc 5.15.0-43-generic #46-Ubuntu SMP Tue Jul 12 10:30:17 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

搭建好内网穿透服务后,就可以通过公网IP访问到内网机器。

在内网机器的主板bios中设置通电自启,再配合一个智能插座,就可以实现远程开机。

内网机器开机后,会启动frpc服务,建立内网穿透连接

frp内网穿透服务搭建相关推荐

  1. 快速搭建使用FRP内网穿透服务

    快速搭建使用FRP内网穿透服务 frp是一款流行的跨平台开源免费内网穿透工具,支持 Windows.macOS 与 Linux.你只需一台快速稳定的服务器即可愉快地进行内网穿透,实现家中设备公网直接访 ...

  2. windows搭建frp服务器_Windows平台下FRP内网穿透的搭建

    咕咕咕!又鸽了好久呢,之前好像说要出个简单的自建内网穿透的教程,由于各种事情,一直鸽到现在,只好今天来补上. Frp一般就两个平台上应用,unix(包括基于Linux的各种设备)和windows,关于 ...

  3. 树莓派3 利用frp内网穿透web搭建 -- bt下载机的应用

                                    树莓派3 利用frp内网穿透web搭建 -- bt下载机的应用 请参考我前面写的博客:http://blog.csdn.net/wang ...

  4. frp内网穿透并搭建配置使用

    一文搞懂frp内网穿透并搭建配置使用 原文链接 ->https://developer.aliyun.com/article/853534?spm=ding_open_doc.document. ...

  5. Mac 系统部署Frp内网穿透服务 实现frpc shell启动脚本启动、停止

    Mac 系统部署Frp内网穿透服务 实现frpc shell启动脚本启动.停止 前言 最近疫情导致居家办公,而工作中需要用到公网地址便于调试,于是就在本机(Mac系统)配置了Frpc内网穿透. 本来想 ...

  6. UBNT ER-X 路由器DDNS配置和frps内网穿透服务搭建

    本文基于UBNT EdgeRouter ER-X路由器,在不额外增加硬件的情况下,实现DDNS,搭建frps内网穿透服务. Teamviewer开始收费了,向日葵之类用起来又不顺手,试来试去还是Win ...

  7. frp内网穿透服务使用

    1,frp简介 frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP.UDP.HTTP.HTTPS 等多种协议.可以将内网服务以安全.便捷的方式通过具有公网 IP 节点的中转暴露到公网. ...

  8. frp 内网穿透服务器搭建frps服务端和frpc客户端

    1 工具 一台具有公网ip的服务器 2 下载frp frp下载地址 打开上面的frp下载地址 公网服务器上 打开下载文件 frps是服务端,在公网服务器上部署 frpc是客户端,在需要内网穿透的电脑上 ...

  9. FRP内网穿透服务端搭建教程

    一.简介 FRP是开源的一个内网穿透工具,我的服务器用的是阿里云的Centos7.3 开源以及中文文档地址: https://github.com/fatedier/frp/blob/master/R ...

最新文章

  1. IE下的li有空白问题
  2. 测试结果分析_9种国内外纺织品耐摩擦色牢度测试方法结果分析
  3. Science:人类迎来目前最为全面的癌症染色质可及性图谱
  4. 计算机原理及应用第三版pdf,计算机原理及运用.pdf
  5. 一条语句判断数x是否2的n次幂.求取二进制1的个数
  6. tensorflow里面函数记录
  7. python3 os.system 异步执行_《sentos python教程》 Python os.system(command),这样执行的command命令,和主程序是异步的吗?...
  8. 转移服务器显示乱码,两台服务器之间数据传输乱码问题
  9. 重构wangEditor(web富文本编辑器),欢迎指正!
  10. html在线编辑器 哪个好用,可视化HTML富文本编辑器有哪些?哪个好用?
  11. ucint核心边缘分析_ucinet社会网络分析笔记(一)网络密度、中心度、凝聚子群、核心-边缘...
  12. java 设计数据字典_应用开发中数据字典项设计实现方案
  13. pyltp实现句法分析并画出句法图
  14. Altium Designer 打印PCB板元件位置图
  15. Excel单元格内自动换行自动行高,打印预览出现内容缺失解决方案
  16. STM32+华为云IOT设计的动态密码锁
  17. B2C之新岛咖啡 一堂62元的供应链管理课
  18. 不小心执行了rm -f 如何恢复
  19. 配置teamviewer远程无显示器ubuntu工控机实操
  20. ROI Pooing

热门文章

  1. webpack4 报错 Module not found: Error: Can't resolve
  2. 关于SAP ERP 物料类型的基础知识
  3. js实现图形报表 ECharts插件
  4. 前所未有的低成本 惠普M134a大粉仓新机体验
  5. 几步教你如何做一个赚钱的自媒体账号,昨天我赚了469
  6. 哈工大计算机学院计算机组成原理,哈工大威海计算机学院计算机组成原理.ppt...
  7. 帐号登录 连续错误几次后冻结账号
  8. pdf reference 格式具体说明
  9. 【优化求解】基于粒子群算法求解多目标优化问题matlab源码
  10. 轻松看懂机器学习!3个案例详解聚类、回归、分类算法