如果我将此行添加到我的iptables
:
-A INPUT -s /32 -i tcp -p tcp -m tcp --dport 22 -j DROP
我收到错误:
iptables-restore v1.4.14: host/network
' 未找到`
运行时:
sudo iptables-restore /etc/network/iptables
那一行有问题吗?如果没有问题,我将发布其余的 iptable 配置。
完整配置:
*filter
:INPUT DROP [23:2584]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [1161:105847]
-A INPUT -i lo -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 80 -j ACCEPT
-A INPUT -i eth0 -p tcp -m tcp --dport 443 -j ACCEPT
# -A INPUT -s /32 -i tcp -p tcp -m tcp --dport 22 -j DROP
-A INPUT -s 192.168.0.10/24 -j ACCEPT
-A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
-A INPUT -i eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
COMMIT
复制自这里
答案1
该行有问题,特别是-s /32
部分。您必须定义一个主机。例如:
-A INPUT -s 123.45.67.8/32 -i tcp -p tcp -m tcp --dport 22 -j DROP
答案2
还有一个问题-i tcp
。它指的是来自接口的流量tcp
;它在语法上不是无效的,但它根本不匹配任何内容,因为不存在这样的接口。
答案3
它包含一个没有主机的网络掩码。-s /32
应该是-s 127.0.0.1/32
或其他什么。