frp的作用
1.利用处于内网或防火墙后的机器,对外网环境提供 http 或 https 服务。
2.对于 http, https 服务支持基于域名的虚拟主机,支持自定义域名绑定,使多个域名可以共用一个80端口。
3.利用处于内网或防火墙后的机器,对外网环境提供 tcp 和 udp 服务,例如在家里通过 ssh 访问处于公司内网环境内的主机。
服务端配置
上传linux版frp到公网服务器。
解压缩
进入frp_0.39.1_linux_amd64目录下,修改frps.ini文件
cd frp_0.39.1_linux_amd64/
vi frps.ini
[common]
# frp监听的端口,默认是7000,可以改成其他的
bind_port = 7000
# 授权码,请改成更复杂的
token = 52010 # 这个token之后在客户端会用到
# frp管理后台端口,请按自己需求更改
dashboard_port = 7500
# frp管理后台用户名和密码,请改成自己的
dashboard_user = admin
dashboard_pwd = admin
enable_prometheus = true
# frp日志配置
log_file = /var/log/frps.log
log_level = info
log_max_days = 3
设置和启动frp服务
sudo mkdir -p /etc/frp
sudo cp frps.ini /etc/frp
sudo cp frps /usr/bin
sudo cp systemd/frps.service /usr/lib/systemd/system/
sudo systemctl enable frps
sudo systemctl start frps
如果上述命令依次执行完没有任何错误出现,则说明启动成功。
防火墙开放端口
也可执行以下命令开放端口
# 添加监听端口
sudo firewall-cmd --permanent --add-port=7000/tcp
# 添加管理后台端口
sudo firewall-cmd --permanent --add-port=7500/tcp
sudo firewall-cmd --reload
注意:a. 如果是ubuntu或者centos 6,请使用ufw/iptables工具放行端口;
b. 7000和7500两个端口分别对应frps.ini配置中的bind_port和dashboard_port
验证服务端是否启动成功
访问:http://服务器IP:后台管理端口” ,输入用户名和密码可以查看连接状态 如:http://yourip:7500,用户名和密码分别对应frps.ini文件中的dashboard_user和dashboard_pwd 登录之后界面如下:
客户端配置
解压frp
首先删掉 frps 开头文件文件,然后再进行配置(frps是服务器端文件)
编辑 frpc.ini
[common]
server_addr = 124.220.180.128 #公网服务器ip
server_port = 7000 #与服务端bind_port一致
[yclj]
type = tcp
local_ip = 127.0.0.1
local_port = 22 # 22是Linux的远程连接端口
remote_port = 6000 # 远程服务器端口(自定义)