计算化学公社

 找回密码 Forget password
 注册 Register
Views: 2001|回复 Reply: 7
打印 Print 上一主题 Last thread 下一主题 Next thread

[网络相关] 利用frp实现内网穿透的远程桌面配置记录

[复制链接 Copy URL]

18

帖子

2

威望

397

eV
积分
455

Level 3 能力者

本帖最后由 Diotima 于 2024-1-16 07:41 编辑

最近对于海外IP,我常用的远程控制软件开始收费了。而且还挺贵。那这必然不能忍。于是果断卸载远控软件,决定用frp和新用户白嫖的谷歌云服务器搞一个内网穿透。

需要的设备:
1.一台有公网IP的云服务器
2.需要控制的远程计算机
3.随便来的一台访问端

frp项目的网址:https://github.com/fatedier/frp/releases/download/

首先配置服务器端:

打开云服务器SSH
首先运行wget命令下载安装包(所有全角方括号内都需要替换)
  1. wget 【云服务器对应架构的对应安装包地址,x86 用amd64 eg:https://github.com/fatedier/frp/ ... _linux_amd64.tar.gz】
复制代码
然后解压
  1. tar -zxvf 【frp_0.53.2_linux_amd64.tar.gz】
复制代码
可以对文件夹改名
  1. cp -r 【frp_0.53.2_linux_amd64】 【frp】
复制代码
进入文件夹
  1. cd frp
复制代码
查看所有文件
  1. ls -a
复制代码
去掉客户端配置文件
  1. rm frpc
  2. rm frpc.toml
复制代码
修改frps.toml配置文件
  1. vim frps.toml
复制代码
客户端的配置文件:
  1. [root@host-cloud conf]                    # cat frps.toml
  2. [common]
  3. bindAddr = 0.0.0.0                        #内网IP
  4. bindPort = 7000                           #TCP 开放端口
  5. bind_udp_port = 7000                      #UDP 开放端口
  6. vhostHTTPPort = 80                        
  7. vhostHTTPSPort = 443
  8. dashboard_addr = 0.0.0.0                  #内网IP
  9. dashboard_port = 7500
  10. dashboard_user =【admin】                     #dashboard Username
  11. dashboard_pwd =【admin】                      #dashboard Password   这两行注释连带前面的空格改好后要全都删掉,以免密码里面加进去这段
  12. enable_prometheus = true
  13. log_file = ./logs/frps.log                #日志地址
  14. log_level = info
  15. log_max_days = 1                          #日志保留天数
  16. disable_log_color = false
  17. detailed_errors_to_client = true
  18. authentication_method = token
  19. authenticate_heartbeats = false
  20. authenticate_new_work_conns = false
  21. token =【123456789】                         #链接token 也需要删掉注释
  22. oidc_skip_expiry_check = false
  23. oidc_skip_issuer_check = false
  24. allow_ports = 2000-3000,3001,3003,4000-50000
  25. max_pool_count = 5
  26. max_ports_per_client = 0
  27. tls_only = false
  28. tcp_mux = true
  29. udp_packet_size = 1500
复制代码
将上面的配置修改好后粘到frps.toml,Esc 退出编辑并:wq! 保存。
让程序在后台运行 (看很多佬为了稳定将其配置成了系统服务,但是我胆子不太够去改system里的文件,反正云服务器我不关所以就直接后台挂着了)
  1. nohup ./frps -c frps.toml &
复制代码

服务端配置结束,可以登录【公网ip:7500】查看面板。密码是配置中的字段,退出SSH。

然后开始配置客户端。打开客户端电脑(我使用的windows 11)

同样下载frp安装包,可以删掉服务端文件(frps和frps.toml)。具体操作不再赘述。

修改toml文件,将后缀名改成ini格式

ini文件用文本编辑器打开,编辑配置为:

  1. [common]
  2. # 云服务器的IP地址及 frps 里面设置的通信端口
  3. server_addr = 【**:**:**:**】
  4. server_port = 7000

  5. #token与服务端设置一样
  6. token =【123456789】   

  7. # 设置日志文件记录路径
  8. log_file = ./logs/frpc.log
  9. # 设置日志记录级别,分别有trace, debug, info, warn, error
  10. log_level = info
  11. # 设置日志记录最大天数
  12. log_max_days = 1

  13. # 设置本机面板
  14. admin_addr = 127.0.0.1
  15. admin_port = 7400
  16. admin_user =【admin】
  17. admin_pwd =【admin】

  18. # RDP,Windows的RDP默认端口是3389,协议为TCP,转发到服务端【】中的端口
  19. [rdp]
  20. type = tcp
  21. local_ip = 127.0.0.1           
  22. local_port = 3389
  23. remote_port = 【7100】
