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

在Ubuntu中安装UFW:

目前这个包存在于Ubuntu的库中。

[shell] apt-get install ufw[/shell]

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

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

[shell]ufw enable|disable[/shell]

转换日志状态

[shell]ufw logging on|off[/shell]

设置默认策略 (比如 “mostly open” vs “mostly closed”)

[shell]ufw default allow|deny[/shell]

许可或者屏蔽某些入埠的包 (可以在“status” 中查看到服务列表[见后文])。可以用“协议:端口”的方式指定一个存在于/etc/services中的服务名称,也可以通过包的meta-data。 基本语法如下:

[shell]ufw allow|deny [service][/shell]

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

[shell]ufw status[/shell]

UFW 使用范例:

允许 53 端口

[shell] ufw allow 53[/shell]

禁用 53 端口

[shell] ufw delete allow 53[/shell]

允许 80 端口

[shell] ufw allow 80/tcp[/shell]

禁用 80 端口

[shell] ufw delete allow 80/tcp[/shell]

允许 smtp 端口

[shell] ufw allow smtp[/shell]

删除 smtp 端口的许可

[shell] ufw delete allow smtp[/shell]

允许某特定 IP

[shell] ufw allow from 192.168.254.254[/shell]

允许某特定 IP段

[shell]
ufw allow from 10.0.0.0/8
ufw allow from 172.16.0.0/12
ufw allow from 192.168.0.0/16
[/shell]

线上服务器配置

[shell]

ufw default deny # 默认禁止所有,下面才打开需要的

ufw allow 80 # 允许80端口,如果要开通mysql,allow 3306

ufw allow from 117.41.237.36 # 允许此ip访问所有端口

ufw allow from 61.164.186.241 # 内部3台服务器之间畅通无阻

ufw allow from 61.164.186.242

ufw allow from 61.164.186.246

ufw enable # 启动防火墙

ufw status # 查看服务状态

[/shell]

Status: active

To                         Action      From
--                         ------      ----
Anywhere                   ALLOW       117.41.237.36
Anywhere                   ALLOW       61.164.186.241
Anywhere                   ALLOW       61.164.186.242
Anywhere                   ALLOW       61.164.186.246
80                         ALLOW       Anywhere
22                         ALLOW       Anywhere