UFW防火墙简单教程

UFW(Uncomplicated Firewal)Ubuntu上基于iptables的一个防火墙管理软件,使用UFW我们可以更方便的管理服务器上的防火墙,本文记录一些关于UFW使用教程。

安装UFW

一条命令:

1
sudo apt-get install ufw

如果返回了具体版本信息,说明安装成功:

查看版本:

1
2
3
sudo ufw version
// ufw 0.36
// Copyright 2008-2015 Canonical Ltd.

食用UFW

查看状态:

1
2
3
4
5
6
7
8
9
10
11
12
13
// inactive 关闭
// active 开启
sudo ufw status

// 输出
Status: active

To Action From
-- ------ ----
OpenSSH ALLOW Anywhere
Nginx HTTP ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)
Nginx HTTP (v6) ALLOW Anywhere (v6)

查看状态详细信息,可以在后面加verbose:

1
sudo ufw status verbose

显示服务编号:

1
sudo ufw status numbered

开启/关闭ufw

1
2
3
4
// 开启
sudo ufw enable
// 关闭
sudo ufw disable

设置ufw的默认策略:

1
2
3
4
5
// 默认禁止所有其它主机连接该主机
sudo ufw default deny incoming

// 默认允许该主机所有对外连接请求
sudo ufw default allow outgoing

设置其他链接规则

只允许特定的服务(服务名)

1
2
// 只允许ssh服务
sudo ufw allow ssh

只允许特定的服务(端口)

1
sudo ufw allow 22

只允许特定协议的端口访问

1
sudo ufw allow 21/tcp

允许特定端口范围

1
2
sudo ufw allow 6000:6007/tcp
sudo ufw allow 6000:6007/udp

允许特定IP地址访问

1
sudo ufw allow from 192.168.1.100

允许特定范围主机(192.168.1.1 - 192.168.1.254)

1
sudo ufw allow from 192.168.168.1/24

允许特定范围主机访问特定端口

1
sudo ufw allow from 192.168.1.0/24 to any port 22

允许连接到特定的网卡

1
sudo ufw allow in on eth0 to any port 80

拒绝链接规则

将 allow 替换为 deny(服务名)

1
sudo ufw deny http

将 allow 替换为 deny(ip)

1
sudo ufw deny from 192.168.1.100

删除链接规则

按编号删除规则

这时就需要用到我们上面的规则编号了:

1
2
3
sudo ufw status numbered
// 删除编号为2的规则
sudo ufw delete allow 2

按服务名删除

1
sudo ufw delete allow ssh

重置ufw

1
sudo ufw reset

这个命令会将ufw恢复至初始状态。