自打2.4版本以后的Linux内核中, 提供了一个非常优秀的防火墙工具。这个工具可以对出入服务的网络数据进行分割、过滤、转发等等细微的控制,进而实现诸如防火墙、NAT等功能。
    一般来说, 我们会使用名气比较的大iptables等程序对这个防火墙的规则进行管理。iptables可以灵活的定义防火墙规则, 功能非常强大。但是由此产生的副作用便是配置过于复杂。一向以简单易用著称Ubuntu在它的发行版中,附带了一个相对iptables简单很多的防火墙配置工具:ufw。
    ufw默认是没有启用的。也就是说, ubuntu中的端口默认都是开放的。使用如下命令启动ufw:
        $sudo ufw default deny
        $sudo ufw enable
    通过第一命令,我们设置默认的规则为allow, 这样除非指明打开的端口, 否则所有端口默认都是关闭的。第二个命令则启动了ufw。如果下次重新启动机器, ufw也会自动启动。
    对于大部分防火墙操作来说, 其实无非就是的打开关闭端口。如果要打开SSH服务器的22端口, 我们可以这样:
    $sudo ufw allow 22
    由于在/etc/services中, 22端口对应的服务名是ssh。所以下面的命令是一样的:
    $sudo ufw allow ssh
    现在可以通过下面命令来查看防火墙的状态了:

$sudo ufw status

   
Firewall loaded


   
To                      
Action From

   
--                       
------ ----  

   
22:tcp                
ALLOW  
Anywhere

   
22:udp               
ALLOW  
Anywhere

   

我们可以看到, 22端口的tcp和udp协议都打开了。

   

删除已经添加过的规则:

   
$sudo ufw delete allow 22

   

只打开使用tcp/ip协议的22端口:

   
$sudo ufw allow 22/tcp

   

打开来自192.168.0.1的tcp请求的80端口:

   
$sudo ufw allow proto tcp from 192.168.0.1 to any port 22

   

要关系防火墙:
   $sudu ufw disable

 

UFW防火墙是一个主机端的iptables类防火墙配置工具。这个工具的目的是提供给用户一个可以轻松驾驭的界面,就像包集成和动态检测开放的端口一样。

在Ubuntu中安装UFW:

目前这个包存在于Ubuntu
8.04的库中。
sudo
apt-get install ufw

上面这行命令将把软件安装到您系统中。

开启/关闭防火墙
(默认设置是’disable’)
# ufw
enable|disable

转换日志状态
# ufw
logging on|off

设置默认策略 (比如
“mostly open” vs “mostly
closed”)
# ufw
default allow|deny

许 
可或者屏蔽某些入埠的包 (可以在“status” 
中查看到服务列表[见后文])。可以用“协议:端口”的方式指定一个存在于/etc/services中的服务名称,也可以通过包的meta-data。
‘allow’ 
参数将把条目加入 /etc/ufw/maps 
,而 ‘deny’

则相反。基本语法如下:
# ufw
allow|deny [service]

显示防火墙和端口的侦听状态,参见 /var/lib/ufw/maps。括号中的数字将不会被显示出来。
# ufw
status

[注意:上文中虽然没有使用 sudo,但是命令提示符号都是“#”。所以……你知道啥意思了哈。原文如此。──译者注]
UFW

使用范例:

允许 53

端口
$ sudo ufw
allow 53

禁用 53

端口
$ sudo ufw
delete allow 53

允许 80

端口
$ sudo ufw
allow 80/tcp

禁用 80

端口
$ sudo ufw
delete allow 80/tcp

允许 smtp

端口
$ sudo ufw
allow smtp

删除 smtp

端口的许可
$ sudo ufw
delete allow smtp

允许某特定 IP
$ sudo ufw
allow from 192.168.254.254

删除上面的规则


$ sudo ufw delete allow from
192.168.254.254