iptables -L 查看3大链
/etc/rc.d/init.d/iptables save 永久保存规则
iptables-save > iptables.bak 保存iptables到iptables.bak
iptables-restore < iptables.bak 从iptables.bak导入iptables中
比如要删除INPUT里序号为8的规则,执行:
iptables -D INPUT 8
保存规则到配置文件中
cp /etc/sysconfig/iptables /etc/sysconfig/iptables.bak # 任何改动之前先备份,请保持这一优秀的习惯
iptables-save > /etc/sysconfig/iptables CENTOS7版本以上使用路径
cat /etc/sysconfig/iptables
iptables -vnL --line-numbers
[root@hahage ~]# iptables -L
Chain INPUT (policy ACCEPT) 默认ACCEPT
iptables -A INPUT -s 192.168.150.0/24 -p tcp --dport 80 -j ACCEPT
iptables -D INPUT 160
service iptables save 永久保存iptables规则
-A 表示添加 INPUT表示添加的位置
-s表示源 192.168.1.0/24表示数据包中源ip是192.168.1.0/24网段
-p表示协议 tcp就表示匹配的协议是tcp
–dport表示目的端口 22就表示目的端口是22将会被匹配
-j表示动作 ACCEPT就表示接受
iptables默认规则
iptables -P INPUT DROP 配置默认的不让进
iptables -P FORWARD DROP 默认的不允许转发
iptables -P OUTPUT ACCEPT 默认的可以出去
黑名单和白名单概念
黑名单就是默认放行所有,把想拒绝规则写进去
白名单就是默认拒绝所有,把想放行的写进去
DROP 拒绝不回复
reject 拒绝回复
firewalld-cmd
firewalld-cmd --reload 重新加载规则
firewalld-config 打开图像界面
firewall-cmd --list-all 列出缺省zone的规则
firewall-cmd --get-default-zone 查看缺省zone
firewall-cmd --set-default-zone 设置缺省zone
firewall-cmd --remove-interface=ens166 移除ens166网卡,不再受zone管理
firewall-cmd --list-all --zone=home home就是要查看的zone
firewall service规则 例如(ssh ftp) firewall-cmd --add-service=ssh
firewall port规则
firewall-cmd --add-port=3333/tcp
firewall rich rule规则
firewall-cmd --add-rich-rule=“rule family=ipv4 source address=2.2.2.0/24 port port=8080 protocol=tcp reject”
firewall-cmd --list-rich-rules
firewall-cmd --runtime-to-permanent 临时规则变永久规则
如何确定规则是永久的?
如果使用firewall-cmd --reload命令之后规则还会存在就是永久的规则
firewall-cmd --add-port=3333/tcp --permanent 加入–permanent会永久添加但是不会马上生效需要firewall-cmd --reload重新加载,建议执行多一次firewall-cmd --add-port=3333/tcp 临时生效
firewalld转发端口(DNAT)