
这几天飞牛云的文件越权访问漏洞在社区讨论的水深火热,这个漏洞所带来的影响是什么?用一句话概括就是:如果你的 NAS 能在公网访问,那么任何人都可以在不知道你密码的情况下访问你的文件(照片、视频等)。
对于一些小白用户(不会看系统日志)来说,要如何知道自己的 NAS 都被哪些人访问了,然后给出告警,便于他去封禁这些 IP 是比较困难的。
我看了下飞牛云的日志文件格式,发现他也是用的 nginx ,我写的日志分析工具正好可以应对这个场景,只需要简单几步就能完成部署。
在你的飞牛云上添加我这个 docker 服务,如下两种方式:
docker run -d --name nginxpulse \ -p 8088:8088 \ -v /usr/trim/nginx/logs:/share/logs:ro \ -v ./docker_local/nginxpulse_data:/app/var/nginxpulse_data \ -v ./docker_local/pgdata:/app/var/pgdata \ -v ./docker_local/configs:/app/configs \ -v /etc/localtime:/etc/localtime:ro \ magiccoders/nginxpulse:latest services: nginxpulse: image: magiccoders/nginxpulse:latest container_name: local_nginxpulse ports: - "8088:8088" - "8089:8089" volumes: - /usr/trim/nginx/logs:/share/logs - ./docker_local/nginxpulse_data:/app/var/nginxpulse_data - ./docker_local/pgdata:/app/var/pgdata - ./docker_local/configs:/app/configs - /etc/localtime:/etc/localtime restart: unless-stopped 做完上述配置之后,启动服务,打开浏览器访问ip:8088就能看到如下所示的配置面板了。

填写好你的站点名称、日志路径等基础信息,一路下一步保存并重启后,你就能看到应用主页面了。

在这里你就能一目了然的看到谁访问了你的 NAS 。
如果你的 NAS 只允许某个 IP 或者某个地域的人访问,其他异常访问系统立即推送告警,你只需要打开系统配置面板,点开高级,启用白名单访问功能,填写你允许访问的值即可,如下所示:
目前支持三种类型:

配置完之后,保存并重启,如果后续有命中规则的 IP 访问,你就能收到系统通知了。


至此,文章就分享完毕了。
我是神奇的程序员,一位前端开发工程师。
如果你对我感兴趣,请移步我的个人网站,进一步了解。
1 Chemist 2 月 3 日 一般没人改 nginx log 目录就把这些都一样的配置设置成默认值不好吗 |
2 MagicCoder OP @Chemist 好想法,我改进下,默认路径给个值 |
3 fengci 2 月 3 日 你要加个轻量的 WAF 就能做成项目卖了。 |
4 MagicCoder OP @fengci waf 有开源的吗?我还没研究过这领域,我现在是直接部署的雷池 |
5 montaro2017 2 月 3 日 请求失败 保存配置失败: open ./configs/nginxpulse_config.json.tmp: permission denied 进容器的 ssh 试了一下,用 cat 可以读取到的 |
6 fengci 2 月 3 日 @MagicCoder #4 CorazaWAF |
7 montaro2017 2 月 3 日 @montaro2017 #5 好了 自己手动改一下权限 |
8 Joeyreg 2 月 6 日 东西不错,不过用在飞牛也不太合适,主要是飞牛丢反代或防火墙后面后就看不到外网 ip 了, |