复制代码
然后保存。

新建一个文本

写入
  1. @echo off
  2. if "%1" == "h" goto begin
  3. mshta vbscript:createobject("wscript.shell").run("""%~nx0"" h",0)(window.close)&&exit
  4. :begin
  5. REM
  6. cd 【C:\frp】#frp文件夹路径
  7. frpc -c frpc.ini
  8. exit
复制代码
保存后将后缀名改为bat,双击运行脚本

此时服务端与客户端都配置完成。需要的话可以把这个bat挪到开机启动里面。

可以访问127.0.0.1:7400查看面板

远程访问时,机器直接填【公网ip:RDP端口即可】
比如本例中就是【公网ip:7100】

目前我这里面防护还是比较薄弱,后面可以做一个访问前的验证。
看到某些帖子说STCP比较稳,准备看看。


评分 Rate

参与人数
Participants 2
威望 +1 eV +5 收起 理由
Reason
sobereva + 1
lonemen + 5 赞!

查看全部评分 View all ratings

2302

帖子

1

威望

5481

eV
积分
7803

Level 6 (一方通行)

2#
发表于 Post on 2024-1-7 09:34:23 | 只看该作者 Only view this author
如果可以忽略数据跨境的法律风险,
也可以试试 Tailscale免费套餐.

个人使用, 应该绝对够用.

可以参考

https://www.bilibili.com/video/BV1Tu4y1j7bf

基本不需要什么配置, 粘贴复制三五条指令就可以搞定.

个人使用测试发现: 如果所有设备都有ipv6, 基本就是直连.
用户通过100开头的IP直接连接, 剩下的自己动手就可以了.

只是我个人觉得, Tailscale的使用特别简单. 无需什么配置.

High-Performance Computing for You
为您专属定制的高性能计算解决方案

更多讯息,请访问:
https://labitc.top
http://tophpc.top:8080
电邮: ask@hpc4you.top

127

帖子

3

威望

776

eV
积分
963

Level 4 (黑子)

3#
发表于 Post on 2024-1-7 12:52:00 | 只看该作者 Only view this author
你不会是发b站那个人吧,我在b站上也看到一个类似的了

评分 Rate

参与人数
Participants 1
eV +1 收起 理由
Reason
Diotima + 1 不是的,我没在b站发

查看全部评分 View all ratings

30

帖子

0

威望

982

eV
积分
1012

Level 4 (黑子)

4#
发表于 Post on 2024-1-8 14:58:42 | 只看该作者 Only view this author
我用的是腾讯服务器作为公网ip的提供源头,走的autossh,请问楼主这个是不是比我的这种稳定呢

评分 Rate

参与人数
Participants 1
eV +3 收起 理由
Reason
Diotima + 3 个人认为你的autossh稳定。我这个操作是因.

查看全部评分 View all ratings

18

帖子

2

威望

397

eV
积分
455

Level 3 能力者

5#
 楼主 Author| 发表于 Post on 2024-1-30 23:26:15 | 只看该作者 Only view this author
昼夏の忧郁 发表于 2024-1-8 14:58
我用的是腾讯服务器作为公网ip的提供源头,走的autossh,请问楼主这个是不是比我的这种稳定呢

这种解决方案是在海外ip下的一个解决方法。稳定性我认为这取决于系统。对于Windows而言,frp必然不是最好的选择,因为frp太容易被杀掉了。但是linux上它的运行非常稳定。

18

帖子

2

威望

397

eV
积分
455

Level 3 能力者

6#
 楼主 Author| 发表于 Post on 2024-1-30 23:28:03 | 只看该作者 Only view this author
Huschein 发表于 2024-1-7 12:52
你不会是发b站那个人吧,我在b站上也看到一个类似的了

Bilibili我没有发。但是这个配置目前基本上大同小异。我只是增加了更多关于防火墙配置的说明。并且写了可以简单替换的配置文件

15

帖子

0

威望

243

eV
积分
258

Level 3 能力者

7#
发表于 Post on 2024-1-31 09:54:02 | 只看该作者 Only view this author
请问这种方法可以用在校外访问校园网吗

18

帖子

2

威望

397

eV
积分
455

Level 3 能力者

8#
 楼主 Author| 发表于 Post on 2024-2-3 04:22:10 | 只看该作者 Only view this author
SJHuang 发表于 2024-1-31 09:54
请问这种方法可以用在校外访问校园网吗

看学校的网络管理员设置,不行的话叫管理员给你开下权限就行。

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2024-11-27 17:35 , Processed in 0.169966 second(s), 23 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list