centos—frp搭建

Frp

FRP作为内网穿透技术,是一个开源、简洁易用、高性能的反向代理应用。它支持TCP、UDP、HTTP、HTTPS等多种协议,能够将内网服务以安全、便捷的方式通过具有公网IP节点的中转暴露到公网。FRP由fatedier团队开发,采用Golang语言编写,支持跨平台部署和使用。它的原理是利用反向代理技术将公网请求转发至内网服务器上,并将内网服务器的响应再次转发至公网请求者。

准备

这里写的是用centos搭建frp,所以我搞了一台每个月4块3毛5的服务器

地点US,仅用于本站的frps节点。

服务器测试数据如下

看样子还不错吧,4块钱也不求什么自行车了,做个网络转发还是可以的。

frps搭建

官网链接,自己去里面看全部文档,这里仅展示个过程。frp (gofrp.org)

因为我的服务器是Centos系统的,属于linux,所以我从他Release里面下载了对应的版本。

我下载了目前最新版的“frp_0.56.0_linux_amd64”

下载后的文件,frps是服务端,frpc是客户端,这里我们先用frps。

为了方便,直接用一个shell软件上传了。

这里我在根目录创建了一个frp文件夹,然后把frps和frps.toml上传上去。

然后编辑frps.toml

bindPort = 7000
auth.token ="token" 
vhostHTTPPort = 80
vhostHTTPSPort = 443

自己把“token”中的token改成自己的密码,后面对接要用。

 

然后测试一下./frps -c ./frps.toml 这个能不能用

先cd /frp 进目录 执行上面那个代码

然后发现权限不足,我这直接给他所有权限。

再次执行一下看看,

ok能运行

然后ctrl+c取消一下运行

我们去用其他方式运行他

我们用systemd 来运行他。

先安装一下

yum install systemd

然后使用文本编辑器 (如 vim) 在 /etc/systemd/system 目录下创建一个 frps.service 文件,用于配置 frps 服务。

sudo vim /etc/systemd/system/frps.service

我这遇到vim没安装

我们执行yum install vim 去安装一下

安装完毕后我们再次执行一下刚刚那个代码

vim小知识:键盘属于英文状态,按“i”就是编辑模式,如果想要退出编辑模式,按“Esc”+“:”+“wq”,也就是“Esc+:+wq”

如果还是看不懂可以去搜一下vim用法

我们粘贴下面这个代码进去

[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target

[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /frp/frps -c /frp/frps.toml

[Install]
WantedBy = multi-user.target

退出保存

使用 systemd 命令管理 frps 服务

 

# 启动frp
sudo systemctl start frps
# 停止frp
sudo systemctl stop frps
# 重启frp
sudo systemctl restart frps
# 查看frp状态
sudo systemctl status frps

设置 frps 开机自启动

sudo systemctl enable frps

OK,frps就搭建好了。

frpc搭建

这里我的主服务器用的也是Centos系统,所以刚刚下载的“frp_0.56.0_linux_amd64”中,直接用frpc和frpc.toml文件就行了

同理,我在根目录创建了frp文件夹,后面这个frp3只是我作为第三个节点的名称,可以忽略

然后我们编辑frpc.toml

因为我用这个frp只是作为http的转发,所以就只添加相关代码。

如果需要实现其他功能,可以去官方文档里面找。

serverAddr = "x.x.x.x"
serverPort = 7000
auth.token = "token"

[[proxies]]
name = "web"
type = "http"
localPort = 80
customDomains = ["www.yourdomain.com"]

[[proxies]]
name = "web2"
type = "http"
localPort = 8080
customDomains = ["www.yourdomain2.com"]

OK,我的大概长这样

保存好,然后测试一下

又遇到权限不足,我们直接满足它。

OK,看样子可以的。

ctrl+c 关闭一下它,我们用frps同样的方式来运行它。

我们用systemd 来运行他。

先安装一下

yum install systemd

然后使用文本编辑器 (如 vim) 在 /etc/systemd/system 目录下创建一个 frps.service 文件,用于配置 frps 服务。

sudo vim /etc/systemd/system/frpc.service

我这遇到vim没安装

我们执行yum install vim 去安装一下

安装完毕后我们再次执行一下刚刚那个代码

vim小知识:键盘属于英文状态,按“i”就是编辑模式,如果想要退出编辑模式,按“Esc”+“:”+“wq”,也就是“Esc+:+wq”

如果还是看不懂可以去搜一下vim用法

我们粘贴下面这个代码进去

[Unit]
# 服务名称,可自定义
Description = frp server
After = network.target syslog.target
Wants = network.target

[Service]
Type = simple
# 启动frps的命令,需修改为您的frps的安装路径
ExecStart = /frp/frpc -c /frp/frpc.toml

[Install]
WantedBy = multi-user.target

退出保存

使用 systemd 命令管理 frps 服务

# 启动frp
sudo systemctl start frpc
# 停止frp
sudo systemctl stop frpc
# 重启frp
sudo systemctl restart frpc
# 查看frp状态
sudo systemctl status frpc

设置 frpc 开机自启动

sudo systemctl enable frpc

OK,frpc就搭建好了。

阅读剩余
THE END