在Ubuntu系统中,配置防火墙通常使用 ufw
(Uncomplicated Firewall)工具。以下是配置防火墙的基本步骤:
在大多数Ubuntu系统中,ufw
已经预装。如果没有安装,可以通过以下命令进行安装:
sudo apt update
sudo apt install ufw
启用 ufw
:
sudo ufw enable
禁用 ufw
:
sudo ufw disable
查看当前状态和规则:
sudo ufw status
如果显示 Status: inactive
,表示 ufw
未启用。
ufw
的默认规则决定了未明确允许或拒绝的流量的处理方式。默认拒绝所有传入流量,允许所有传出流量:
sudo ufw default deny incoming
sudo ufw default allow outgoing
允许特定端口:
sudo ufw allow 22/tcp # 允许 SSH(TCP 端口 22)
sudo ufw allow 80/tcp # 允许 HTTP(TCP 端口 80)
sudo ufw allow 443/tcp # 允许 HTTPS(TCP 端口 443)
允许特定服务:
sudo ufw allow ssh # 允许 SSH
sudo ufw allow http # 允许 HTTP
sudo ufw allow https # 允许 HTTPS
允许特定IP地址:
sudo ufw allow from 192.168.1.100 # 允许来自 192.168.1.100 的所有流量
sudo ufw allow from 192.168.1.0/24 # 允许来自 192.168.1.0/24 网段的所有流量
删除允许或拒绝规则:
sudo ufw delete allow 22/tcp # 删除允许 SSH 的规则
通过规则编号删除:
sudo ufw status numbered
# 根据编号删除规则
sudo ufw delete 2 # 删除编号为 2 的规则
ufw
支持限制特定端口的连接速率,防止暴力破解。限制 SSH 连接速率(每分钟最多 6 次连接):
sudo ufw limit 22/tcp
启用日志记录:
sudo ufw logging on
禁用日志记录:
sudo ufw logging off
查看日志:
sudo tail -f /var/log/ufw.log
ufw
如果需要清除所有规则并重置 ufw
,可以执行以下命令:
sudo ufw reset
以下是一个常见的 ufw
配置示例:
# 设置默认规则
sudo ufw default deny incoming
sudo ufw default allow outgoing
# 允许 SSH、HTTP 和 HTTPS
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
# 允许来自特定IP地址的访问(例如192.168.1.1)
sudo ufw allow from 192.168.1.1
请注意,以上信息提供了在Ubuntu系统中配置和管理 ufw
防火墙的基本步骤和常见命令。在实际应用中,您可能需要根据具体需求调整防火墙规则,以确保系统的安全性和稳定性。