标签:tables restart 输出 修改ip cep lang loading ash put
iptables 是用户空间的命令行工具,真正实现包过滤,转发,地址转化的 netfilter 模块
iptables 表链关系
表/链 | prerouting | input | output | forward | postrouting |
---|---|---|---|---|---|
raw | √ | √ | √ | ||
mangle | √ | √ | √ | √ | |
nat | √ | centos7 | √ | √ | |
filter | √ | √ | √ |
表功能释意
raw 取消nat表的追踪机制
mangle 拆解报文,重新封装数据包
nat 地址装换
filter 包过滤
iptables 数据包流转流程示意图
以centos7 为例一步步学些iptables
#centos7 安装iptables
#iptables 默认已经安装,只需要安装iptables-services
yum install iptables iptables-services -y
systemctl disable firewalld
systemctl stop firewalld
systemctl start iptables
systemctl enable iptabes
基础命令
iptables -t filter -L INPUT
iptables -t filter -nL INPUT
iptables -t filter -vnL INPUT
iptables -t filter -xvnL INPUT
iptables -t filter --line-number -xvnL INPUT
添加单个源地址
iptables -t filter -A INPUT -s 192.168.0.109 -j ACCEPT
iptables -t filter -I INPUT 1 -s 192.168.0.109 -j ACCEPT
添加多个源地址
iptables -t filter -A INPUT -s 192.168.0.1,192.168.0.109 -j ACCEPT
iptables -t filter -I INPUT 1 -s 192.168.0.0/24 -j ACCEPT
源地址不是192.168.0.0/24 的被拒绝,没有明确指明192.168.0.0/24 匹配的规则,因此走默认规则
iptables -t filter -I INPUT ! -s 192.168.0.0/24 -j REJECT
匹配目标地址
源地址不是192.168.0.0/24 且目标地址不是192.168.0.111的被drop
iptables -t filter -I INPUT ! -s 192.168.0.0/24 ! -d 192.168.0.111 -j DROP
匹配协议
icmp
iptables -t filter -I INPUT -s 192.168.0.0/24 -d 192.168.0.111 -p ICMP -j REJECT
tcp
iptables -t filter -I INPUT -s 192.168.0.0/24 -d 192.168.0.111 -p tcp -j REJECT
udp
iptables -t filter -I INPUT -s 192.168.0.0/24 -d 192.168.0.111 -p udp -j REJECT
指定输入网卡,只能在 prerouting input forward 链
iptables -t filter -I INPUT -s 192.168.0.0/24 -i ens33 -p ICMP -j REJECT
指定输出网卡 只能在 output forward postrouting 链
iptables -t filter -I POSTROUTING -s 192.168.0.0/24 -o ens33 -p ICMP -j REJECT
指定目标端口
iptables -t filter -I INPUT -p tcp -m tcp ! --dport 22 -j REJECT
指定源端口
iptables -t filter -I INPUT -p tcp -m tcp ! --sport 59771 -j ACCEPT
指定离散的端口
iptables -t filter -I OUTPUT -d 192.168.1.146 -p udp -m multiport --sports 137,138 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m multiport --dports 22,80 -j REJECT
修改iptables 规则
iptables -t filter -R INPUT 1 -s 192.168.0.0/24 -p ICMP -j REJECT
修改默认规则
iptabLes -t filter -P INPUT DROP
删除规则
iptables -t filter -D INPUT -s 192.168.0.0/24 -p ICMP -j REJECT
删除规则
iptables -t filter -D INPUT 1
清空规则
iptables -F
iptables -t filter -F
iptables -t filter -F INPUT
保存规则到/etc/sysconfig/iptables
方式一
service iptables save
systemctl restart iptables
方式二
iptables-save > /etc/sysconfig/iptables
iptables-load < /etc/sysconfig/iptables
标签:tables restart 输出 修改ip cep lang loading ash put
原文地址:https://www.cnblogs.com/wangend/p/14639305.html