「linux」linux防火墙命令

firewalld

linux防火墙命令

1:查看防火状态

1
2
systemctl status firewalld
service iptables status

2:暂时关闭防火墙

1
2
systemctl stop firewalld
service iptables stop

3:永久关闭防火墙

1
2
systemctl disable firewalld
chkconfig iptables off

4:重启防火墙

1
2
systemctl enable firewalld
service iptables restart

5.添加规则

/每次添加规则都要重启防火墙/

​ 添加允许端口

1
2
3
4
5
6
firewall-cmd --zone=public --add-port=0-65535/udp --permanen
firewall-cmd --zone=public --add-port=0-65535/tcp --permanen

zone #作用域
add-port=80/tcp #添加端口,格式为:端口/通讯协议
permanent #永久生效,没有此参数重启后失效

​ 查看通过端口

1
firewall-cmd --list-ports

​ 关闭指定端口

1
firewall-cmd --zone=public --remove-port=80/tcp --permanent

​ 其他命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#《实例一》防火墙查询
firewall-cmd --version //查看版本
firewall-cmd --help // 查看帮助
firewall-cmd --state // 显示状态
firewall-cmd --get-services //获取支持服务列表(firewalld内置服务支持)
firewall-cmd --zone=public --list-ports //查看所有打开的端口
firewall-cmd --list-forward-ports //查看转发的端口
fierewall-cmd –reload //重新加载防火墙策略
firewall-cmd --get-active-zones //查看区域信息
firewall-cmd --list-all-zones //列出全部启用的区域的特性
firewall-cmd --list-services //显示防火墙当前服务
firewall-cmd --get-zone-of-interface=eth0 //查看指定接口所属区域
firewall-cmd --panic-on //拒绝所有包
firewall-cmd --panic-offfir //取消拒绝状态
firewall-cmd --query-panic //查看是否拒绝
# 《实例二》 运行时区域策略设置示例(注:以下示例不加zone的为默认区域public)
firewall-cmd --add-service=ssh //允许 ssh 服务通过
firewall-cmd --remove-service=ssh //禁止 ssh 服务通过
firewall-cmd --add-service=samba --timeout=600 //临时允许 samba 服务通过 600 秒
firewall-cmd --add-service=http --zone=work //允许http服务通过work区域
firewall-cmd --zone=work --add-service=http //从work区域打开http服务
firewall-cmd --zone=internal --add-port=443/tcp //打开 443/tcp 端口在内部区域(internal)
firewall-cmd --zone=internal --remove-port=443/tcp //关闭443/tcp 端口在内部区域(internal)
firewall-cmd --add-interface=eth0 //打开网卡eth0
firewall-cmd --remove-interface=eth0 //关闭网卡eth0
#《 实例三》 永久区域策略设置示例(注:以下示例不加zone的为默认区域public;永久设置均需重新加载防火墙策略或重启系统)
firewall-cmd --permanent --add-service=ftp //永久允许 ftp 服务通过
firewall-cmd --permanent --remove-service=ftp //永久禁止 ftp 服务通过
firewall-cmd --permanent --add-service=http --zone=external //永久允许http服务通过external区域
firewall-cmd --permanent --add-service=http --zone=external //永久允许http服务通过external区域
firewall-cmd --permanent --zone=internal --add-port=111/tcp //打开 111/tcp 端口在内部区域(internal)
firewall-cmd --permanent --zone=internal --remove-port=111/tcp //关闭 111/tcp 端口在内部区域(internal)
firewall-cmd --permanent --add-interface=eth0 //永久打开网卡eth0
firewall-cmd --permanent --remove-interface=eth0 //永久关闭网卡eth0
firewall-cmd --permanent --zone=public --add-port=8080-8083/tcp //添加多个端口
firewall-cmd --permanent --zone=public --remove-port=81/tcp //删除某个端口
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="192.168.1.51" accept" //删除某个IP
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.0/16" accept" //
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="9200" accept" //针对某个ip段访问
动作选项
ACCEPT 接收数据包
DROP 丢弃数据包
REDIRECT 将数据包重新转向到本机或另一台主机的某一个端口,通常功能实现透明代理或对外开放内网的某些服务
SNAT 源地址转换
DNAT 目的地址转换
MASQUERADE IP伪装
LOG 日志功能
firewall-cmd --reload //添加操作后别忘了执行重载才会生效

关闭selinux

1.查看selinux状态

SELiunx一共有三种模式:

  1. enforcing(强制模式 ):开始限制domain/type
  2. permissive(宽容模式) :仅会有警告信息
  3. disabled(关闭):关闭SELinux
1
sestatus

2.永久关闭selinux

1
vi /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled
设置后需要重启才能生效


「linux」linux防火墙命令
https://www.tohmm.cn/20240525/L-Linux-linux防火墙命令/
作者
H.mm
发布于
2024年5月25日
许可协议