搭建frp服务,实现内网穿透服务 [Linux ],win实现外网到内网的在线访问
一:frp简介
frp 是什么?
frp 采用 Golang 编写,支持跨平台,仅需下载对应平台的二进制文件即可执行,没有额外依赖。
frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
市面上一些主流的内网穿透工具有:Ngrok,Natapp,花生壳,Ssh、autossh,Frp,Lanproxy,Spike。
这里介绍使用frp工具。
二:安装frp
1:准备
一台公网服务器(配置无要求网络稳定就行),服务器端,如公网IP:39.156.66.10。
内网客户端(准备要穿透出去的设备)我用的VM虚拟机,客户端,如内网IP:192.168.3.103。
2:下载解压安装包(如果你是windows服务器就下载frp_0.45.0_darwin_arm64.tar.gz )(linux就下载frp_0.45.0_linux_amd64.tar.gz)
gitlab官方开源地址:https://github.com/fatedier/frp,可以在 Release 页面中下载到最新版本的客户端和服务端二进制文件,所有文件被打包在一个压缩包中。
找到自己Linux合适的版本,下载,主流Linux版本基本上都是amd64。
下面是linux SSH 会话:
下载frp0.45
wget https://github.com/fatedier/frp/releases/download/v0.45.0/frp_0.45.0_linux_amd64.tar.gz
解压frp
tar -zxvf frp_0.45.0_linux_amd64.tar.gz
进入目录
cd frp_0.44.0_linux_amd64/
输入 LL 或者LS 命令查看文件列表
root@ubuntu:~/frp_0.45.0_linux_amd64# ls
frpc frpc_full.ini frpc.ini frps frps_full.ini frps.ini LICENSE
三:配置服务器端和客户端,及启动
1:配置服务器端
这里是为服务端配置frp 只关注frps和frps.ini即可,原始最简单配置为。
cat frps.ini
[common]
#隧道通道,服务器和客户端通过此端口通讯
bind_port = 7000
最简单也可以直接使用,先不配置其他端口测试使用。
2:配置客户端
只关注frpc和frpc.ini即可,修改frpc.ini。
原始配置已经有ssh的端口127.0.0.1配置,所以修改server_addr为当前服务器IP即可。
[common]
server_addr = 39.156.66.10
server_port = 7000
[ssh]
type = tcp
#本机IP
local_ip = 127.0.0.1
#本机需要映射的端口3389
local_port = 3389
#远程服务器映射的端口为3389"为win默认远程桌面端口 这里作为测试用"
remote_port = 3389
3:分别启动服务器端和客户端
注:服务器,如有防火墙,请开启7000端口和有需要的端口。
服务器运行启动:
./frps -c frps.ini
VM客户端运行启动:
./frpc -c frpc.ini
到此直接 运行远程桌面 mstsc 39.156.66.10 连接远程桌面
demo 测试OK
四:升级配置
原始配置简单,但是如果需要其他功能,可自行添加,如下:
1:服务器端配置
vim frps.ini
修改如下:(更多配置自行百度)
[common]
bind_port = 7000
#http服务端口
vhost_http_port = 8088
#https服务端口
vhost_https_port = 8443
# dashboard网页管理界面,以及设置账户密码(非必须,未配置则直接进入)
dashboard_port = 7500 #web面板端口
dashboard_user = admin
dashboard_pwd = admin
#客户端需要设置一样的token值才能鉴权通过
token = 87654321
2:客户端配置
我这客户端是Windows直接记事本打开了
[common]
server_addr = 39.156.66.10 #公网服务器ip
server_port = 7000 #公网frp端口
#token和服务器一致
token = 87654321
[ssh]
type = tcp
#本机IP
local_ip = 127.0.0.1
#本机需要映射的端口22
local_port = 22
#远程服务器映射的端口为6000
remote_port = 6000
[web]
type = http
#本地http服务端口,默认80,按需配置
local_port = 80
# 绑定域名,注:配置http,必须需要域名,否则报错。如没有,可采用普通的tcp模式映射。
custom_domains = xxx.com
[zabbix]
type = tcp
local_ip = 127.0.0.1
#本机需要映射的端口22
local_port = 10050
#远程服务器映射的端口为6000
remote_port = 11050
3:启动测试
分别启动客户端和服务器端
./frps -c frps.ini
1
客户端运行启动:
./frpc -c frpc.ini
~~~完~~~
作者:89391311
链接:https://www.csev.cn/share/jiqiao/20240328111.html
来源:彩色动力-测试分享
版权声明:本文欢迎任何形式转载,转载时完整保留本声明信息(包含原文链接、原文出处、原文作者、版权声明)即可。本文后续所有修改都会第一时间在原始地址更新。
共有 0 条评论