Ubuntu是一款流行的Linux操作系统,默认情况下,Ubuntu附带了一个名为Uncomplicated Firewall(简称UFW)的防火墙工具。UFW旨在提供一个简单易用的命令行界面来管理iptables的复杂规则,从而使防火墙配置变得更加容易。
UFW可以控制入站和出站的流量,可以配置规则来允许或拒绝特定的网络流量,确保系统的安全性。本文将详细介绍如何使用UFW命令来配置和管理Ubuntu防火墙。
UFW基础命令
虽然UFW通常默认安装在Ubuntu上,但我们可以通过以下命令来确认安装或重新安装UFW:
sudo apt update
sudo apt install ufw
安装完成后,启用UFW:
sudo ufw enable
启用命令的返回信息通常为:
Firewall is active and enabled on system startup
基本配置
启用防火墙后,我们可以开始添加基本规则。首先,查看防火墙状态:
sudo ufw status
如果防火墙被启用,返回信息会是:
Status: active
如果没有启用,返回信息会是:
Status: inactive
默认情况下,UFW会阻止所有传入连接,并允许所有传出连接。我们可以通过以下命令查看默认规则:
sudo ufw default deny incoming
sudo ufw default allow outgoing
如果需要更改默认规则,例如允许所有传入连接,可以使用以下命令:
sudo ufw default allow incoming
UFW高级配置
我们可以使用UFW来设置允许或拒绝特定的端口、IP地址或服务。例如,允许SSH连接:
sudo ufw allow ssh
该命令返回:
Rule added
Rule added (v6)
如果我们想要拒绝SSH连接,可以使用:
sudo ufw deny ssh
返回信息:
Rule added
Rule added (v6)
为了允许特定端口的通信,例如HTTP(端口80)和HTTPS(端口443),可以使用:
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
返回信息:
Rule added
Rule added (v6)
同样地,可以拒绝特定端口的通信:
sudo ufw deny 80/tcp
返回信息:
Rule added
Rule added (v6)
UFW日志和状态检查
UFW的日志记录在/var/log/ufw.log
文件中,可以通过以下命令查看:
sudo less /var/log/ufw.log
此外,可以启用详细日志记录:
sudo ufw logging on
返回信息:
Logging enabled
除了基本的状态检查命令,UFW还支持详细状态检查:
sudo ufw status verbose
返回信息包括当前规则的详细列表:
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing), disabled (routed)
New profiles: skip
To Action From
-- ------ ----
22 ALLOW IN Anywhere
80/tcp ALLOW IN Anywhere
443/tcp ALLOW IN Anywhere
22 (v6) ALLOW IN Anywhere (v6)
80/tcp (v6) ALLOW IN Anywhere (v6)
443/tcp (v6) ALLOW IN Anywhere (v6)
UFW与IP地址管理
为了管理特定IP地址,可以将其添加到白名单或黑名单。例如,允许特定IP地址:
sudo ufw allow from 192.168.1.100
返回信息:
Rule added
Rule added (v6)
拒绝特定IP地址:
sudo ufw deny from 192.168.1.100
返回信息:
Rule added
Rule added (v6)
如果需要管理整个子网,可以使用CIDR表示法。例如,允许一个子网:
sudo ufw allow from 192.168.1.0/24
返回信息:
Rule added
Rule added (v6)
UFW应用配置
UFW可以通过配置文件来简化特定应用程序的规则管理。配置文件位于/etc/ufw/applications.d
目录下。可以使用以下命令查看可用的应用程序配置文件:
sudo ufw app list
返回信息示例:
Available applications:
OpenSSH
Apache
Apache Full
Apache Secure
CUPS
例如,允许Apache Full(包括HTTP和HTTPS):
sudo ufw allow 'Apache Full'
返回信息:
Rule added
Rule added (v6)
UFW图形化工具
GUFW是UFW的图形化前端,可以通过以下命令安装:
sudo apt install gufw
安装完成后,可以通过应用程序菜单启动GUFW。在图形界面中,可以方便地添加、修改和删除规则,查看状态和日志。