frp

SSH连接上外网主机后,使用wget指令下载frp。

wget https://github.com/fatedier/frp/releases/download/v0.29.0/frp_0.29.0_linux_amd64.tar.gz
windows: https://github.com/fatedier/frp/releases/download/v0.29.0/frp_0.29.0_windows_amd64.zip
 

使用tar指令解压tar.gz文件

tar -zxvf frp_0.20.0_linux_amd64.tar.gz

使用cd指令进入解压出来的文件夹

cd frp_0.20.0_linux_amd64/

外网主机作为服务端,可以删掉不必要的客户端文件,使用rm指令删除文件。

rm -f frpc
rm -f frpc.ini

接下来要修改服务器配置文件,即frps.ini文件。使用vi指令对目标文件进行编辑。

vi frps.ini

打开frps.ini后可以看到默认已经有很多详细的配置和示范样例,该文章仅以达到内网穿透为目的,所以这里选择删掉或注释掉里面的所有内容,然后根据群晖的情况,按照官方的中文文档添加以下配置。(这里的操作都使用vi命令,关于vi命令的使用方式这里不作详细介绍,可以自行搜索相关使用方法。)

[common]
bind_port = 7000
vhost_http_port = 8080

[common]部分是必须有的配置,其中bind_port是自己设定的frp服务端端口,vhost_http_port是自己设定的http访问端口。

保存上面的配置后,使用以下指令启动frp服务端。(如果需要在后台运行,请往下翻阅关于后台运行的部分。)Bash

./frps -c ./frps.ini

服务端的工作就到此结束了。

客户端

客户端前面的操作和服务端是一模一样的,这里不一一解释。

wget  https://github.com/fatedier/frp/releases/download/v0.20.0/frp_0.20.0_linux_amd64.tar.gz
tar -zxvf frp_0.20.0_linux_amd64.tar.gz
cd frp_0.20.0_linux_amd64
rm -f frps
rm -f frps.ini
vi frpc.ini

客户端的配置如下

[common]
server_addr = x.x.x.x
server_port = 7000

[ssh]
type = tcp
local_ip = 127.0.0.1
local_port = 22
remote_port = 6000

[web]
type = http
local_port = 80
custom_domains = web1.ccqq.net

上面的配置和服务端是对应的。

[common]中的server_addr填frp服务端的ip(也就是外网主机的IP),server_port填frp服务端的bind_prot。 

保存配置,输入以下指令运行frp客户端。(同样如果需要在后台运行,请往下翻阅关于后台运行的部分。)Bash

./frpc -c ./frpc.ini

此时在服务端会看到”start proxy sucess”字样,即连接成功。

 

让frp在后台运行

使用systemctl来控制启动

这个方法比较好用,很方便 

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

在frps.service里写入以下内容

[Unit]
Description=frps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
#启动服务的命令(此处写你的frps的实际安装目录)
ExecStart=/root/frps/frps -c /root/frps/frps.ini
[Install]
WantedBy=multi-user.target

然后就启动frps

sudo systemctl start frps

再打开自启动 

sudo systemctl enable frps

如果要重启应用,可以这样,sudo systemctl restart frps

如果要停止应用,可以输入,sudo systemctl stop frps

如果要查看应用的日志,可以输入,sudo systemctl status frps

—————–end—-