frp实现内网穿透Linux->Linux(详细)

准备

一台公网服务器(配置无要求网络稳定就行)
内网客户端(准备要穿透出去的设备)

服务端(公网服务器)

安装frp

frp项目地址https://github.com/fatedier/frp

在这里插入图片描述
找到最新发布的版本
在这里插入图片描述
不知道公网服务器对应那个架构可以输入

arch

来进行查询自己的架构
x86_64 对应frp_0.38.0_linux_amd64.tar.gz

建议直接下载到主机后用ftp拖到服务器
解压

tar -zxvf frp_0.38.0_linux_amd64.tar.gz

进入文件夹

cd frp_0.38.0_linux_amd64/

在这里插入图片描述
前两个文件(s结尾代表server)分别是服务端程序和服务端配置文件,后两个文件(c结尾代表client)分别是客户端程序和客户端配置文件。

这里是为服务端配置frp 只关注frpsfrps.ini即可

frps配置

对frps.ini文件进行配置

vim frps.ini

在这里插入图片描述
保存退出
bind_port:表示用于客户端和服务端连接的端口,这个端口号我们之后在配置客户端的时候要用到

dashboard_port:是服务端仪表板的端口,若使用7500端口,在配置完成服务启动后可以通过浏览器访问 x.x.x.x:7500 (其中x.x.x.x为公网服务器的IP)查看frp服务运行信息

token是:用于客户端和服务端连接的口令,请自行设置并记录,稍后会用到

dashboard_userdashboard_pwd:表示打开仪表板页面登录的用户名和密码,自行设置即可

因用到了7000端口这里我们找到服务器的策略组将6000-8000端口开放
在这里插入图片描述

运行frps

./frps -c frps.ini

出现以下输出说明正常运行
在这里插入图片描述前台多少有点不方便 既然配置没有问题的话我们用nohup将其在后台运行

nohup ./frps -c frps.ini &

nohup
查看后台进程看有没有问题
在这里插入图片描述
这样服务端frp的配置就完成了

通过访问公网7500端口进入后台管理页面
在这里插入图片描述

客户端

安装frp

步骤同服务端相同自行操作即可

配置frpc

cd frp_0.38.0_linux_amd64/

在客户端这边我们只需要关注frpcfrpc.ini就可以了

vim frpc.ini

在这里插入图片描述
保存退出
server_addr:为服务端IP地址,填入即可。
server_port:为服务器端口,填入你设置的端口号即可,如果未改变就是7000
token:是你在服务器上设置的连接口令,原样填入即可。

[xxx]:表示一个规则名称,自己定义,便于查询即可。
type:表示转发的协议类型,有TCP和UDP等选项可以选择,如有需要请自行查询frp手册。
local_port:是本地应用的端口号,按照实际应用工作在本机的端口号填写即可。
remote_port:是该条规则在服务端开放的端口号,自己填写并记录即可

这样客户端就配置完成了

运行frpc

一样挂在后台运行即可

nohup ./frpc -c frpc.ini &

查看后台进程

ps -aux|grep fr

在这里插入图片描述
没啥问题的话 我们就可以直接从公网ssh连接到我们的服务端了

测试

ssh连接在这里插入图片描述在这里插入图片描述
可以看到我们成功连接到我们的内网服务器了!!!

这就是使用frp实现内网穿透的全部过程了
不得不说frp还是非常牛逼的

此贴只涉及简单的ssh连接 其他的就不说了

frp中文文档

想学习的话frp是有中文文档的

https://gofrp.org/在这里插入图片描述

参考

https://sspai.com/post/52523

https://www.bilibili.com/video/BV1z5411E7rY?from=search&seid=4822128441111781687&spm_id_from=333.337.0.0

