一、防火墙分类
1.软件防火墙和硬件防火墙
2.包过滤防火墙和应用层防火墙
Centos 6默认的防火墙是iptables
Centos 7默认的防火墙是firewallD(底层使用netfilter)
3.firewallD会把自己的规则转换为iptables,最终底层使用netfilter。
4.iptables规则表filter nat mangle raw 规则链 INPUT OUTPUT FORWARD PREOUTING POSTROUTING
二、iptables规则的基本使用
1.iptables的filter表 iptables -t filter 命令 规则链 规则
常用参数:
-L 列出添加防火墙规则
-A 添加防火墙规则
-D 删除防火墙规则
-F 清空防火墙规则
-P 设置链默认规则
-N 创建新的用户自定义规则
2.规则查看: iptables -nvL
添加规则 iptables -t filter -A INPUT -s 10.0.0.1 -j ACCEPT 如果是filter表 filter可以省略
iptables -A INPUT -s 10.0.0.1 -j DROP accept在前drop在后所以10.0.0.1是可以进来的。
inptables -I INPUT -s 10.0.0.2 -j DROP -I增加到规则的第一条
3.清空自己添加的规则 iptables -F
4.iptables的net表 iptables -t nat 命令 规则链 规则
pre目的地转换 把内网预设到外网进行访问
ipdatbles -t nat -A PREOUTING -i eth0 -d 114.115.116 -p tcp --dport 80 -j DNAT --to-destination 10.0.0.1
post源地址转换 统一代理上网节点等 iptables -t nat -A POSTROUTING -s 10.0.0.0/24 -o eth1 -j SANT --to-source 111.112.113.114
5.iptables配置文件
/etc/sysconfig/iptables
centos6 service iptables save|start|stop|restart
centos7 yum install iptables-services
三、firewalld
1.firewallD特点
支持区域“zone”概念 firewall-cmd
systemctl start|stop|enable|disable firewalld.service
2.查看 systemctl status firewalld.service
启动 systemctl start firewalld.service 需停service iptables stop
3.常用命令
查看所有打开的端口 firewall-cmd --zone=public --list-ports
添加/删除规则 firewall-cmd --zone=public --add/remove-port=22/tcp --permanent
查看防火墙 firewall-cmd --list-all
注意:打开防火墙后一定要先添加ssh端口到规则中并重新载入
filrewall-cmd --zone=public --add-port=22/tcp --permanent
firewall-cmd --reload