V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
vlike
V2EX  ›  Linux

iptables 能不有实现如下的高级玩法?

  •  
  •   vlike · 2017-03-24 20:07:50 +08:00 · 3996 次点击
    这是一个创建于 2560 天前的主题,其中的信息可能已经有所发展或是发生改变。
    服务器上用 iptables 设置默认禁止一切 IP 访问,

    假如现在要在 A 机访问服务器,能否在不对服务器上的 iptables 做修改的情况下,
    能通过某些手段能让服务器动态的放行 A 机器的一切流量?

    (是否有类似于 http 的 authorization 或者 cookie 这样的功能)
    17 条回复    2017-03-26 19:28:30 +08:00
    jimzhong
        1
    jimzhong  
       2017-03-24 20:18:33 +08:00   ❤️ 2
    你可以用 port knock
    widewing
        2
    widewing  
       2017-03-24 20:27:07 +08:00 via Android
    可以用 ipset
    ywgx
        3
    ywgx  
       2017-03-24 20:28:06 +08:00
    参考下 宇宙中时空隧道的设计与实现,和你的需求类似,默认拒绝任何人通过隧道,不定期动态的放行一些人或飞行器进入
    wh0syourda66y
        4
    wh0syourda66y  
       2017-03-24 20:39:01 +08:00
    iptables 路由到一个本地 http 服务器,认证通过后,把符合条件的流量添加一个标签,符合标签的转发到认证通过的路由集合里
    akira
        5
    akira  
       2017-03-24 22:25:10 +08:00
    不管是哪种 都会需要对 iptables 做修改
    BOYPT
        6
    BOYPT  
       2017-03-24 23:30:40 +08:00
    在 php 后台调用添加 A 机器的 IP 添加到 ipset ,匹配 set 的地址即可通过放行;
    可能要定期清理这个 set 的地址池;
    ipconfiger
        7
    ipconfiger  
       2017-03-24 23:33:57 +08:00
    动态的加入和删除规则...... 貌似可以实现
    est
        8
    est  
       2017-03-24 23:42:43 +08:00
    可以实现。我最近就做了一个。很简单。 @KCheshireCat 那里估计有纯 bpf 实现。
    est
        9
    est  
       2017-03-24 23:45:45 +08:00
    看起来已经有人做了的样子

    https://github.com/qmonnet/pkpoc-bpf
    SharkIng
        10
    SharkIng  
       2017-03-25 03:50:35 +08:00
    感觉好像就是 port knock 实现的功能,不过这个是对于 port 说的,不是 IP
    fool
        11
    fool  
       2017-03-25 10:29:46 +08:00
    @ywgx 我怎么看不懂你说的是什么?
    julyclyde
        12
    julyclyde  
       2017-03-25 13:19:44 +08:00
    如果是 “不再修改”的话,可以,如果是“完全不修改”那你只能在服务器之外做这个事情了
    -j QUEUE 然后用 snort-inline 等来处理
    iRiven
        13
    iRiven  
       2017-03-25 15:20:15 +08:00 via Android
    感觉有点像悖论,直接在 iptables 里面放行不可以吗
    vlike
        14
    vlike  
    OP
       2017-03-25 20:33:40 +08:00 via Android
    @iRiven 因为机器 a 是不确定的
    bigcat0
        15
    bigcat0  
       2017-03-26 13:33:48 +08:00 via Android
    有 recent 模块。。。。可以做到指定包大小的 ping ,开放端口
    bigcat0
        16
    bigcat0  
       2017-03-26 13:35:26 +08:00 via Android
    楼上那些人,不会的就不要乱说不行。
    okudayukiko0
        17
    okudayukiko0  
       2017-03-26 19:28:30 +08:00 via iPhone
    想得到的...ipset.端口重定向.RADIUS.iptables 要实现一些高级机能就很麻烦
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3890 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 10:30 · PVG 18:30 · LAX 03:30 · JFK 06:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.