鉴于ngrok不是特别好用

昨天又发现frp这个神器 在管理端还有图形界面十分友好

话不多说开始

准备工作

1、一个域名

2、一台服务器

一、域名与服务器

域名和服务器直接买就好咯 价格不高

一定要在提供商那里把你的域名与你的服务器IP做DNS解析

二、服务端

1、安装go

wget https://dl.google.com/go/go1.11.linux-amd64.tar.gz # 下载go语言

tar -zxvf go1.11.linux-amd64.tar.gz #解压tar包
mv go /usr/local/ #移动go语言 vim /etc/profile #修改配置文件 #配置文件添加下面的数据
export GOROOT=/usr/local/go
export GOPATH=/usr/local/go/get_package source /etc/profile #刷新配置

2、安装配置frp

cd /root
# 下载frp可执行包
wget https://github.com/fatedier/frp/releases/download/v0.33.0/frp_0.33.0_linux_amd64.tar.gz
#解压
tar zxf frp_0.33.0_linux_amd64.tar.gz
#进入目录
cd frp_0.33.0_linux_amd64/
#配置
vi frps.ini [common]
# tunnel port通信管道
bind_port = 7000
# http和https
vhost_http_port = 80
vhost_https_port = 443
# 连接认证token token = 123456 # 子域名
subdomain_host = 你的域名 # 自定义404 页面,要用绝对路径
custom_404_page = /root/frp_0.33.0_linux_amd64/404.html # dashboard图形管理页面
dashboard_port = 4560 #管理端口 dashboard_user = admin #管理用户名
dashboard_pwd = admin #管理密码 # ---设置完成----
# 启动
./frps -c frps.ini

3、自启动设置

# 创建后台启动模版
vi /etc/systemd/system/frp.service
# 内容如下:
[Unit]
Description=frps
After=network.target [Service]
ExecStart=/root/frp_0.33.0_linux_amd64/frps -c /root/frp_0.33.0_linux_amd64/frps.ini [Install]
WantedBy=multi-user.target # 启动测试
systemctl start frp.service
# 查看启动状态
systemctl status frp.service
# 开机自启
systemctl enable frp.service

三、客户端

下载当前操作系统的frp

https://github.com/fatedier/frp/releases/

这里是windows

配置frpc.ini

[common]
server_addr = 你的域名
server_port = 7000 tcp_mux = true
protocol = tcp user = 你的用户名
token = 123456 [mstsc]
type = tcp
local_ip = 127.0.0.1
local_port = 3389
remote_port = 3389

保存关闭

在当前目录建立一个bat文件

cd %cd%
frpc

保存 启动程序需要点bat

总结:和ngrok差不多但是开源版的ngrok经常reconnect frp倒是稳定许多还有可视化后台比较友好

