news 2026/8/11 10:11:30

Knock 用法总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Knock 用法总结

成事不说,遂事不谏,既往不咎。

导航

  • 1 工具介绍
  • 2 示例配置
  • 3 杂七杂八

1、工具介绍

knock 是一个 Linux 下的“端口敲门(Port Knocking)” 服务,它的主要作用是:通过监听特殊端口访问顺序,动态修改防火墙规则,从而隐藏真实服务的端口。

工作原理:它相当于是一个数据包监听器,会时刻监听指定的网卡,捕获 TCP/UDP 包。对于捕获到的每一个数据包,它都会检查包的目的端口、TcpFlag、以及包的到访顺序,若成功匹配到了配置文件中指定的规则,便开始执行配置文件中指定的 command 命令。

2、示例配置

注意:安装 knock 服务之后,首先确保防火墙的 INPUT 链的策略是不是 DROP,若是 ACCEPT 则 knock 是无法发挥其真正作用的,因为 iptable 默认放行了所有的包。

注:(1)iptables 防火墙 INPUT 链的默认策略修改命令iptables -P INPUT DROP。(2)不建议通过添加丢弃全部包规则的方式处理iptables -A INPUT -j DROP,因为配置规则先后顺序的原因,这样做会导致后面添加进来的 ACCEPT 规则无法生效。

【1】手动关闭:开启目标端口需要敲一下,关闭目标端口也需要敲一下。

[options] #UseSyslog # 日志被统一保存在了 /var/log/syslog 中 Interface = eth0 logfile = /var/log/knockd.log [openSSH] sequence = 7000,8000,9000 seq_timeout = 10 tcpflags = syn command = /sbin/iptables -A INPUT -s %IP% --dport 22 -j ACCEPT [closeSSH] sequence = 9000,8000,7000 seq_timeout = 10 tcpflags = syn command = /sbin/iptables -D INPUT -s %IP% --dport 22 -j ACCEPT

【2】自动关闭:开启目标端口需要敲一下,在等待 cmd_timeout 秒之后,knock 会自动关闭目标端口。

[options] logfile = /var/log/knockd.log Interface = eth0 [opencloseSSH] sequence = 2222:udp,3333:tcp,4444:udp seq_timeout = 15 tcpflags = syn,ack start_command = /usr/sbin/iptables -A INPUT -s %IP% -p tcp --syn -j ACCEPT cmd_timeout = 600 stop_command = /usr/sbin/iptables -D INPUT -s %IP% -p tcp --syn -j ACCEPT

3、杂七杂八

(1)python 版的 knock 客户端,可适用于 Windows:knock

(2)knock 的替代品:fwknop

(3)如何判断通过 knock 客户端python knock.py -v 1.1.1.1 7000 8000 9000敲击的包是否被 knock 服务端接收到?可通过journalctl -u knockd -f动态查看其日志,成功示例如下图:

(4)knock 的 command 不光可以执行 iptables 规则,还可以让其执行其它的命令。于是乎:我们似乎就可以借助 knock 的这个功能,来实现一些通过网络触发事件的任务。
不光可以执行 iptables 规则,还可以让其执行其它的命令。于是乎:我们似乎就可以借助 knock 的这个功能,来实现一些通过网络触发事件的任务。

我的博客园
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/11 10:11:21

Claude Code Skills实战:从插件思维到工作流增强的AI开发提效指南

1. 项目概述:从“翻译”到“深度实践”最近在AI开发工具领域,Claude Code 的热度持续攀升。作为一个深度参与过多个AI辅助开发项目的老兵,我最初看到《构建 Claude Code 的经验:我们如何使用 Skills》这篇外文分享时,第…

作者头像 李华
网站建设 2026/8/11 10:09:38

UE5 AI感知与行为树联调:实现具备视觉记忆的智能NPC

1. 项目概述:让NPC真正“活”起来在虚幻引擎5(UE5)里捣鼓AI,很多朋友可能都卡在了一个点上:我明明给NPC配了行为树,让它能走能跑,但它怎么就跟个睁眼瞎一样,对近在咫尺的玩家毫无反应…

作者头像 李华
网站建设 2026/8/11 10:08:04

3分钟快速安装Adobe插件:开源跨平台解决方案终极指南

3分钟快速安装Adobe插件:开源跨平台解决方案终极指南 【免费下载链接】ZXPInstaller Open Source ZXP Installer for Adobe Extensions 项目地址: https://gitcode.com/gh_mirrors/zx/ZXPInstaller 还在为Adobe插件的繁琐安装流程头疼吗?告别复杂…

作者头像 李华
网站建设 2026/8/11 10:05:17

二极管基础教程:从单向导通的原理到整流、稳压、LED驱动的实践指南

这次我们来看一个面向电子初学者的二极管基础教程。二极管,这个被称为“电子阀门”的元件,是几乎所有电路板上的常客。它的核心特性“单向导通”听起来简单,但理解不深就容易在电路设计、故障排查时踩坑。本文的目标很直接:让你从…

作者头像 李华
网站建设 2026/8/11 10:04:32

7款照片转pdf工具盘点:手机自带、在线免费与电脑离线方案一网打尽

上周四下午,财务在企业微信里弹来一条消息:上周出差那沓纸质发票,今天下班前合并成一份 PDF 交上去,缺一张都不行。我蹲在工位上用手机把十几张发票一张张拍完,相册里横七竖八躺了一堆图片,有的竖拍有的横拍…

作者头像 李华
网站建设 2026/8/11 10:03:28

WechatDecrypt终极指南:3步轻松解密你的微信聊天记录

WechatDecrypt终极指南:3步轻松解密你的微信聊天记录 【免费下载链接】WechatDecrypt 微信消息解密工具 项目地址: https://gitcode.com/gh_mirrors/we/WechatDecrypt 你是否曾因为手机损坏、系统升级或更换设备而面临微信聊天记录丢失的困境?那些…

作者头像 李华