什么叫“内网穿透”?
假如我在局域网中有一台电脑,并且部署了一些web服务希望所有人都能访问它。但这台电脑只有局域网ip,并没有公网ip,那么只有同一局域网内的设备才能找到这台电脑,而其他设备最多只能找到路由器,但却进不了你的局域网。
那么就需要完成内网穿透了。
参考:
https://www.zhihu.com/question/63098230
前置的要求:
1、一台VPS服务器(Linux CentOS 7)
2、XShell(ssh工具)
VPS的配置推荐:1个CPU核心(2.3-3.6GHz v3) 1G运行内存,带宽越大越好
1、通过ssh连接服务器

打开XShell,在小黑窗里输入:ssh 你的服务器ip ,ssh的端口默认22,没改过端口的不用填写
样例:
ssh 123.123.123.123
出现这个页面输入登录名称,默认是root :

出现这个页面的时候输入密码,一般在买好的服务器的管理页面里:

完成的效果:

2、在服务器端安装Frps
1.下载frp:
wget https://github.com/fatedier/frp/releases/download/v0.37.0/frp_0.37.0_linux_amd64.tar.gz
*一般服务器默认带有wget,没有wget使用:“apt -y install wget” 安装wget
2.解压压缩包:
tar -zxvf frp_0.37.0_linux_amd64.tar.gz
3.将解压好的文件移动
mv frp_0.37.0_linux_amd64 /usr/local/frp
4.进入刚才移动的文件所在的文件夹
cd /usr/local/frp/
5.修改Frps的配置文件
vim frps.ini
打开后的界面:

*没有上面的配置看下面
*按下i才能开启编辑,Ctrl+ins 才能粘贴(Xshell)
配置:
[common]
#Frp服务的端口:
bind_port = 7000
#Frp服务的验证方式(不用改,默认token就行)
authentication_method = token
#你的Token(密码)
token = abcd1234
#监听的ip(不用改)
dashboard_addr = 0.0.0.0
#管理面板端口(默认7500不用改)
dashboard_port = 7500
#管理面板用户名
dashboard_user = admin
#管理面板密码
dashboard_pwd = admin
#HTTP网页穿透的端口
vhost_http_port = 80
#HTTPS网页穿透的端口
vhost_https_port = 443
根据自己的情况改
改好了直接按下ESC,直接按下Shift+;、w、q 这三个键,退出编辑模式
6.启动Frps
nohup ./frps -c frps.ini & > /dev/null 2> /dev/null &
附:关闭Frps
ps -ef | grep frp
运行效果:

第二个数值就是PID:

关闭Frps:
kill -9 【PID】
示例:
kill -9 6305
3、在客户端(本地)配置Frpc
1.从Github下载Frpc,下载后解压到文件夹里
https://github.com/fatedier/frp/releases

2.配置Frpc.ini
*避免选错,建议把所有frps的文件和exe都删除

可以根据Frpc_full.ini查看更多的配置
案例:
[common]
#服务器的IP
server_addr = 123.123.123
#服务器配置的端口
server_port = 7000
#服务器配置的Token(密码)
token = abcd1233
#这个案例是http网页的
#映射类型,详见frpc_full.ini type = http #需要映射的本地服务ip local_ip = 192.168.1.6 #需要映射的本地服务端口 local_port = 80 #映射绑定的域名,没有域名可以直接写你的服务器IP custom_domains = 123.123.123
3.在文件夹里打开cmd窗口启动frpc.exe


4、完成
http(s)连接访问:
http(s)://你的服务器的IP:你设置的vhost_http_port(默认80)或者vhost_https_port(默认443)
能够访问到内网界面,就已经全部完成了,上述内容有不对的欢迎在评论区指出哦~
Comments 1 条评论
Csdn我爱你,https://blog.csdn.net/Pythonwill/