0. 引言
本文将从0开始描述win10远程桌面的搭建过程,包括服务器的选择与配置、配置文件编写、自启动等。本远程桌面方案基于以下项目:
感谢作者大大开源这个内网穿透工具!
如果您跟着本文操作的过程中遇到了问题,请先查看文章最后的常见问题,若未出现解答,可上网搜索。有任何疑问,可在文章底下留言,或者点击本页面左下角头像进行询问。
1. 准备工作
1.1 需要访问的PC
打开设置
->系统
,检查是否有”远程桌面“选项卡。若没有该选项,说明您的PC的windows系统并非专业版,可以参考这篇文章解决。
1.2 服务器
本文描述的远程桌面方案需要一台公网服务器,可以去各种服务商租用。选择服务器应当注意以下几点:
-
位置
尽量选择靠近您的服务器,一般来说这样延迟会低一些。延迟对远程桌面使用体验影响较大。
-
带宽
所需要的带宽取决于您的用途,如果需要看视频等,则带宽需求大一些。不过不管需求是什么,个人不建议1M以下。笔者踩过坑,1M的小带宽直接影响到连接体验。笔者目前使用的是带宽为5M的轻量应用服务器,写代码、上课摸鱼、机房上机、浏览网页没有问题。
-
系统
frp提供多种系统的版本,本文介绍CentOS7下的搭建方式,CentOS8也亲测可用。
如果您是学生,服务器成本可以控制在10元一个月以内。
1.3 下载所需要的工具
前往这个页面分别下载linux端与windows端的工具包,即linux_amd64.tar.gz
与windows_amd64.zip
。本文使用的版本是0.33.0
,不保证适用于其他版本。
前往这个页面在您的PC上安装XShell,用于远程连接您的服务器。
2. 服务端配置
2.1 宝塔面板的安装
宝塔面板是一个服务器管理工具,可让您在图形化界面中管理文件、站点等内容。打开Xshell,连接至您的服务器。连接前,您可能需要到服务器服务商设置root密码。您也可以直接使用服务商提供的网页工具(如VNC)连接。
若您直接通过网页工具连接,可能需要获取root权限,键入:
sudo su root
随后键入宝塔面板安装脚本,并运行(建议您在官网查看最新脚本):
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
等待1-2分钟,终端会返回面板入口、用户名、密码,一定要做好记录。
2.2 上传软件包
进入并登录宝塔面板,点击文件
,进入到需要运行frp的目录,笔者使用的是/www/server
,上传之前下载好的linux软件包并解压。如图所示:
编辑frps.ini
:
[common]
bind_port = 7000
token = 设置一个token
dashboard_user = frp面板用户名
dashboard_pwd = frp面板密码
dashboard_port = 7500
2.3 后台运行&自启动
进入/lib/systemd/system
目录,新建一个名为frps.service
的文件,内容如下:
[Unit]
Description=Frp Server Service
After=network.target
[Service]
Type=simple
User=nobody
Restart=on-failure
RestartSec=5s
ExecStart=/www/server/frp_0.33.0_linux_amd64/frps -c /www/server/frp_0.33.0_linux_amd64/frps.ini
[Install]
WantedBy=multi-user.target
注意ExecStart
应填写您自己的安装目录。
保存后,打开终端,依次执行:
systemctl enable frps
systemctl start frps
不出意外,服务器上的穿透程序已经运行起来了,您可以访问http://您的服务器ip:7500,尝试进入frp面板,或在终端执行一下指令,查看运行状态。
systemctl status frps
3. 客户端配置
3.1 配置frpc
在PC上解压之前下载的windows版本软件包,笔者直接在D盘根目录解压,编辑frpc.ini:
[common]
server_addr = 您的服务器ip
server_port = 7000
token = 您设置的token
[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 7001
win
+R
输入cmd
打开终端,依次执行:
d:
cd D:\frp_0.33.0_windows_amd64
frpc -c frpc.ini
此时,不出意外的情况下远程桌面已经在运行了。您可以尝试在ios设备上下载RDClient,添加电脑,地址填写您的服务器ip:7001
,试试看是否能正常连接。
3.2 后台运行&自启动
在软件包目录下创建frp.bat
,内容为:
@echo off
d:
cd D:\frp_0.33.0_windows_amd64
frpc -c frpc.ini
在C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp
目录下创建frp.vbs
,使frpc能开机自启动并在后台运行,内容如下:
WScript.sleep 10000
CreateObject("WScript.Shell").Run "cmd /c D:/frp_0.33.0_windows_amd64/frp.bat",0
4. 成果示例
上课摸鱼可耻,请勿模仿
5. 常见问题
5.1 无法访问宝塔面板
在服务器服务商的安全组中放行8888端口,可一并放行7000-7500端口为之后的操作做准备。
5.2 无法进行远程桌面链接
一个可能是未在防火墙中放行对应端口,可在宝塔面板安全
页面中放行7000-7500端口。
哈哈哈,nps不香了
不知道博主实现XTCP模式没有
我用NPS 做过,服务器是BWH, NPS比较卡, 有时会断开, Frp连接稳定吗
我个人用了一段时间了,稳定性不错的,值得尝试
博主,这个安全吗,听说开源的frp是没有安全防护的。容易中病毒。。。。
确实会被杀毒软件报毒,我看网上也有被勒索的案例,毕竟端口被映射出去了。我用了很久,没有出过什么问题。实在担心的话,即开即用,即关即停。
杀软报毒可以加入白名单,或者自己clone源码编译。
感谢文章。为什么服务器放行的7000和7500端口不能访问,宝塔放行的7000和7500就可以使用呢?
服务器放行是只得再IDC的安全组里面放行吗?那是再服务器上面的一层,宝塔(服务器本身)的防火墙不放行还是出不去。