搞机之 frp dashboard 访问

0x00 写在前面

继之前 frp 的简单安装及使用之后,也想试试自带的 dashboard。捣鼓了半天,愣是访问不了,记录一下事情经过。

0x01 dashboard 配置

服务端所有的配置都在源码仓库中有详细介绍及示例,可以参考 frps_full_example

这里摘抄 dashboard 部分的配置

# Configure the web server to enable the dashboard for frps.
# dashboard is available only if webServer.port is set.
# 这一项是监听地址,想要只能本地访问就填 127.0.0.1 想要公网访问就填 0.0.0.0
webServer.addr = "0.0.0.0"
webServer.port = 7500

# 用户名密码
webServer.user = "xxxx"
webServer.password = "xxxxxxx"
# webServer.tls.certFile = "server.crt"
# webServer.tls.keyFile = "server.key"
# dashboard assets directory(only for debug mode)
# webServer.assetsDir = "./static"

# Enable golang pprof handlers in dashboard listener.
# Dashboard port must be set first
webServer.pprofEnable = false

配置好后重启 frps 服务即可。

0x02 问题排查

最可能的问题有俩:

  1. 云服务器的安全组出入规则没有开放 dashboard 监听的端口,解决方法是配置一个就行。

  2. 云服务器本机的防火墙没有开放,笔者就是因为这个问题导致一直连不上(其实之前是开了的,结果重装系统后给忘了,又一直记得是开着的,也就没排查这一块,做了半天无用功)

    # 列出当前对外开放的端口
    firewall-cmd --zone=public --list-ports
    # 或者指定端口查询
    firewall-cmd --query-port=7500/tcp --zone=public 
    
    # 开放对应的端口 --permanent 表示永久开启,不加则在重启后关闭
    firewall-cmd --add-port=7500/tcp --zone=public --permanent
    
    # 重新加载
    firewall-cmd --reload
    

0x03 使用域名访问 dashboard

借用 nginx 的反向代理功能,能够将访问指定域名的请求转发到对应的地址。同理,也能给 dashboard 配一个域名,前提是域名已经解析到服务器对应的地址,配置如下:

vim /etc/nginx/conf.d/dashboard.conf

server {
	listen 80;
	server_name "frp-dashboard.xxxxxxxxx.com";
	location / {
		proxy_pass http://127.0.0.1:7500;
                proxy_redirect off;
                proxy_set_header X-Real-IP $remote_addr;
	}
}

systemctl restart nginx

这样既可通过 frp-dashboard.xxxxxxxxx.com 访问 dashboard 了,注意:80 端口需要确认开放

0x04 写在后面

nginx 配置块配置项具体含义可参见 Nginx配置文件详解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值