美文网首页
为filebrowser启用reCAPTCHA验证码

为filebrowser启用reCAPTCHA验证码

作者: 小半_7a2b | 来源:发表于2019-08-04 20:22 被阅读0次

    filebrowser一直是自己比较喜欢的一个云盘程序,使用Go语言编写,全平台支持,界面美观,部署简单迅速。官方于2018年9月宣布由于缺少人手“不再积极开发”。
    Github上的filebrowser
    如有乐享对filebrowser的介绍

    起因

    自己使用云服务器编译Openwrt固件后,有时需要给朋友分享刚编译的固件,使用QQ发文件的方式太麻烦,就在编译Openwrt固件的服务器上也运行了一个filebrowser,使用80端口,新建一个公共用户root,只授予读权限,主目录指向Openwrt编译完成默认固件生成目录,以后将账号密码交给朋友即可。结果这招致了一堆脚本爬虫对80端口的尝试,任何时间登陆后台执行netstat -antp | grep 80|grep ESTABLISHED|wc -l能统计400+
    自己也感觉困惑,初次部署后就将默认的管理员admin密码设置为随机字符组合自己也忘了。公共账号root的密码是弱密码admin。不是很懂为什么会招致大堆脚本爬虫,没有机密文件也就没在意。

    瞎折腾

    闲的没事开始折腾

    • 申请密钥
      先去谷歌相关页面申请秘钥,十分方便。填入自己网站域名—>reCAPTCHA版本选V2—>接受条款、提交即可,如下图:
      image.png

    理论上傻瓜式操作,立刻得到两个密钥:


    不得不说这两密钥名字很有迷惑性
    • 设置filebrowser
      这里注意,根据filebrowser下的issues所报告的,你应该使用2019-05之后的版本,否则下列命令很可能出现无效的情况。
      然而,根据该issues所言,暂时也无法在config.json中设置reCAPTCHA。但config.json中似乎有与此相关的参数,如果删掉config.json中相关参数,即使命令设置了也依旧不会生效,因此推荐保留config.json中与reCaptcha有关的两个参数。

    在shell中执行格式如下的命令

    ./filebrowser config set --recaptcha.key=First --recaptcha.secret=Second
    

    其中First处 填写你获取到的“网站密钥”,Second处 填写你获取到的“密钥”。而后回车运行,打印出来具体配置内容。确保你填写的两个密钥成功显示在配置里即可。

    这里需要注意一点,配置文件中recaptcha设置项中的默认的host由于特殊性无法在国内使用,须在shell中再执行格式如下的命令,详情参见filebrowser下的issues

    ./filebrowser config set --recaptcha.host http://recaptcha.net
    

    效果图

    image.png

    小声嘀咕

    此外还初步尝试了下CloudFlare,提升还是很明显,在想给Filebrowser配置Https时,似乎单程序模式运行似乎不能配置https,参考链接。必须借助Cadd或nginx进行转发,有时间再好好折腾下转发上https吧。

    写完发现跑题了,好吧,其实出发点不是防脚本爬虫扫描,说是练手学习可能更恰当。

    相关文章

      网友评论

          本文标题:为filebrowser启用reCAPTCHA验证码

          本文链接:https://www.haomeiwen.com/subject/zlgydctx.html