linux防火墙配置

centos7防火墙

firewalld是centos7系统默认的防火墙,和iptables一样,是使用系统中netfilter内核模块的管理工具。

firewall-cmd [--zone=] --add-port=[-]/ [--timeout=]

此举将启用端口和协议的组合。

端口可以是一个单独的端口 或者是一个端口范围 -。

协议可以是 tcp 或 udp

对于一个接受到的请求具体使用哪个zone,firewalld是通过三种方法来判断的:
1、source,也就是源地址 优先级最高
2、interface,接收请求的网卡 优先级第二
3、firewalld.conf中配置的默认zone 优先级最低

firewalld有的区域(zone)
block(拒绝)
dmz(非军事化)
drop(丢弃)
external(外部)
home(家庭)
internal(内部)
public(公开)
trusted(信任)
work(工作区)

centos7查看防火墙常用语法

启动
systemctl start firewalld
查看状态
systemctl status firewalld / firewall-cmd --state
停止
systemctl stop firewalld
禁止开机自启防火墙
systemctl disable firewalld

防火墙常用信息查看:

配置firewalld-cmd

查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则(重载): firewall-cmd --reload
查看区域信息: firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic

防火墙常用配置

开放端口
--permanent 永久生效
firewall-cmd --zone=public --add-port=8888/tcp --permanent
重新载入不重启防火墙
firewall-cmd --reload
查看
firewall-cmd --zone=public --query-port=8888/tcp
删除
firewall-cmd --zone=public --remove-port=8888/tcp --permanent

对外服务机器
允许所有访问8888端口
firewall-cmd --add-port=8888/tcp

允许固定ip访问所有端口
firewall-cmd --add-rich-rule 'rule family="ipv4" source address=192.168.1.12 accept'

允许所有端口访问
firewall-cmd --add-port=1-65535/tcp
firewall-cmd --add-port=1-65535/udp

上一篇:linux 关闭防火墙


下一篇:rabbitmq的臭毛病