https://www.bilibili.com/video/BV1J74117714?from=search&seid=4822128441111781687&spm_id_from=333.337.0.0

  • 17
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
本处高能:因Frp作者更换新的模块,导致Frp v0.18.0与之前的版本不兼容,如果升级请服务器端同步升级。升级命令: wget --no-check-certificate https://raw.githubusercontent.com/clangcn/onekey-install-shell/master/frps/install-frps.sh -O ./install-frps.sh bash install-frps.sh update 首先感谢@sadoneli S大的帮助完成了frp插件web页面的制作。 WARNING:请仔细阅读完本教程1楼和2楼后再动手安装! frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。 *因为frp是go语言写的,所以在路由器上使用的时候,请使用虚拟内存,请使用虚拟内存,请使用虚拟内存。 脚本是业余爱好,英文属于文盲,写的不好,欢迎您批评指正。 安装平台:CentOS、Debian、Ubuntu。 已测试过的平台: CentOS 6 32/64bit CentOS 7 32/64bit Debian 6 32/64bit Debian 7 32/64bit Debian 8 32/64bit Ubuntu 14 32/64bit 一、安装命令这个命令是在你自己的服务器上运行的!是在你自己的服务器上运行的!是在你自己的服务器上运行的!不是在路由器里运行的!不是在路由器里运行的!不是在路由器里运行的! wget --no-check-certificate https://raw.githubusercontent.com/clangcn/onekey-install-shell/master/frps/install-frps.sh -O ./install-frps.sh chmod 700 ./install-frps.sh ./install-frps.sh install 二、安装步骤 Loading network version for frps, please wait... frps Latest release file frp_0.8.1_linux_amd64.tar.gz #此步骤会自动获取frp最新版本,自动操作,无需理会 Loading You Server IP, please wait... You Server IP:12.12.12.12 #自动获取你服务器的IP地址 Please input your server setting: Please input frps bind_port [1-65535](Default Server Port: 5443): #输入frp提供服务的端口,用于服务器端和客户端通信 Please input frps dashboard_port [1-65535](Default dashboard_port: 6443): #输入frp的控制台服务端口,用于查看frp工作状态 Please input frps vhost_http_port [1-65535](Default vhost_http_port: 80): #输入frp进行http穿透的http服务端口 Please input frps vhost_https_port [1-65535](Default vhost_https_port: 443): #输入frp进行https穿透的https服务端口 Please input privilege_token (Default: WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq): #输入frp服务器和客户端通信的密码,默认是随机生成的 Please input frps max_pool_count [1-200](Default max_pool_count: 50): #设置每个代理可以创建的连接池上限,默认50 ##### Please select log_level ##### 1: info 2: warn 3: error 4: debug ##################################################### Enter your choice (1, 2, 3, 4 or exit. default [1]): #设置日志等级,4个选项,默认是info Please input frps log_max_days [1-30] (Default log_max_days: 3 day): #设置日志保留天数,范围是1到30天,默认保留3天。 ##### Please select log_file ##### 1: enable 2: disable ##################################################### Enter your choice (1, 2 or exit. default [1]): #设置是否开启日志记录,默认开启,开启后日志等级及保留天数生效,否则等级和保留天数无效 设置完成后检查你的输入,如果没有问题按任意键继续安装 ============== Check your input ============== You Server IP : 12.12.12.12 Bind port : 5443 Dashboard port : 6443 vhost http port : 80 vhost https port: 443 Privilege token : WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq Max Pool count : 50 Log level : info Log max days : 3 Log file : enable ============================================== 安装结束后显示: Congratulations, frps install completed! ============================================== You Server IP : 12.12.12.12 Bind port : 5443 Dashboard port : 6443 vhost http port : 80 vhost https port: 443 Privilege token : WEWLRgwRjIJVPx2kuqzkGnvuftPLQniq Max Pool count : 50 Log level : info Log max days : 3 Log file : enable # 将上面信息添加到你的路由器frp穿透插件中吧 ============================================== frps Dashboard: http://12.12.12.12:6443/ # 这个是frp控制台访问地址 ============================================== 三、更新命令 ./install-frps.sh update 四、卸载命令 ./install-frps.sh uninstall 五、服务器端管理命令 /etc/init.d/frps start /etc/init.d/frps stop /etc/init.d/frps restart /etc/init.d/frps status /etc/init.d/frps config /etc/init.d/frps version 七、更多帮助请移步官方帮助文件 https://github.com/fatedier/frp/blob/master/README_zh.md
frp是一款开源的高性能的反向代理软件,可以实现内网穿透。下面是在Linux上使用frp实现内网穿透的步骤: 1. 下载frp 可以从frp官网下载对应的版本。比如,下载linux_amd64版本的frp: ``` wget https://github.com/fatedier/frp/releases/download/v0.37.1/frp_0.37.1_linux_amd64.tar.gz ``` 2. 解压缩frp 使用以下命令解压缩frp文件: ``` tar -zxvf frp_0.37.1_linux_amd64.tar.gz ``` 3. 配置frp 在解压后的文件夹中,可以看到frp的配置文件夹`frp_0.37.1_linux_amd64/frp_0.37.1_linux_amd64`。进入该文件夹,可以看到两个配置文件:`frpc.ini`和`frps.ini`。 - `frpc.ini`是客户端配置文件,用于将内网服务器映射到公网上。 - `frps.ini`是服务端配置文件,用于接收来自客户端的请求,并将其转发到内网服务器上。 我们需要修改`frpc.ini`配置文件,将其中的以下几个参数设置为正确的值: ``` [common] server_addr = x.x.x.x # 公网服务器IP地址 server_port = 7000 # 公网服务器端口 token = 12345678 # 用于认证的token [web] type = http local_port = 80 # 内网服务器的端口 custom_domains = example.com # 绑定的域名 ``` 其中,`x.x.x.x`是公网服务器的IP地址,`12345678`是用于认证的token,`80`是内网服务器的端口,`example.com`是绑定的域名。 4. 启动frp 在配置好`frpc.ini`文件后,使用以下命令启动frp客户端: ``` ./frpc -c ./frpc.ini ``` 如果一切正常,可以看到类似以下的输出信息: ``` 2021/05/06 15:05:40 [I] [proxy_manager.go:144] [3c4f8980] proxy added: [web] 2021/05/06 15:05:40 [I] [control.go:200] [3c4f8980] [web] login to server success, get run id [3c4f8980] 2021/05/06 15:05:40 [I] [control.go:256] [3c4f8980] [web] start proxy success ``` 5. 测试frp 在浏览器中输入绑定的域名,如果能够访问到内网服务器上的页面,说明内网穿透已经成功。 以上就是在Linux上使用frp实现内网穿透的步骤,希望对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值