基于FRP实现内网穿透

一、需求场景

  1.远程访问内网设备

  2.模拟QQ、TV等的远程控制

二、环境

  Win10家庭版(内网计算机)

  CentOS(外网计算机,基于Aliyun ECS)

三、使用外网计算机搭建服务端

  1.下载frp_0.25.3_linux_amd64.tar.gz

  2.解压缩

  3.编辑 frps.ini

[common]
bind_port = 7000

  4.注册服务 vim  /etc/systemd/system/frps.service

[Unit]
Description=frps daemon
After=syslog.target  network.target
Wants=network.target

[Service]
Type=simple
ExecStart=/***/***/frp_***_linux_386/frps -c /***/***/frp_***_linux_386/frps.ini
Restart= always
RestartSec=1min

[Install]
WantedBy=multi-user.target
systemctl start frps
systemctl enable frps

四、开放端口(同时关闭机器防火墙:systemctl stop firewalld.service)

  

 

五、配置内网穿透

  1.下载frp_0.25.3_windows_amd64.zip

  2.解压缩

  3.编辑frpc.ini

[common]
server_addr = ***.***.***.***
server_port = 7000

[RDP]
type = tcp
 
local_port = 3389
remote_port = 7001

  4.CMD运行 frpc.exe

 六、Win10家庭版安装远程桌面服务端

  1.下载RDPWrap-v1.6.2.zip

  2.解压缩

  3.管理员运行install.bat

 

  问题:windows 10 创意者更新(1703)后,系统修改了termsrc.dll库,导致Wrap监听服务无法正常启动,须还原dll(建议备份)

  DLL下载,密码:fesv(解压后放置到:C:Windows/System32/)

  如遇到权限问题,请将原始的termsrv授权给当前用户,再进行替换

  如遇到文件被占用问题,使用CMD执行tasklist /svc>C:\listsvc.txt,查看listsvc文件中,占用当前DLL的程序PID,打开任务管理器强制停止该PID程序

 

  Win10 1809 17763版本ini文件支持更新:RDP Wrapper-1809-17763.615.zip,密码:gp59,将其中内容覆盖到:C:\Program Files\RDP Wrapper,并把termsrv.dll替换到System32中

七、内网服务自启动

  1.新建frpc_start.bat(/B为了后台运行,exe这里不能使用绝对路径,exe会依赖./下的ini配置文件)

@echo off
start "Frp-Client" /B frpc.exe

  2.新建frpc_start.vbs

Set ws = CreateObject("Wscript.Shell")
ws.run "cmd /c D:\Soft\frpc\frp_0.25.3_windows_amd64\frpc_start.bat",vbhide

  3.创建frpc_start.vbs快捷方式到C:\ProgramData\Microsoft\Windows\Start Menu\Programs\StartUp

posted @ 2019-05-29 10:40  VirgoArt  阅读(341)  评论(0编辑  收藏  举报