Linux 防火墙 UFW和Firewall的基本使用方法

About UFW and Firewall

  • UFW
  • firewall

UFW

1.查看防火墙状态

1
sudo ufw status

2.开启防火墙

1
sudo ufw enable

3.关闭防火墙

1
sudo ufw disable

4.查看防火墙版本

1
sudo ufw disable

5.默认允许外部访问本机

1
sudo ufw default allow

6.默认拒绝外部访问本机

1
sudo ufw default deny

7.允许外部访问53端口

1
sudo ufw allow  53  #也可以改成其他端口,根据自己的需求更改端口

8.拒绝外部访问53端口

1
sudo ufw deny 53   #可以更改其他端口,根据自己的需求来改端口

9.允许某个IP地址访问本机的所有端口

1
sudo ufw allow from 192.168.xxx.xxx  #IP地址是根据自己的需求来更改

9.1大多数系统只需要打开少量的端口接受传入连接,并且关闭所有剩余的端口。 从一个简单的规则基础开始,ufw default命令可以用于设置对传入和传出连接的默认响应动作。 要拒绝所有传入并允许所有传出连接,那么运行:

1
2
3
sudo ufw default allow outgoing

sudo ufw default deny incoming

ufw default 也允许使用 reject 参数

警告:除非明确设置允许规则,否则配置默认 deny 或 reject 规则会锁定你的服务器。确保在应用默认 deny 或 reject 规则之前,已按照下面的部分配置了 SSH 和其他关键服务的允许规则。

高级规则:

除了基于端口的允许或阻止,UFW 还允许您按照 IP 地址、子网和 IP 地址/子网/端口的组合来允许/阻止。

允许从一个 IP 地址连接:
1
sudo ufw allow from 123.45.67.89
允许特定子网的连接:
1
sudo ufw allow from 123.45.67.89/24
允许特定 IP/ 端口的组合:
1
sudo ufw allow from 123.45.67.89 to any port 22 proto tcp

proto tcp 可以删除或者根据你的需求改成 proto udp,所有例子的 allow 都可以根据需要变成 deny。

要删除一条规则,在规则的前面加上 delete,如果你希望不再允许 HTTP 流量,你可以运行:
1
sudo ufw delete allow 80

注:删除规则同样可以使用服务名



Firewall

1.开启防火墙

1
service firewalld start

2.关闭防火墙

1
service firewalld stop

3.重启防火墙

1
service firewall

4.查看防火墙状态

1
firewall-cmd --state

5.放行端口

1
firewall-cmd --permanent --add-port=端口/tcp --permanent  #放行的端口根据自己的需求来更改

6.移除放行端口

1
firewall-cmd --permanent --remove-port=端口号/tcp --permanent

7.刷新防火墙配置

1
firewall-cmd --reload

8.查看端口状态

1
firewall-cmd --query-port=端口/tcp

查看已开放的端口

1
firewall-cmd --list-port
1
2
3
4
5
6
7
命令解析

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