使用FRP实现内网穿透
frp中文文档https://github.com/fatedier/frp/blob/master/README_zh.mdfrp下载地址https://github.com/fatedier/frp/releases首先:使用frp需要有一台拥有公网IP的服务器,其作用我理解为“转发器”1、服务器(拥有公网IP)下载安装frp(根据你的系统)2、作为服务端我们需要配置frps.in...
frp中文文档
https://github.com/fatedier/frp/blob/master/README_zh.md
frp下载地址
https://github.com/fatedier/frp/releases
frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。
实现一:外网访问内网服务器部署的gitee
首先:使用frp需要有一台拥有公网IP的服务器
,其作用我理解为“转发器”
1、服务器(拥有公网IP)下载安装frp(根据你的系统)
2、作为服务端我们需要配置frps.ini文件(简单应用可以不修改,默认即可)
[common]
#与客户端绑定的进行通信的端口
bind_port = 7000
3、保存并运行frp(当前路径下shift+右键–》此处打开命令窗口)
frps.exe -c frps.ini,这是前台启动,后台启动命令为nohup frps.exe -c frps.ini &
其次(重中之重)
配置客户端(内网服务器) frpc.ini文件
[common]
server_addr = 你的服务器公网IP
#server_port:和bind_port要保持一致
server_port = 7000
#local_ip(如果内网服务器ip为静态则要设置为静态ip,而不能是localhost或127.0.0.1)
#local_port:应用发布的端口号
#remote_port:绑定到远程服务器的端口号上(通过访问公网ip+remote_port来访问你的内网项目:39.125.25.125:8086)
#[http]:http是你起的名字,想怎么起就怎么起,见名思义最好,我这里是实现gitee内网穿透给外网访问;
[http]
type = tcp
local_port = 3000
local_ip = 192.168.1.33
remote_port = 8086
实现二:windows远程桌面连接内网电脑
frpc(客户端)与Visitor(访问端)间通过UDP传输(Client于Visitor之间不受服务端带宽限制,主要看Client与Visitor的出口带宽和宽带质量。)
服务器端配置文件:
[common]
#与客户端绑定的进行通信的端口
bind_port = 7000
bind_udp_port = 7001
内网电脑配置:
[common]
server_addr = 服务器ip
server_port = 7000
[p2p_rdp]
#type = xtcp 不够成熟和稳定
type = stcp
sk = 1234
local_ip = 192.168.1.33
local_port = 3389
使用远程桌面的电脑配置:
[common]
server_addr = 服务器ip
server_port = 7000
[RDP_visitor]
type = stcp
role = visitor
server_name = p2p_rdp
#skclient与visitor端认证钥匙
sk = 1234
bind_addr = 127.0.0.1
bind_port = 8888
启动服务端、client端、visitor端frp后,使用远程桌面的电脑打开Windows远程桌面输入 127.0.0.1:8888即可连接到内网的电脑。
接下来介绍下FRP注册为windows服务开机自启动:
下载winsw https://github.com/kohsuke/winsw/releases ,改名为winsw.exe,放到frp目录下
使用编辑器创建utf8编码的文本文件,文件名命名为 winsw.xml
内容:(注意:客户端和服务端 executable、arguments两项分别是 frpc 和 frps 别弄错了)
<service>
<id>frp</id>
<name>frp这里是服务的名称</name>
<description>这里是服务的介绍,随便写</description>
<executable>frpc</executable>
<arguments>-c frpc.ini</arguments>
<onfailure action="restart" delay="60 sec"/>
<onfailure action="restart" delay="120 sec"/>
<logmode>reset</logmode>
</service>
接下来在当前路径下cmd运行
winsw install 安装服务
winsw start 启动服务
卸载服务,命令:
winsw stop
winsw uninstall
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)