栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

FRP内网穿透进行Windows远程访问

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

FRP内网穿透进行Windows远程访问

背景
  • 内网计算机:Windows 10 x64

  • FRP服务器:腾讯云 Ubuntu 20.04

本文重点介绍 FRP 服务器端和客户端配置,远程桌面连接属于常规内容,不再详细说明。

准备工作 下载软件

GitHub下载 FRP release 的程序

因为本次需要配置 Ubuntu 和 Windows 两个环境,所以两个包都下载下来(Linux 的包可以到终端上去操作,但是云服务器没有代理,所以一并在本地电脑上解决了)

服务器配置

打开 frp_linux_amd64.tar.gz ,里面有客户端(client)和服务端(server)的可执行文件和配置文件,其中frps 、frps_full.ini 、 frps.ini 是服务器端的可执行文件和配置文件。

修改配置文件

修改 frps.ini 文件

[common]
bind_addr=0.0.0.0
bind_port = 7000
# token=1234567890
dashboard_port = 7500
dashboard_user = username
dashboard_pwd = password

说明

  • bind_addr 服务器本地 IP
  • bind_port FRP 监听端口
  • token 验证 token 根据需要设置
  • dashboard_port FRP面板端口
  • dashboard_user、dashboard_pwd 是面板的账号密码
  1. 除了bind_addr参数之外的其他参数,都可以根据需求自行修改。
  2. token和面板的配置都是非必须的。
  3. 如果使用云服务器,那么bind_port 和 dashboard_port都需要在云服务器安全组放行。
修改权限

然后给服务器端 frps 赋予执行权限:

sudo chmod 755 ./frps
运行 frps
./frps -c ./frps.ini

出现[root.go:209] frps started successfully 即代表运行成功。

如果运行出现错误 bash: ./frps: Permission denied 表示还是权限错误,参考上一步修改权限

访问面板

frps 运行成功后可以通过 http://公网IP:面板端口 访问 frp 面板(前提是配置了访问面板)。登录面板可以看到如下界面:

进阶

使用 nohup 让 frps 后台运行

nohup ./frps -c ./frps.ini > nohup.out 2>&1 &

查看后台服务,通过这个指令就能看到 frps 的 PID

ps -aux | grep "./frps -c ./frps.ini"
客户端配置

打开 frp_windows_amd64.zip ,里面有客户端(client)和服务端(server)的可执行文件和配置文件,其中frpc.exe 、frpc_full.ini 、 frpc.ini 是客户端的可执行文件和配置文件。

修改配置文件

本地演示用到程序是 windows 远程桌面,使用 3389 端口。需要用 FRP 将 windows 客户端的 3389 转发到服务器端上。比如将客户端的 3389 转发到服务器端的远程端口。用文本编辑器打开 frpc.ini 文件:

[common]
server_addr = FRP服务器公网地址
server_port = 7000
# token=1234567890

[RDP]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 服务器端远程端口

说明

  • server_addr FRP服务器公网地址

  • server_port 服务器FRP服务端口需要与服务器配置一致

  • token token 验证,如果服务器端配置了 token,客户端需要与服务器一致

  • type 转发端口协议类型

  • local_ip 本地地址,一般为 127.0.0.1

  • local_port 本地服务端口,不同程序端口不同

  • remote_port 转发到服务器的某个端口

如果FRP服务使用的云服务器,要想通过公网IP加远程端口访问到转发的服务,需要云服务器安全组将此处配置的 remote_port 放行。

运行 frpc

打开CMD 在 frpc 所在目录下运行

frpc.exe -c frpc.ini

出现 success 就是连接成功

说明

  • [RDP]的服务代理启动成功

  • [ssh]启动失败: 端口已经被占用

    因为我除了添加了[RDP]的服务,我还添加了一个[ssh]的服务,服务器端口使用的是 6000

    [ssh]
    type = tcp
    local_ip = 127.0.0.1
    local_port = 22
    remote_port = 6000
    

    但是因为服务器 6000 这个端口已经被其他服务占用了,所以就启动失败

服务器

客户端的操作,在服务器端也能看到记录

面板中也会出现相应的记录

进阶

使用 winsw 注册 windows 后台服务

下载 winsw

GitHub下载 winsw.exe

重命名

将软件重命名为 winsw.exe,并将该软件放到 frpc 客户端所在目录下备用。

创建配置文件

还是在 frpc 客户端所在目录下创建 winsw.xml 文件,并写入一下内容并保存:


    frpc
    frpc
    frpc
    frpc
    -c frpc.ini
    
    
    reset

启动 winsw

管理员权限启动 CMD,进入到 frpc 客户端所在目录下,添加服务

winsw.exe install

启动服务

winsw start
其他
#添加服务
winsw.exe install
#开始
winsw start
#关闭
winsw stop
#卸载服务
winsw uninstall
远程访问

内网计算机配置允许远程访问,然后其他任何计算机通过 Windows 自带的远程桌面工具通过访问 公网IP:远程桌面转发端口 连接远程桌面。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/941448.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号