frp内网穿透搭建远程桌面

一、 前提

有一台远程服务器,然后用Win的远程桌面连接到公司内网电脑中

二、环境

  1. 公网服务器1台,CentOS 7
  2. 内网客户端1台,Win10

    三、服务器安装frp

  3. 下载地址https://github.com/fatedier/frp/releases下载linux版本
wget https://github.com/fatedier/frp/releases/download/v0.31.1/frp_0.31.1_linux_amd64.tar.gz
  1. 解压到/usr/local/frp目录
tar zxf frp_0.31.1_linux_amd64.tar.gz
mv frp_0.31.1_linux_amd64 /usr/local/frp
  1. 配置服务端frps.ini
[common]
bind_port = 7000
vhost_http_port = 8080
  1. 启动
./frps -c ./frps.ini

四、客户端配置

  1. 下载地址https://github.com/fatedier/frp/releases下载win版本
  2. 解压到C:\Program Files\frp目录
  3. 配置frpc.ini
[common]
server_addr = xxx.xxx.xxx.xxx
server_port = 7000

[RDP]
type = tcp
local_ip = 0.0.0.0
local_port = 3389
remote_port = 6666
  1. 在命令行中启动frp客户端
C:\Program Files\frp\frpc.exe -c C:\Program Files\frp\frpc.ini

等待启动完成

2020/01/11 13:18:22 [I] [service.go:250] [e126185cb2716a8e] login to server success, get run id [e126185cb2716a8e], server udp port [0]
2020/01/11 13:18:22 [I] [proxy_manager.go:144] [e126185cb2716a8e] proxy added: [RDP]
2020/01/11 13:18:22 [I] [control.go:164] [e126185cb2716a8e] [RDP] start proxy success
  1. 连接测试

    五、 配置服务开机启动

  2. linux下配置服务
    编辑/etc/systemd/system/frps.service
[Unit]
Description=frps daemon
After=syslog.target  network.target
Wants=network.target

[Service]
Type=simple
ExecStart=/usr/local/frp/frps -c /usr/local/frp/frps.ini
Restart= always
RestartSec=1min

[Install]
WantedBy=multi-user.target

启动frps

systemctl start frps
  1. win下配置服务
    借助 winsw 工具可以将frpc注册为windows系统中的服务
    将下载的winsw.exe放到frpc.exe同目录下,并填写winsw.xml配置文件
<service>
    <id>frp</id>
    <name>frp</name>
    <description>用frp发布本地电脑网站到外网</description>
    <executable>frpc</executable>
    <arguments>-c frpc.ini</arguments>
    <logmode>reset</logmode>
</service>

然后使用winsw install将frpc安装为系统服务。
win+r后通过services.msc进入到服务列表页面找到frp服务。

为了确保frpc在连接失败后自动尝试重新连接,在恢复tap页进行如下设置

六、 扩展配置

frpc的web、ssh配置

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

[ssh]
type = tcp
local_ip = 0.0.0.0
local_port = 22
remote_port = 2222

[web]
type = http
local_port = 80
custom_domains = js.zengwu.com.cn
0%