V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
rv54ntjwfm3ug8
V2EX  ›  信息安全

有办法安全地让 Docker 容器动态编辑主机 iptables DROP 规则吗?

  •  
  •   rv54ntjwfm3ug8 · 2022-03-13 12:58:48 +08:00 · 1863 次点击
    这是一个创建于 1016 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近服务器经常被 CC 攻击,IP 经常变,手动封一次过几小时换几个 IP 又来了。于是想写一个脚本,每分钟扫描一次 Nginx 日志,发现异常 IP 就调用 iptables DROP (感觉直接 DROP 比返回 403 效果更好,而且我不想让 Nginx 执行 Lua 脚本,感觉不太安全)(另外如果未来加了不能套 Nginx 的自己写协议的服务也能用)但这样必须在主机上以 root 用户身份跑一个脚本,还动态根据包含用户输入的日志内容调用 iptables ,攻击面又增加了,万一用户构造了一个特殊的 payload ,我的程序没有正常过滤,直接拼接进 iptables 命令,攻击者就可以逃逸到主机了,比在容器内让 Nginx 跑 Lua 脚本还不安全。请问有办法安全地让 Docker 容器动态编辑主机 iptables DROP 规则吗?
    8 条回复    2022-03-15 15:45:41 +08:00
    tomczhen
        1
    tomczhen  
       2022-03-13 13:10:18 +08:00 via Android
    按逻辑推理可以得出结论:把 nginx 放容器跑来执行 lua 脚本就能让你觉得安全了。
    Kinnice
        2
    Kinnice  
       2022-03-13 13:19:31 +08:00
    拼接进 iptables 命令的参数是 ip 地址,而 ip 的各种正则,匹配都已经非常完善。你还想往里面加什么?
    wellsc
        3
    wellsc  
       2022-03-13 13:21:45 +08:00
    不安全
    kingfalse
        4
    kingfalse  
       2022-03-13 14:45:54 +08:00 via Android
    站在一个搞爬虫的角度来说,十秒换一批 IP 。。。。
    rv54ntjwfm3ug8
        5
    rv54ntjwfm3ug8  
    OP
       2022-03-13 14:47:17 +08:00
    @kingfalse #4 爬虫用的代理池应该不让用来 CC 攻击吧
    kingfalse
        6
    kingfalse  
       2022-03-13 15:15:55 +08:00 via Android
    @theklf4 不是让不让的问题,而是是不是的问题,你怎么确定我是 cc 不是正常抓取....
    bfdh
        7
    bfdh  
       2022-03-15 10:46:19 +08:00
    maybe you can try '-j SET --add-set' target to add illegal IPs to an ip-set, and use another iptables rule to drop related packets.
    julyclyde
        8
    julyclyde  
       2022-03-15 15:45:41 +08:00
    你这个做法不对哦
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3483 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 10:45 · PVG 18:45 · LAX 02:45 · JFK 05:45
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.