【安全】端口保护技术--端口敲门和单包授权
【安全】端口保护技术--端口敲门和单包授权
- 备注
- 一、端口保护
- 二、端口敲门
- 三、单包授权
备注
2025/05/06 星期二
最近学习了端口保护技术总结一下
一、端口保护
为了保护联网设备的安全,一般会尽量减小暴露的攻击面,开放的端口就是最常见的攻击面,因此需要对端口进行保护。端口是设备与网络通信的重要通道,如果将全部端口都关闭就无法进行正常的网络通信了,常见的端口保护技术是通过防火墙规则丢弃收到的所有数据包,再用端口敲门(Port Knocking)和单包授权(Single Packet Authorization)动态开发端口。
除此之外,一些常见的简单端口保护还有更改默认端口、使用强密码等。
二、端口敲门
原理:
端口敲门是通过特定的端口访问序列来动态打开和关闭服务端口。只有在正确的端口顺序敲门后,目标端口(如SSH端口)才会对外开放。端口敲门通过监听特定端口的访问请求,并验证预设的访问序列。如果序列正确,端口敲门服务会动态调整防火墙规则,允许合法用户访问受保护的服务。
优缺点:
优点:提高安全性;减少垃圾日志信息;适用于多种服务
缺点:配置和管理复杂;对时间和网络稳定性敏感;可能影响性能
使用:
服务端安装knockd程序,在/etc/knockd.conf文件中配置敲门序列和对应执行的命令,启动服务
客户端安装knock程序,使用knock [ip] [port] ... [port]
命令发生端口序列
攻击:
攻击者通过信息收集或监听客户端与服务端通信获取端口序列,完成对端口的访问
三、单包授权
原理:
单包授权使用单个数据包进行端口访问的申请,将所有必要信息放在一个数据包中(通常为UDP)内来简化流程,单包授权需要将ip地址、时间戳、授权密码计算哈希值后,将哈希值发送给服务端,服务端校验哈希值,如果正确则动态开放端口,否则丢弃数据包。
优缺点:
优点:减少了敲门过程中网络波动的影响和性能开销
缺点:实现复杂
使用:
开源程序Firewall Knock Operator (fwknop)实现了单包授权方案