内网穿透frp教程 windows远程桌面连接的更多相关文章

  1. 钉钉内网穿透工具在windows的使用。

    钉钉内网穿透工具在windows环境下使用 1.WIN+R,然后cmd,调出dos控制台 2.进入内网穿透程序ding.exe所在目录 3.执行 ./ding.exe -config=ding.cfg ...

  2. 树莓派进阶之路 (024) - windows远程桌面连接树莓派通过xrdp服务(转)

    本文转载:http://www.cnblogs.com/edgexie/p/6527992.html 在网上看到很多关于windows远程桌面连接树莓派的教程.我也按照教程试过了,遇到了几个坑.特意记 ...

  3. CentOS7配置图形界面及设置vnc远程连接、windows远程桌面连接

    安装CentOS桌面 yum groupinstall "GNOME Desktop" 重启,进入终端,将启动模式变更为图形模式 systemctl set-default gra ...

  4. Windows远程桌面连接Mac OS X

    Windows远程桌面连接Mac OS X   第一步:Mac OS X 10.5 已经增加支持了由VNC Viewer访问的功能,设置如下:   系统偏好设置-共享-勾选“屏幕共享”,然后在电脑设置 ...

  5. windows 远程桌面连接 RPi 2B

    /************************************************************************* * windows 远程桌面连接 RPi 2B * ...

  6. c#实现windows远程桌面连接程序

    c#实现windows远程桌面连接程序 使用winform制作windows远程桌面连接程序,windows自带了远程桌面连接,我们需要将远程桌面连接集成 到自己的winform程序,并实现管理远程主 ...

  7. 通过xrdp服务实现windows远程桌面连接树莓派

    如题:通过xrdp服务实现windows远程桌面连接树莓派 受同学影响,最近接触到了树莓派,又加上自己技痒想试一下这个小东西究竟能做什么,所以开始了树莓派学习之旅. 正题开始-xrdp实现window ...

  8. c#实现windows远程桌面连接程序代码

    使用winform制作windows远程桌面连接程序,windows自带了远程桌面连接,我们需要将远程桌面连接集成 到自己的winform程序,并实现管理远程主机的配置. 远程桌面核心类库 windo ...

  9. 解决Windows远程桌面连接每次都提示输入密码的问题,远程桌面记不住密码

    FROM:http://www.veryhuo.com/a/view/80444.html Windows 远程桌面连接几乎每天都用,所以使用的方便性非常重要.如果你经常用,也许会发现在某些系统中,每 ...

随机推荐

  1. 创建新的servlet一定要记得修改web..xml文件!!!

    创建新的servlet一定要记得修改web..xml文件!!!

  2. C语言---魔方阵

    魔方阵的定义:在n*n的方阵中,每一行的和=每一列的和=对角线的和.(本文中涉及的n为大于3的奇数). 例如3*3的魔方阵为: 5*5的魔方阵为: 如何写魔方阵呢? 1.数字1位于第一行的正中间2.下 ...

  3. IP和静态路由技术概述

    1. IP地址的构成 IP地址:32比特的二进制数字,通常采用点分十进制方式表示. IP地址由两部分组成. 网络号码字段(Net-id)用于区分不同的网络.网络号码字段的前几位成为类别字段(又称为类别 ...

  4. Factorials and Powers of Two

    分析:我们可以看出这道题目的描述并不是很复杂,就是说对于一个给定的整数n,我们能否把他拆成k个powerful的数,也就是说这k个数要么是2的幂次,要么是某个数的阶乘,并且我们要让当前的k越小越好:然 ...

  5. nfs客户端的一次处理

    为什么要说这个呢,由于节点环境不一致,导致在重建pod时,我们暂且叫该pod为 cxpod,cxpod所在宿主机出现了问题现象如下:一.cxpod始终处于创建中 ContainerCreating [ ...

  6. MongoDB 提供的工具

    MongoDB 提供的工具 官网 https://www.mongodb.com/ 工具 MongoDB 提供了一些工具,: MongoDB Compass: MongoDB数据库可视化工具(类似PL ...

  7. &&与&,||与| 区别

    1. &&和&都是表示与,区别是&&只要第一个条件不满足,后面条件就不再判断. 而&要对所有的条件都进行判断. public class Test { ...

  8. 从压测碰到的诡异断连问题聊聊Nginx的连接管理

    本文主要分享一个在压测Nginx反向代理服务过程中碰到的连接异常断开问题,包括问题的定位与复现,最后由这个实际问题引申聊一下Nginx的连接管理. 本博客已迁移至CatBro's Blog,那是我自己 ...

  9. 如何在代码层面提供CPU分支预测效率

    关于分支预测的基本概念和详细算法可以参考我之前写的知乎回答,基本概念不再阐述了~~ https://www.zhihu.com/question/486239354/answer/2410692045 ...

  10. -2.输入加速(cin,cout)

    + ios::sync_with_stdio(false);//加速几百毫秒 cin.tie(0); // 接近scanf cout.tie(0);