微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – 使用knockd with shorewall

我想将旧的纯iptables防火墙配置迁移到shorewall设置.我得到了基础知识,但我无法复制现有的敲门设置:

>我有一个’tmpknock’链打开一些端口,例如端口22,持续30秒(tmpknock链中同时允许多个IP,如果多人尝试同时登录!).
>我有一个’permknock’链,可以永久打开一些端口(例如80),但一次只能打开一个IP(当下一个尝试从不同的IP中敲响时,它会被替换 – 这允许我测试一些服务目前尚未向公众开放)

/etc/knockd.conf中的设置很简单:

[tmpAndPermKnock]
    sequence      = 10000,11000,12000
    seq_timeout   = 9
    tcpflags      = syn
    start_command = /sbin/iptables -I tmpknock -s %IP% -j ACCEPT; 
                    /sbin/iptables -F permknock;
                    /sbin/iptables -I permknock -s %IP% -j ACCEPT
    cmd_timeout   = 30
    stop_command  = /sbin/iptables -D tmpknock -s %IP% -j ACCEPT

现在我可以很容易地从我现有的链链接到这些链,例如:

iptables -A open-in -p tcp --dport 22 -j tmpknock
iptables -A open-in -p tcp --dport 80 -j permknock

如何将其与简单的海岸设置相结合?我真的刚刚开始使用shorewall,并且不知道如何跳转到我的锁链.我想,它会是这样的:

/ etc / shorewall / rules(不起作用):

#ACTION         SOURCE        DEST      PROTO      DEST
JUMP(tmpknock)  net           fw        tcp        22
JUMP(permknock) net           fw        tcp        80

……但是http://shorewall.net/manpages/shorewall-rules.html没有JUMP行动……

解决方法

似乎没有一个很好的解决方案(嘘Shorewall): – /似乎有两个选择:

>在Perl中编写自定义Shorewall模块.有一些关于使用recent match目标或使用manual chains编写实现敲击的模块的文档.
>写一个开始extension script(在Shorewall设置了所有规则后运行)将跳转规则插入INPUT链中的爆震链.

原文地址:https://www.jb51.cc/linux/399381.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