Iptables端口阻断范围规则



我有一个虚拟机与OpenVPN服务器在Ubuntu上。我需要阻止洪流流量,我可以用一些通用的解决方案(不像有人会试图破解)。所以我尝试通过Iptables屏蔽各种端口。我在列表中看到的最大端口是1194 (openvpn),所以我写了这个

iptables -A INPUT -p udp --dport 1195:65535 -j DROP
iptables -A OUTPUT -p udp --dport 1195:65535 -j DROP
iptables -A INPUT -p tcp --dport 1195:65535 -j DROP
iptables -A OUTPUT -p tcp --dport 1195:65535 -j DROP

…并立即失去SSH连接。幸运的是,我设法恢复并删除了这些规则

出什么事了?我没有阻止ssh端口,那么发生了什么以及如何修复此规则?

问题似乎与以下规则有关

iptables -A OUTPUT -p tcp --dport 1195:65535 -j DROP

您已经禁止了所有的向外通信,因此ssh守护进程无法与您对话

当你启动一个ssh连接时,你访问端口22,但服务器随机分配一个端口在1024 - 65535范围内,也称为临时端口,为了与你通信

最新更新