frp 内网穿透 linux部署版
- 前提
- 安装 frp
- 阿里云服务器配置
- 测试服务器配置
- 访问公网
前提
使用 frp,您可以安全、便捷地将内网服务暴露到公网,通过访问公网 IP 直接可以访问到内网的测试环境。准备如下:
- 公网 IP
- 已部署好的测试服务 IP:端口号
- 阿里云服务器
安装 frp
下载:https://github.com/fatedier/frp/releases
将 frp_0.54.0_linux_amd64.tar.gz 分别上传到【阿里云服务器】和【测试服务器】。分别解压:
tar -zxvf frp_0.54.0_linux_amd64.tar.gz
【阿里云服务器】只需要这2个文件
- frps
- frps.toml
【测试服务器】只需要这2个文件
- frpc
- frpc.toml
阿里云服务器配置
- 配置参数
vim frps.toml
# frp监听的端口,默认是7000,可修改
#bindAddr = ""
bindPort = 7000
# 开启Dashboard用于管理和查看服务状态。Dashboard端口、用户名和密码,请改成更复杂的。
webServer.addr = "" # 0.0.0.0代表任何人都可以访问 FRP 管理端
webServer.port = 7500
# dashboard 用户名密码,可选,默认为空
webServer.user = ""
webServer.password = ""
# 授权码,请改成更复杂的,这个token之后在客户端会用到
auth.token = ""
log.to = "./frps.log"
log.level = "info"
log.maxDays = 3
-
开放端口号
登录“阿里云”,找到对应的云服务器 ECS / 安全组,在“入方向”内添加 7000 7500 端口,授权策略是“允许”。 -
配置自启动
把 frps 添加为系统服务。
cd /etc/systemd/system
vim frps.service
内容如下:
[Unit]
Description=frps service
After=network.target syslog.target
Wants=network.target
[Service]
Type=simple
ExecStart=/home/frp/frps -c /home/frp/frps.toml
Restart=always
RestartSec=15s
[Install]
WantedBy=multi-user.target
允许自启动:
systemctl enable frps
- 启动与停止
单独启动:
nohup ./frps -c frps.toml &
systemctl start frps
systemctl stop frps
测试服务器配置
- 配置
vim frpc.toml
#公网IP
serverAddr = ""
serverPort = 7000
transport.tls.force = true
# 授权码
auth.token = ""
# 设置心跳
#auth.additionalScopes = ["HeartBeats"]
# 去除访问限速
#transport.tcpMux = false
# frp日志配置
log.to = "/home/frpc/frpc.log"
log.level = "info"
log.maxDays = 3
[[proxies]]
#测试服务的代号,英文不重复
name = ""
type = "tcp"
#测试服务的IP
localIP = ""
#测试服务的端口号
localPort = 12
#阿里云服务器暴露的端口号
remotePort = 12
[[proxies]]
name = ""
type = "tcp"
localIP = ""
localPort = 13
remotePort = 13
-
阿里云开放端口
登录“阿里云”,找到对应的云服务器 ECS / 安全组,在“入方向”内添加 12 13 端口,授权策略是“允许”。 -
启动
仿照服务端配置。
单独启动:
nohup ./frpc -c frpc.toml &
访问公网
http://xxx.xxx.xxx.xxx:12/xxx
http://xxx.xxx.xxx.xxx:13/xxx
参考资料
[1] 内网穿透之FRP,域名访问本地服务【只看这篇就够了,收藏必备】