当前位置: 首页 > news >正文

【实用技巧】云服务器+FRP搭建自己的远程控制向日葵

组内公共机(windows系统)采用向日葵远程连接,向日葵本身提供的免费服务速度很慢,尤其是多人同时连接时情况更颇为糟糕。于是打算利用windows本身自带的远控服务,开辟一条自己的绿色通道。

1.运行环境

服务器:阿里云ubuntu22.04 LTS
被控端:台式电脑windows10
控制端:台式电脑windows10

2.基本原理

基本原理如下图所示,图源[1]:
控制端(计算机A)向云服务器发送请求,云服务器将请求转发到被控端(计算机B)。如果计算机A和计算机B在同一局域网下,则无需公网服务器进行请求转发。这里考虑到更加通用的场景,往往这两者不在同一局域网中。

在这里插入图片描述

需要配置两个东西:

  1. FRP内网穿透:计算机B无法直接被A访问到,配置穿透后,使A对C的请求能够顺利转发到B中,这里默认FRP通过7000端口通信。

  2. 远程控制请求:计算机A需要向公网服务器发送控制申请,此时需要通过端口进行通信,本文中端口设置为7003,计算机B无需设置端口,windows默认远控端口为3389

3.操作步骤

下面开始具体操作。

3.1 端口设置开放

首先在阿里云服务器控制台中开放端口。

阿里云服务器控制台:https://ecs.console.aliyun.com/server/i-2zeilcvb1tnjoanrzkku/group?regionId=cn-beijing#/

进入控制台,入方向,开放70007003两个端口。

在这里插入图片描述

在云服务器防火墙中,同步开放这两个端口,开放完重启防火墙:

sudo ufw allow 7000
sudo ufw allow 7003
sudo ufw reload

3.2 服务器FRP配置

首先查看服务器系统架构:

lscpu | grep Architecture

输出:

Architecture:  x86_64

如果输出结果中包含 x86_64 或 i686,则表示系统的 CPU 架构是 AMD(或者是 x86 架构的 Intel
CPU)。如果输出结果中包含 armv7l、aarch64 或 arm64,则表示系统的 CPU 架构是 ARM[2]。

下载FRP:

wget https://github.com/fatedier/frp/releases/download/v0.61.1/frp_0.61.1_linux_amd64.tar.gz

解压:

tar -xvzf frp_0.61.1_linux_amd64.tar.gz 

进入到frp_0.61.1_linux_amd64目录中,编辑frps.toml配置文件:

vim frps.toml

内容如下:

bindAddr = "0.0.0.0"
bindPort = 7000
auth.method = "token"
auth.token = "自己的token"

bindAddr= "0.0.0.0"表示监听所有IP信息,bindPort=7000即绑定7000端口,auth.token设置自己的密码,用来FRP服务连接时验证。

修改完成后,保存,用screen无间断启动FRP服务:

screen -S frps ./frps -c frps.toml

3.3 被控端FRP配置

被控端可以直接下载原生的frp:
下载链接:https://github.com/fatedier/frp/releases/tag/v0.61.1

也可以下载封装好的图形化界面frpc-desktop
下载链接:https://github.com/luckjiawei/frpc-desktop/releases/tag/v1.1.6

为方便起见,我这里直接下载后者。

下载完成后,首先在穿透列表这里配置代理,信息填写如下图所示:

在这里插入图片描述

之后在里面下载FRP,我这里下载最新版本,注意和服务器端最好保持版本对应。

在这里插入图片描述
配置FRP信息,服务器地址填写自己服务器的公网IP,端口号和token和上一节设置的相对应,配置完点右上角进行保存。

在这里插入图片描述

最后,到首页启动FRP。如有报错,可查看具体日志信息。

配置完成后,在控制端打开windows自带的远程桌面连接

在这里插入图片描述
计算机名称填写公网ip:7003

在这里插入图片描述

最后输入用户名和密码,即可进入远控界面,并且控制端和被控端是共享剪切板的,用来直接传输一些小文件很流畅。

4. 错误原因排查

默认情况下,按照上述流程进行配置,应该不会出现问题。如出现问题,可从以下几个角度进行排查:

  1. 被控端FRP连接异常
    直接看软件生成的日志
  2. 服务器端FRP异常
    可通过如下语句,查看错误信息:
    ./frps -c frps.toml
    
  3. 被控端连接异常
    可以检查远程服务是否启动,默认情况是启动的,具体到服务管理栏检查Remote Desktop Services这个服务的启动情况。
    其次可检查是否开启远控权限,具体位置在控制面板 系统->允许远程访问中。

在这里插入图片描述

参考

[1] 如何利用云服务搭建自己的远程连接工具
https://blog.csdn.net/qq_42108331/article/details/140397923
[2] linux 查看CPU架构是AMD还是ARM
https://blog.csdn.net/qq_50247813/article/details/133314899


http://www.mrgr.cn/news/91422.html

相关文章:

  • 计算机毕业设计Python商品推荐系统 商品比价系统 电商比价系统 商品可视化(代码+LW文档+PPT+讲解视频)
  • Rust中的collections
  • 2013年下半年软件设计师上午题考察知识点及其详细解释(附真题及答案解析)
  • Leetcode2080:区间内查询数字的频率
  • 文档检测校正的重要性
  • Mycat中间件
  • 【TI C2000】F28002x的系统延时、GPIO配置及SCI(UART)串口发送、接收
  • leetcode-495.提莫攻击
  • 【16届蓝桥杯寒假刷题营】第2期DAY1I
  • 视点坐标及鼠标交点坐标的信息显示(七)
  • 基于SpringBoot的“高考志愿智能推荐系统”的设计与实现(源码+数据库+文档+PPT)
  • 计算机视觉中图像的基础认知
  • Chrome多开终极形态解锁!「窗口管理工具+IP隔离插件
  • 计算机视觉:卷积神经网络(CNN)基本概念(一)
  • 【深度解析】图解Deepseek-V3模型架构-混合专家模型(MoE)
  • VMware Workstation 17.0 Pro创建虚拟机并安装Ubuntu22.04与ubuntu20.04(双版本同时存在)《包含小问题总结》
  • 【数据结构基础_链表】
  • mysql 学习16 视图,存储过程,存储函数,触发器
  • SQL复习
  • STM32创建静态库lib