如何安装和配置UFW - Debian / Ubuntu中的一个不复杂的防火墙

ufw(不复杂的防火墙)是最广泛使用的iptables防火墙的前端,它对基于主机的防火墙很舒适。

由于计算机相互连接,服务都在快速增长。 电子邮件社交媒体在线购物聊天 ,直到Web会议是使用用户服务。 但在另一边这种连接只是喜欢双面刀。 它也有可能坏消息发送到像病毒恶意软件的这些计算机, 木马,应用程序是其中之一。

UFW防火墙的Ubuntu

安装UFW防火墙

互联网,作为最大的计算机网络并不总是充满好的人。 为了确保我们的计算机/服务器是安全的,我们需要保护它。

一个计算机/服务器上必须有分量的是防火墙 维基百科 ,一个定义是:

在计算中,防火墙是基于软件或基于硬件的网络安全系统,其通过基于应用的规则集来分析数据分组并确定它们是否应被允许通过来控制输入和输出网络业务。

iptables的是,广泛使用由服务器防火墙之一。 它是用于基于一组规则管理服务器中的传入和传出流量的程序。 通常,只有可信连接才允许进入服务器。 但是iptables的在控制台模式运行,这是复杂的。 那些熟悉iptables规则和命令的人,他们可以阅读以下描述如何使用iptables防火墙的文章。

  1. 基本IPTables(Linux防火墙)指南

在Debian / Ubuntu中安装UFW Firewall

为了减少如何对设置的iptables的复杂性,有很多的主音。 如果您正在运行Ubuntu Linux操作系统,你会发现UFW作为默认的防火墙工具。 让我们开始探索约UFW防火墙。

什么是ufw

所述UFW( 单纯性防火墙 )为最广泛使用的iptables防火墙的前端,这是为基于主机的防火墙以及舒适。 UFW给出了netfilter的管理框架,并提供了一个命令行界面来控制防火墙。 它为不熟悉防火墙概念的Linux新手提供了用户友好和易于使用的界面。

而另一方面,相同的复杂命令帮助管理员使用命令行界面设置复杂的规则。 UFW是上游的其他发行比如Debian,UbuntuLinux Mint的

基本用法ufw

首先,检查是否使用下列命令安装UFW。

$ sudo dpkg --get-selections | grep ufw
ufw 		install

如果它没有安装,你可以使用apt命令,如下图所示安装。

$ sudo apt-get install ufw

在使用之前,应检查是否UFW运行与否。 使用以下命令检查它。

$ sudo ufw status

如果您发现了状态: 闲置 ,这意味着它不活跃或禁用。

新!一个每一个Linux的管理员必不可少的电子书! 下载免费696页电子书

启用/禁用ufw

要启用它,您只需要在终端上键入以下命令。

$ sudo ufw enable
Firewall is active and enabled on system startup

要禁用它,只需键入。

$ sudo ufw disable

列出当前ufw规则

防火墙激活后,您可以向其中添加规则。 如果要查看默认规则是什么,可以键入。

$ sudo ufw status verbose
示例输出
Status: active
Logging: on (low)
Default: deny (incoming), allow (outgoing)
New profiles: skip
$

如何添加ufw规则

如您所见,默认情况下,每个传入连接都被拒绝。 如果你想远程你的机器,那么你必须允许适当的端口。 例如,你想允许SSH连接。 这里是允许它的命令。

允许访问
$ sudo ufw allow ssh
[sudo] password for pungki :
Rule added
Rule added (v6)
$

如果再次检查状态,您将看到类似的输出。

$ sudo ufw status
To 		Action 			From
-- 		----------- 		------
22 		ALLOW 			Anywhere
22 		ALLOW 			Anywhere (v6)

如果你有很多规则,并且想要在每个规则上放置数字,使用参数编号。

$ sudo ufw status numbered
To 		Action 			From
------ 		----------- 		------
[1] 22 		ALLOW 			Anywhere
[2] 22 		ALLOW 			Anywhere (v6)

第一条规则说,从任何地方22端口传入的连接,无论是TCPUDP数据包是允许的。 如果你希望只允许TCP数据包? 然后您可以将端口号后添加参数的TCP。 这里有一个示例输出示例。

$ sudo ufw allow ssh/tcp
To 		Action 			From
------ 		----------- 		------
22/tcp 		ALLOW 			Anywhere
22/tcp 		ALLOW 			Anywhere (v6)
拒绝访问

同样的技巧应用于拒绝规则。 让我们说你要拒绝FTP规则。 所以你只需要输入。

$ sudo ufw deny ftp
To 		Action 			From
------ 		----------- 		------
21/tcp 		DENY 			Anywhere
21/tcp 		DENY 			Anywhere (v6)

添加特定端口

有时我们有一个自定义端口,不遵循任何标准。 比方说,我们我们的机上更改SSH端口222290。 然后允许端口2290,我们可以增加它这样。

$ sudo ufw allow
To 		Action 			From
-- 		----------- 		------
2290 		ALLOW 			Anywhere
2290 		ALLOW 			Anywhere (v6)

