300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > 【保姆级】阿里云服务器frp内网穿透教程

【保姆级】阿里云服务器frp内网穿透教程

时间:2022-08-17 13:45:58

相关推荐

【保姆级】阿里云服务器frp内网穿透教程

背景1:

去年买了一台阿里云服务器,轻量应用服务器,2核4G.个人比较喜欢嵌入式,开发板也不少,但是开发板连接路由器后内次都要看一下IP然后去连接(虽然可以在路由器上控设置固定IP),然后最近突发奇想,使用阿里云服务器的公网IP作为跳板实现frp内网穿透,实现公网IP+端口随时随地就能控制你的开发板[nice.jpg],也能通过公网IP+端口访问你的电脑等等,感觉特别好玩,联想起huashengke的实现原理好像也是这样。

背景2:

就在前不久,感觉学校的内网把我的公网IP给拦截了,只要是使用学校的内网都ping不通,但手机流量可以访问(阿巴阿巴阿巴我干了啥子),然后就借用舍友的服务器作为跳板去访问我的服务器了,此时决定写下该frp教程

步骤如下:下载源码、部署服务器端、部署客户端。

步骤1:源码准备

看准你的系统是什么,我的系统是centos7,下载的是linux_amd64,如果想在电脑上实现就用windows,按需下载。

[root@Fourth ~]# uname -a........................................ x86_64 x86_64 x86_64 GNU/Linux

!!!githup地址:/fatedier/frp/releases

将对应压缩包上传到服务器,然后解压

tar -zxvf frp_0.42.0_linux_amd64.tar.gzcd frp_0.42.0_linux_amd64

步骤2:服务器端配置

1、修改frps.ini

[root@Fourth frp_0.42.0_linux_amd64]# vi frps.ini[common]bind_port = 7000 #这个一般不要改它dashboard_port = 7500 # 设置仪表盘端口# 设置仪表盘访问的用户名密码dashboard_user = admindashboard_pwd = admin

2、开放7000、7500端口,重启防火墙(更多防火墙操作见 防火墙篇)

firewall-cmd --permanent --zone=public --add-port=7000/tcpfirewall-cmd --permanent --zone=public --add-port=7500/tcpsystemctl reload firewalld

3、阿里云控制台开放7000、7500端口

4、部署frp

./frps -c frps.ini

5、浏览器查看部署情况

http://你的ip:7500

步骤3:客户端配置

1、参照步骤1和2将对应的githup源码压缩包放在客户端上,解压。

2、修改frpc.ini

[root@Fourth frp_0.42.0_linux_amd64]# vi frpc.ini[common]server_addr = 服务器的公网IPserver_port = 7000[sshself] #这个名字可以随便改type = tcp #通常tcp,udp按需修改local_ip = 127.0.0.1 #一般不修改local_port = 22 #外界连接本机的哪个端口remote_port = 15000 #外界可以通过哪个端口访问进来#外界通过 公网IP + remote_port ---访问---> local_ip + local_port #如:访问1.2.3.4:15000 实质访问 127.0.0.1:22

3、客户端部署frp

./frpc -c frpc.ini

连接成功会有相应的提示,如果连接失败请检查以上步骤

.

.

.

此时已经基本部署完毕,但并没有什么实质的功能,因为在服务器端还没有开放可供客户端连接的端口,需要参照服务器端开放相应的端口给客户端,如上面步骤提到的15000端口

然后可以通过公网IP+端口访问你的开发板或者对应的服务了

附加操作

1、将服务器端、客户端程序放到后台运行

服务器端nohup ./frps -c frps.ini &客户端nohup ./frpc -c frpc.ini &

2、将frp放至开机自启动

sudo vi /etc/rc.local #自行修改为绝对路径nohup /root/frp/frpc -c /root/frp/frpc.ini &

3、如果在客户端需要进行频繁修改与重新部署,参考以下一键重新部署脚本,自行修改路径

vi rebootfrp.sh#!/bin/shNAME='/root/frp/frp_0.42.0_linux_amd64/frpc.ini'echo $NAMEID=`ps -ef | grep "$NAME" | grep -v "$0" | grep -v "grep" | awk '{print $2}'`echo $IDecho "---------------"for id in $IDdokill -9 $idecho "killed $id"doneecho "---------------"cdnohup /root/frp/frp_0.42.0_linux_amd64/frpc -c /root/frp/frp_0.42.0_linux_amd64/frpc.ini &echo "------reboot---------"

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。