###iptable是linux系统企业六之前类似于墙的服务,在企业六之后一般都用的是firewalld服务###
一:启用火墙
1:启用iptables
systemctl stop firewalld
systemctl disable firewalld
systemctl start iptables
systemctl enable iptables
2:启用firewalld
将上一步的操作反过来即可
#############今天我们主要说以下firewalld服务################
二:firewalld中的域
firewalld分为九个区域,含义如下:
trust(信任):可接受所有的网络连接;
home(家庭):用于家庭网络,仅接受ssh、mdns、ipp-client、samba-client或dhcpv6-client服务连接;
internal(内部):用于内部网络,仅接受ssh、ipp-client、mdns、samba-client或dhcpv6-client服务连接;
work(工作区):用于工作区,仅接受ssh、ipp-client、dhcpv6-client服务连接;
public(公共):用于公共区域的使用,仅接受ssh、dhcpv6-client服务,为firewalld的默认区域;
external(外部区域):出去的ipv4的网络连接经过此区域的伪装和转发,只支持ssh服务;
dmz(非军事区):仅接受ssh服务;
block(限制):拒绝所有的网络服务;
drop(丢弃):任何访问的网络数据包都会被丢弃,没有任何回应。
firewalld的配置方法主要有三种:firewall-config、firewall-cmd和直接编辑xml文件,其中 firewall-config是图形化工具,firewall-cmd是命令行工具。
三:firewalld服务的主要控制命令
# firewall-cmd --state #####查看防火墙的状态
# firewall-cmd --get-active-zones ####查看添加的网卡接口
# firewall-cmd --get-default-zone ####查看当前的默认域
# firewall-cmd --get-zones #####查看所有的域
# firewall-cmd --zone=public --list-all ####查看指定域的信息
# firewall-cmd --get-services #######查看可通过火墙的服务
# firewall-cmd --list-all-zones #######查看所有域的设定信息
#firewall-cmd --set-default-zone=dmz #######设定默认域 (dmz(非军事区)即只可允许ssh服务)
#firewall-cmd --add-source=172.25.66.250 –zone=trusted ##将指定ip主机加入trusted域
#firewall-cmd --list-all –zone=trusted ##列出所有域为trusted的信息
#firewall-cmd --list-interfaces ##列出所有网卡接口
#firewall-cmd --get-zone-of-interface=eth0 ##显示eth0的域
#firewall-cmd --change-interface=eth0 –zone=trusted ##修改eth0的域为trusted
#firewall-cmd --remove-interface=eth0 –zone=trusted ##移除eth0的域
#firewall-cmd --permanent –add-source=172.25.66.250 ## 将该ip永久加入
执行firewall-cmd --reload(刷新)后生效
#firewall-cmd --add-port=8080/tcp –zone=public ## 将8080端口加入public域
#firewall-cmd --permanebt –remove-service=ssh
#firewall-cmd --reload 对移除之后的访问有影响
#firewall-cmd --complete-reload 对移除之后和之前的访问都有影响