FRP实现内网穿透

1、什么是内网穿透

简单说就是内网中的一台计算机具有自己的内部IP,外网的计算机具有公共的IP,而内部IP是无法直接通过外网来访问的,这就需要一种方式来将外网的IP转化为内部的合法IP来进行合法访问。

2、内网穿透过程

1)在具有公网IP的服务器或VPS上安装运行 frp 的服务端程序frps

2)在处于内网的目标主机上面安装运行 frp 的客户端程序 frpc

3)User 就可以通过公网服务器来实现内网穿透从而访问内网主机

3、配置过程

本人购买的是阿里云服务器,Cenos系统,会获得一个公网IP:xxx.xx.xxx.xxx,内网服务器是Ubuntu系统

1)在公网和内网服务器上下载frp安装包并解压

wget https://github.com/fatedier/frp/releases/download/v0.38.0/frp_0.38.0_linux_amd64.tar.gz tar -xzvf frp_0.38.0_linux_amd64.tar.gz

ps:在公网服务器可以删除其他文件,只保留 frps、frps.ini,同理,在内网服务器上可以只保留frpc、frpc.ini

2)在公网服务器配置frps

进入frps文件夹后

vi frps.ini

输入以下内容

[common] bind_port = 7000 dashboard_port = 7500 dashboard_user = dashboard_user_name dashboard_pwd = dashboard_pwd_value

ps:

[common]部分是必须有的配置

其中bind_port是自己设定的frp服务端端口

dashboard_port_number 改为一个特定的端口号,如8000,如此便可以通过 http://yourip:8000 来访问 frps 的网页控制台页面.

dashboard_user 和 dashboard_pwd要填写一个自定义的用户名和密码,用于在访问 frps 控制台页面时输入.

保存上面的配置后,使用以下指令启动frp服务端。

nohup ./frps -c ./frps.ini &

在安全组规则开启端口后,浏览器输入“IP:7500”可以看到你的FRP的后台,如下

FRP实现内网穿透插图

3)在内网服务器上配置frpc

修改配置文件:

vi frpc.ini

写入下面的内容

[common] server_addr = x.x.x.x #frp服务端地址,可以填ip或者域名,这里假设为x.x.x.x server_port = 7000 #frp服务端端口,即填写服务端配置中的 bind_port [ssh] type = tcp #连接类型,填tcp或udp local_ip = 127.0.0.1 #填127.0.0.1或内网ip都可以 local_port = 22 #需要转发到的端口,ssh端口是22 remote_port = 6000 #frp服务端的远程监听端口,即你访问服务端的remote_port就相当于访 #问客户端的 local_port,如果填0则会随机分配一个端口

ps:配置时,把注释部分消去

然后输入下面指令运行:

nohup ./frpc -c ./frpc.ini &

查看信息,出现success表示成功

4)在云服务器上添加安全组规则

FRP实现内网穿透插图1

最后尝试在控制台下输入下面一行:

ssh -p 6000 root@ip

然后输入密码,查看是否能登录上去

5)vscode remote配置(网上有相应资料,待补充。。。

建议使用密钥连接。

相关链接:

1. 树莓派使用FRP实现内网穿透教程 – 云+社区 – 腾讯云

2. https://zhuanlan.zhihu.com/p/138092534

3. VScode Remote 远程开发与调试(告别SSH)_Tinywan-CSDN博客

4. vscode ssh远程连接

原文链接:https://blog.csdn.net/qq_40965033/article/details/103939801

© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享