我试图了解端口敲击守护进程如何能够监控敲击,而不依赖于防火墙规则(例如接受/丢弃/拒绝数据包)。
我已经安装了被敲,它监听敲击序列 42,42,42。这些被我的iptables
防火墙丢弃,但knockd
能够识别流量并执行定义的操作。网站上说“knockd 在链路层监听”。
如何以及在何处knockd
监测敲击?
答案1
knockd 链接到 libpcap,这样它就可以像其他嗅探器(如 tcpdump 或 wireshark)一样监视线路上的流量。这发生在 iptables DROP 规则(与 IP 堆栈集成)能够应用之前的级别。这就是为什么 knockd 可以看到传入流量,而如果您运行 tcpdump,它也可以看到流量。
但是,如果您要运行需要 libpcap 的程序,那么您可能需要一些比简单的敲击序列提供更强安全属性的程序。单包授权可以实现这一点。