扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
单一规则的操作
最常用的命令可能是append(-A)和delete(-D),其它如insert(-I)和replace(-R)命令只是它们的扩展而已。每一条规则都限定了一组条件(conditions)来于特定的包比较,还规定了当包与所设条件相匹配时的处理(指目标"target")。例如,要丢弃所有来自127.0.0.1这个IP地址的ICMP包,则条件可设为:协议必须是ICMP且源地址必须是127.0.0.1,而目标应设为"DROP"。
127.0.0.1被称为"回路(loopback)"接口,即使机器没有真正的网络连接,也会有这个接口。用户可以使用"ping"命令来产生这样的包(它只是发送一个类型为8即应答请求的ICMP包,而所有愿意应答的协作主机将回送一个类型为0即应答响应的ICMP包)。这个命令常用于测试。
|
这里可以看到第一个ping成功了(这里的参数"-c 1"是告诉ping只发送一个包)。然后为INPUT链添加一条规则,将来自127.0.0.1(-s 127.0.0.1)的ICMP协议(-p icmp)包送至目标DROP(-j DROP)。接着用第二个ping来测试规则。程序将等待一段时间,超时后放弃等待响应。删除规则有两种方法。对于上例中的唯一一条规则,可以这样删除:
第一种方法:指定位置来删除:
# iptables -D INPUT 1
这样就把第一条规则从INPUT链中删除。
第二种方法与上面的-A命令形式相同,但用-D来代替-A。如果链中又非常复杂的规则,又不想逐行数出需要删除的规则,可以用这种方法。
# iptables -D INPUT -s 127.0.0.1 -p icmp -j DROP
在命令行中,其语法要求-D必须和-A(或-I、或-R)命令一致。如果在同一链中有多条相同的这样的规则,则只有第一条符合条件的规则被删除。
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者