knock-server工具用法,通过顺序访问端口触发动作

本文介绍了如何通过安装和配置Knockd来隐藏SSH服务端口,增加服务器安全性。通过设置特定的端口敲门序列,只允许已知的客户端远程操控服务器,同时利用iptables进行动态防火墙规则管理,实现SSH端口的开启和关闭。这种方法能有效防止恶意攻击者扫描和入侵。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目的

隐藏ssh服务端口,让攻击者找不到入口也可以配置执行其他命令,达到无客户端远程操控服务器目的。

下载knock-server

knock-server-0.7.8-10.20151227git258a27e.el8.x86_64.rar-Linux文档类资源-优快云下载

https://download-ib01.fedoraproject.org/pub/epel/8/Everything/x86_64/Packages/k/knock-server-0.7.8-10.20151227git258a27e.el8.x86_64.rpm

安装后修改配置:

vim /etc/knockd.conf


[options]
	UseSyslog  //用来定义日志输出位置以及文件名
    Interface=ens34  //需要指定网卡
        
[openSSH]
	sequence    = 7000,8000,9000  //设置(开门)敲门顺序
	seq_timeout = 5  //设置超时时间
	command     = /sbin/iptables -I INPUT -s %IP% -p tcp --dport 22 -j ACCEPT  //开门成功后添加防火墙规则命令(打开SSH端口)
	tcpflags    = syn
 
[closeSSH]
	sequence    = 9000,8000,7000  //设置(关门)敲门顺序,与开门顺序相反
	seq_timeout = 5  //设置超时时间
	command     = /sbin/iptables -D INPUT -s %IP% -p tcp --dport 22 -j ACCEPT  //关门成功后删除之前添加的防火墙规则(关闭SSH端口)
	tcpflags    = syn

启动服务

service knockd restart

修改iptables防火墙规则

iptables -A INPUT -s 127.0.0.0/8 -j ACCEPT   //允许本机的连接

iptables -A INPUT -j DROP   //拒绝其他所有IP的连接,此时无法访问所有端口

测试

按照顺序访问端口

查看iptables端口开放情况

iptables -nL

  测试ssh端口正常访问,按照关闭顺序访问端口测试可关闭22端口

其他测试命令

nc -z  2.2.2.2  7000 8000 9000

for x in  7000 8000 9000;do nmap -Pn --max-retries 0 -p $x 2.2.2.2;done

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

io_py

你的鼓励是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值