它也可能为你添加端口范围到规则。 如果我们想从2290打开端口- 2300 TCP协议,那么该命令将是这样。

$ sudo ufw allow 2290:2300/tcp
To 			Action 			From
------ 			----------- 		------
2290:2300/tcp 		ALLOW 			Anywhere
2290:2300/tcp 		ALLOW			Anywhere (v6)

如果你想使用UDP时,只需要使用下面的命令。

$ sudo ufw allow 2290:2300/udp
To 			Action 			From
------ 			----------- 		------
2290:2300/udp 		ALLOW 			Anywhere
2290:2300/udp 		ALLOW			Anywhere (v6)

请记住,你必须把“TCP”“UDP”明确,否则你会得到类似下面的错误消息。

ERROR: Must specify ‘tcp’ or ‘udp’ with multiple ports

添加特定IP

此前我们已经添加基于服务端口的规则。 UFW还允许您根据IP地址添加规则。 这里是示例命令。

$ sudo ufw allow from 192.168.0.104

还可以使用子网掩码来更宽的范围内。

$ sudo ufw allow form 192.168.0.0/24
To 		Action 			From
-- 		----------- 		------
Anywhere	ALLOW 			192.168.0.104
Anywhere	ALLOW 			192.168.0.0/24

正如你可以看到,从参数只会限制连接的来源。 虽然目的地-这是由代表列-是无处不在 您还可以管理使用' '参数目的地。 让我们来看看样品允许访问端口22(SSH)。

$ sudo ufw allow to any port 22

上面的命令将允许从任何地方和任何协议, 端口22访问。

组合参数

对于更具体的规则,也可以结合IP地址, 协议端口 比方说,我们要建立的规则,限制只能从IP 192.168.0.104,只有TCP协议和22端口的连接。 然后命令将如下所示。

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

创建拒绝规则的语法与allow rule类似。 你只需要改变从允许 否认参数。

删除规则

有时您可能需要删除现有规则。 再一次用UFW很容易删除规则。 从上面的示例,您有一个规则,你想删除它。

To 		Action 			From
-- 		----------- 		------
22/tcp		ALLOW 			192.168.0.104
21/tcp		ALLOW 			Anywhere
21/tcp 		ALLOW 			Anywhere (v6)

有两种删除规则的方法。

方法1

下面的命令将删除匹配服务,FTP的规则。 因此,21 / TCP这意味着FTP端口将被删除。

$ sudo ufw delete allow ftp
方法2

但是当你试图删除第一个规则在上面的例子使用下面的命令。

$ sudo ufw delete allow ssh
Or 
$ sudo ufw delete allow 22/tcp

您可能会看到一个错误消息,如。

Could not delete non-existent rule
Could not delete non-existent rule (v6)

然后你可以做这个把戏。 如上所述,您可以显示规则的数量,以指明我们要删除哪个规则。 让我们向你展示。

$ sudo ufw status numbered
To 		Action 			From
-- 		----------- 		------
[1] 22/tcp		ALLOW 			192.168.0.104
[2] 21/tcp		ALLOW 			Anywhere
[3] 21/tcp 		ALLOW 			Anywhere (v6)

然后可以使用删除第一个规则。 “Y”将永久删除的规则。

$ sudo ufw delete 1
Deleting :
Allow from 192.168.0.104 to any port 22 proto tcp
Proceed with operation (y|n)? y

从这些方法,你会看到其中的差别。 方法2将询问用户确认删除规则,而方法1不前。

如何重置规则

在某些情况下,你可能想要删除 / 重置所有规则。 你可以通过输入。

$ sudo ufw reset
Resetting all rules to installed defaults. Proceed with operation (y|n)? y

如果按“Y”,然后UFW将备份做重置您的UFW之前的所有现有规则。 重置规则还将禁用防火墙。 如果您想使用它,您需要重新启用它。

高级功能

如上所述,ufw防火墙可以做任何iptables可以做的。 这是通过使用不同的规则集文件,这无非是iptables的-恢复适当的文本文件来完成的。 微调ufw和/或放置额外的iptables命令不允许通过ufw命令是编辑几个文本文件的问题。

  1. 在/ etc /默认/ UFW:默认策略,IPv6支持和内核模块的主要配置。
  2. /etc/ufw/before[6].rules:在这些文件中的规则计算任何规则通过UFW命令添加之前。
  3. /etc/ufw/after[6].rules:在这些文件中的规则都通过UFW命令添加任何规则后计算。
  4. /etc/ufw/sysctl.conf:内核网络可调参数。
  5. /etc/ufw/ufw.conf:设置是否UFW上启动启用并设置LOGLEVEL。

结论

UFW作为前端的iptables必将使一个简单的界面用户。 用户不需要记住复杂的语法iptables的。UFW也可以使用“ 纯英语 ”作为它的参数。

允许拒绝复位是其中之一。 我相信有更多的iptables前端在那里。 但是毫无疑问,ufw是用户希望快速,轻松,安全地设置防火墙的最佳选择之一。 通过为更详细键入man UFW请访问UFW手册页