上一篇文章中,我们介绍了 netfilter/iptables 的原理。 netfilter/iptables 原理 本文我们就来介绍一下 iptables 的具体用法。
虽然 netfilter 是集成在 linux 系统内核的,但是用户层的 iptables 还是需要手动安装和开启才可以使用的。
yum install -y iptables yum install iptables-services
systemctl start iptables.service systemctl enable iptables.service #设置开机自启动
iptables 的基本用法就是 -
iptables (选项) (参数)
从上一篇文章中我们知道 iptables 是以规则为单位进行 IP 信息包的过滤和管理的,我们就从规则的配置入手。
iptables -t 表名 <-A/I/D/R> 规则链名 [规则号] <-i/o 网卡名> -p 协议名 <-s 源IP/源子网> —sport 源端口 <-d 目标IP/目标子网> —dport 目标端口 -j 动作
iptables -L -n
比如要删除INPUT里序号为8的规则。
iptables -D INPUT 8
iptables -P INPUT ACCEPT
iptables -F # 清空所有默认规则 iptables -X # 清空所有自定义规则 iptables -Z # 所有计数器归0
如果没有此规则,你将不能通过127.0.0.1访问本地服务。
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp —dport 端口 -j ACCEPT
iptables -A INPUT -p icmp -m icmp —icmp-type 8 -j ACCEPT
iptables -A INPUT -m state —state ESTABLISHED -j ACCEPT
iptables -A INPUT -p tcp -s 192.168.1.50 -j ACCEPT
iptables -P INPUT DROP
https://wiki.archlinux.org/index.php/Iptables_(%E7%AE%80%E4%BD%93%E4%B8%AD%E6%96%87) http://man.linuxde.net/iptables。 https://wangchujiang.com/linux-command/c/iptables.html。 https://www.jianshu.com/p/8fd07c60f23f。