FRP实现腾讯云无备案用域名访问
Frp更新项目:
MvsCode/frps-onekey: Frps 一键安装脚本&管理脚本 A tool to auto-compile & install frps on Linux (github.com)
Frps服务端一键配置脚本,Frp最新版本:0.41.0
Frp 是一个高性能的反向代理应用,可以帮助您轻松地进行内网穿透,对外网提供服务,支持 tcp, http, https 等协议类型,并且 web 服务支持根据域名进行路由转发。
- 详情:fatedier (https://github.com/fatedier/frp)
- 此脚本原作者:clangcn (https://github.com/clangcn/onekey-install-shell)
Frps-Onekey-Install-Shell For CentOS/Debian/Ubuntu/Fedora (32bit/64bit)
Install(安装)
Aliyun
wget https://code.aliyun.com/MvsCode/frps-onekey/raw/master/install-frps.sh -O ./install-frps.sh
chmod 700 ./install-frps.sh
./install-frps.sh install
Github
wget https://raw.githubusercontent.com/MvsCode/frps-onekey/master/install-frps.sh -O ./install-frps.sh
chmod 700 ./install-frps.sh
./install-frps.sh install
Uninstall(卸载)
./install-frps.sh uninstall
Update(更新)
./install-frps.sh update
Server management(服务管理器)
Usage: /etc/init.d/frps {start|stop|restart|status|config|version}
腾讯云建立网站以后,如果域名没有备案是不能使用域名访问的。
现在以FRP的方式实现域名访问。有大佬做了FRP服务端的一键脚本,我们拿来使用
首先先看一下有80端口的服务器端口有没有被占用,查一下占用80端口的有哪些服务
netstat -lnp|grep 80
可以看到是frp服务占用了80端口,如果是别的程序占用,我们只要把它进程给结束掉就可以了,比如:
kill -9 24474
然后再配置frp
安装平台:CentOS、Debian、Ubuntu。
防止小白
yum -y install wget
服务端一键脚本
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
卸载
./install-frps.sh uninstall
升级
./install-frps.sh update
服务器管理
Usage: /etc/init.d/frps {start|stop|restart|status|config|version}
开始安装
服务端设置 结束,下面是我腾讯云客户端的
新建一个frpc的目录,把服务端对应的客户端文件复制进来,只需要这两个文件就可以了。
frp下载地址
目前0.39.1,点开以后找到0.20下载Release v0.20.0 · fatedier/frp (github.com)
解压复制这两个文件到腾讯云frpc目录,目录名称无所谓自己建立。
以下是我客户端的配置文件
[common] #服务端地址 server_addr = xxx.xx.xxx.xx #服务端端口 server_port = 5443 #服务端的token token = NhPn4ugFsXUn #名字自己起,不要重复就行了 [web111] #类型是http type = http #腾讯云的ip地址 local_ip = xxx.xxx.xxx.xxx #http的端口,跟服务端对应 local_port = 80 #映射的端口,如果配置了域名这一项就不用填了 remote_port= #绑定的域名(没有域名可填服务器IP) custom_domains = www.xxx.com
如果有需求可以继续编辑ftp、ssh依次类推
[common] server_addr = xxx.xx.xxx.xx server_port = 5443 token = NhPn4ugFsXUn [web111] type = http local_ip = xxx.xx.xxx.xx local_port = 80 remote_port= custom_domains = www.xxx.com [ftp] type = tcp local_ip = xxx.xx.xxx.xx local_port = 21 remote_port= custom_domains = www.xxx.com [ssh] type = tcp local_ip = xxx.xx.xxx.xx local_port = 22 remote_port= custom_domains = www.xxx.com
进入frpc目录并运行测试
cd /frpc
./frpc -c frpc.ini
出现这样的就代表通讯成功
现在开始设置开机启动,以免服务器重启以后自己不运行。
三个关键文件
- frpc (这里指frpc的启动程序)
- frpc.ini (配置文件)
- frpc.service (包装成一种服务)
部署步骤
- 把frpc启动程序frpc,配置文件frpc.ini复制到相应的目录
#这里需要cd到加压缩frp压缩包的文件位置,解压后会看到文件里有frpc的启动程序
sudo cp frpc /usr/local/bin/frpc
sudo mkdir /etc/frpc
sudo cp frpc.ini /etc/frpc/frpc.ini
- 为frpc创建systemd的service文件
sudo vim /usr/lib/systemd/system/frpc.service
- 编辑frpc.service
[unit]
Description=frpc
After=multi-user.targe
[Service]
TimeoutStartSec=30
ExecStart=/usr/local/bin/frpc -c /etc/frpc/frpc.ini
ExecStop=/bin/kill $MAINPID
[Install]
WantedBy=multi-user.target
- 启动frpc服务
sudo systemctl enable frpc
sudo systemctl start frpc
- 查看frpc服务是否生效
sudo systemctl list-units |grep frpc
只要显示frpc.service loaded active running 就表示服务开启成功
- 查看服务日志
sudo systemctl status frpc
按键q退出
结束。