Linux发行版我一直比较喜欢使用debian,这次新购买的VPS服务器当然安装的就是最新版本的Debian 12系统。 DMIT不像阿里云这些自带了安全规则控制功能,等于我们的IP是直接分配到我们的服务器上面的,这样的话,安全措施就必须都由运维人员进行管理了。
这次安装完Debian12系统后,就开始找防火墙工具,其实之前看到ufw,但是一直没有去学习,因为linux对我来说,防火墙就是iptables了,但是iptables使用起来没有那么的简单,需要了解更多的底层知识。
UFW(简单防火墙)是一个防火墙配置工具,它运行在 iptables 之上,默认情况下包含在 Ubuntu 发行版中。它提供了一个简化的界面,用于通过命令行配置常见的防火墙用例。 这是一段对UFW的介绍,其实就是对iptables的进行了复杂性的封装,让上层使用起来更加的简便。因为很多时候,如果只是做防火墙的时候,就是开放端口这些基本的操作就可以了,而不需要我们去理解iptables中的INPUT OUTPUT链这些知识了。 安装UFW 在Debian中安装ufw非常的方便,直接运行下面的命令就可以完成安装了。我都是使用的root用户安装,如果是其他用户,记得使用sudo执行
|
|
配置防火墙
安装完毕以后,我们首先把ssh端口进行开放,避免后续启用ufw防火墙以后,连接不上服务器就麻烦一点了。
|
|
然后我们就是启用ufw了
|
|
ufw会提示你,启用命令会关闭现有的ssh连接,是否继续?我们已经开放了ssh端口,直接y确认。
这样,我们默认的规则是拒绝所有的入站流量,运行所有的出站流量,并且只开放了ssh端口,这样可以极大的提高我们系统的安全性。
当然,我们还需要开放web端口,我们把80、443的默认端口在打开就可以了。
|
|
这样,我们就可以比较放心的对外开放我们的服务了。比如数据库、内部服务这些,都不会默认暴露在互联网上,可以确保我们的服务器不容易因为漏洞被种植木马了。
高级使用方法
如果我们需要定向(比如指定的IP段、端口段),那么我们可以使用稍复杂的命令来执行更加精细化的控制
比如我们需要运行来自 8.8.8.8/32的IP访问我们的SSH服务器,可以这样设置
|
|
或者我们需要拒绝,可以这样执行
|
|
查看ufw当前的规则定义
|
|
禁用ufw
|
|