分享最新优惠信息
购买主机更加划算

Debian/Ubuntu系统安装配置服务器防火墙(CSF)详细教程

ConfigServerSecurity Firewall,简称CSF,是一款专为Linux服务器设计的开源高级防火墙,它不仅提供了防火墙的基本功能,还提供了广泛的附加功能,例如登录/入侵检测、漏洞检查、死亡保护等。

此外,CSF还为cPanel、Webmin、Vesta CP、Cyber​​Panel和DirectAdmin等主流控制面板提供UI集成,用户可以在ConfigServer 的官方网站上找到支持的功能和操作系统的完整列表。

在本文当中,小编将简单介绍在Debian和Ubuntu系统上安装和配置ConfigServer Security & Firewall ( CSF ) 的主要过程。

第 1 步:在Debian和Ubuntu上安装CSF防火墙

首先,在开始安装CSF防火墙之前,需要安装一些依赖项,需要更新包索引:

$ sudo apt update

接下来,安装依赖项,输入以下命令:

$ sudo apt install wget libio-socket-ssl-perl git perl iptables libnet-libidn-perl libcrypt-ssleay-perl libio-socket-inet6-perl libsocket6-perl sendmail dnsutils unzip

安装完成之后,就可以进行下一步了。

由于CSF不包含在默认的Debian和Ubuntu存储库中,因此需要手动安装它,可以使用以下wget 命令下载包含所有安装文件的CSF tarball 文件。

$ wget http://download.configserver.com/csf.tgz

这样会下载一个名为csf.tgz的压缩文件。

下载配置服务器防火墙

接下来,解压缩压缩文件。

$ tar -xvzf csf.tgz

这将创建一个名为csf的文件夹。

$ ls -l

配置服务器防火墙文件

接下来,导航到csf文件夹。

$ cd csf

然后通过运行显示的安装脚本来安装CSF防火墙。

$ sudo bash install.sh

如果一切顺利,CSF防火墙就会安装完毕。

此时,CSF已安装。但是,需要验证是否已加载所需的iptables。为此,请运行以下命令:

$ sudo perl /usr/local/csf/bin/csftest.pl

列出CSF iptables规则

第 2 步:在Debian和Ubuntu上配置CSF防火墙

接下来需要一些额外的配置,首先需要修改一些设置来启用CSF。因此,转到csf.conf配置文件。

$ sudo nano /etc/csf/csf.conf

TESTING指令从“1”编辑为“0”,如下所示。

TESTING = "0"

禁用CSF测试

接下来,将RESTRICT_SYSLOG指令设置为“3”,以将rsyslog/syslog访问权限仅限于RESTRICT_SYSLOG_GROUP的成员。

RESTRICT_SYSLOG = "3"

限制CSF Rsyslog访问

下一步就是可以通过定位TCP_INTCP_OUTUDP_INUDP_OUT指令来打开TCP和UDP端口。

默认情况下,打开以下端口。

TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995"

TCP_OUT = "20,21,22,25,53,80,110,113,443,587,993,995"

UDP_IN = "20,21,53,80,443"

UDP_OUT = "20,21,53,113,123"

打开CSF端口

当然,你可能不需要打开所有这些端口,最好是打开正在使用的端口。因此,小编建议你删除所有不必要的端口,并保留系统上运行的服务正在使用的端口。

完成指定所需端口后,输入以下命令重新加载CSF。

$ sudo csf -r

要列出服务器上定义的所有 IP 表规则,请运行以下命令:

$ sudo csf -l

你也可以在启动时启动并启用CSF防火墙,如下命令:

$ sudo systemctl start csf
$ sudo systemctl enable csf

然后确认防火墙确实在运行:

$ sudo systemctl status csf

检查CSF状态

第 3 步:在CSF防火墙中阻止和允许IP地址

防火墙的关键功能之一是允许或阻止IP地址访问服务器的能力。使用CSF可以通过修改以下配置文件将IP地址列入白名单 ( allow )、黑名单 ( deny ) 或忽略IP地址:

  • csf.allow
  • csf.deny
  • csf.ignore

阻止CSF中的IP地址

要阻止IP地址,只需访问csf.deny配置文件。

$ sudo nano /etc/csf/csf.deny

然后指定要阻止的IP地址,可以逐行指定IP地址,如下所示:

192.168.100.60
192.168.100.70

或者,可以使用CIDR表示法来阻止整个子网。

192.168.100.0/24

在CSF中允许IP地址

要允许IP地址通过Iptables并将其从所有过滤器或块中排除,请编辑csf.allow配置文件。

$ sudo nano /etc/csf/csf.allow

可以为每行列出一个IP地址,或者使用前面演示的CIDR来表示。

注意即使在csf.deny配置文件中明确了IP地址,如果csf.allow文件也定义了该IP地址,那么该IP也是允许的。因此,要确保IP地址被阻止或列入黑名单,请确保它未在csf.allow文件中出现。

在CSF中排除IP地址

此外,CSF使你能够从IPtables或过滤器中排除IP地址。csf.ignore文件中的任何IP地址都将从 iptables过滤器中排除,只有在csf.deny文件中指定时才能阻止它。

要从过滤器中排除IP地址,请访问csf.ignore文件。

$ sudo nano /etc/csf/csf.ignore

仍然可以逐行列出IP或使用CIDR表示法。

结论

总之,以上就是在Debian/Ubuntu系统安装和配置服务器防火墙(CSF)全部教程,设置过程仅供参考。

其实,在使用Linux系统服务器的时候,安全设置非常重要,有时候设置好防护墙可以有效为系统增加一道安全屏障。

未经允许不得转载:惠主机 » Debian/Ubuntu系统安装配置服务器防火墙(CSF)详细教程