如何在 CSF 中设置 Messenger — 第 1 部分

(在非托管/核心托管服务器上)

什么是脑脊液?

在本文中,我们将深入解释如何在非托管或核心托管服务器上的 CSF 中设置和自定义信使功能。 让我们首先准确定义 CSF 或 ConfigServer Firewall 是什么以及它的作用。

CSF 是一个开源的“状态包检测 (或者 SPI) 防火墙、Linux 服务器的登录/入侵检测和安全应用程序。” 它是一个“安全、简单、灵活且易于配置的平台,其中包含额外的检查以确保顺利运行。 CSF 可用于任何通用 Linux 操作系统。 CSF 安装包括用于 cPanel、DirectAdmin 和 Webmin 的预配置配置和控制面板 UI。”

configserver.com

此外,CSF 与 LFD(登录失败守护进程)配对。

LFD 进程“持续运行,并将定期(每 X 秒)扫描最新的日志文件条目,以查找针对您的服务器的登录尝试,这些尝试在短时间内不断失败。 此类尝试通常称为“暴力攻击”,守护进程对此类模式做出快速响应并快速阻止攻击 IP。 其他类似的产品通过 cron 每 x 分钟运行一次,因此,经常错过闯入尝试,直到它们完成后,我们的守护进程消除了如此长时间的等待并使其更有效地执行任务。”

configserver.com

什么是CSF Messenger?

CSF messenger 是一项功能,如果用户在防火墙中被阻止,则向用户显示特定的警告页面,类似于下图所示,CSF 还为用户提供被阻止的 IP 地址,以便当他们联系服务器所有者或管理员时要解锁 IP,他们将拥有所需的所有信息,以便在适当的情况下将 IP 列入白名单。

此功能非常灵活,特别是如果有客户端由于被防火墙阻止而经常被锁定在站点之外。 这些用户中的大多数可能认为服务器或站点有问题,并认为每个人都已关闭,而实际上,他们根本无法访问。 这让用户高枕无忧,因为他们知道他们只是被防火墙阻止了,他们可以很容易地从防火墙中删除。 此属性还具有通过为潜在恶意个人或攻击者提供额外保护层来挽救业务损失的潜力。

重新验证码

您可以通过启用 reCAPTCHA 选项进一步自定义此方面。 reCAPTCHA 功能是一种类似于 CAPTCHA 的方法,旨在验证计算机用户是否为人类。 如果用户成功完成验证码挑战,他们可以解锁自己。 我们在下面包含了实施此选项的说明。

笔记:请记住,如果恶意人员被阻止,他们也可以通过成功完成验证码挑战来解除阻止。 此外,当启用 ReCaptcha 选项时,默认情况下,当有人成功解锁其 IP 地址时,您还会收到电子邮件警报。 此外,服务器还必须正在运行 Apache v2.4 并使用 cPanel 的 EasyApache v4。 Messenger 用户还必须具有脚本提供的特定目录结构。

执行

在非托管/核心托管服务器上通过命令行实现。

这个单行命令将:

  • 备份CSF的配置文件
  • 将 CSF 更新到最新版本
  • 进行必要的配置文件更改
  • 然后重新启动CSF服务以启用信使功能
    (您需要以 root 身份登录或拥有 sudo 使用权)
[email protected]:~# cp /etc/csf/csf.conf{,.backup} && csf -u && sed -i 's/MESSENGER = "0"/MESSENGER = "1"/g' /etc/csf/csf.conf ; sed -i 's/MESSENGERV2 = "0"/MESSENGERV2 = "1"/g' /etc/csf/csf.conf ; sed -i 's/MESSENGER_HTTPS_IN = ""/MESSENGER_HTTPS_IN = "443"/g' /etc/csf/csf.conf ; useradd csf -s /bin/false ; csf -ra

要测试此功能,我们建议使用与您设置此功能的 PC 未连接到同一网络的其他设备。 一旦您与在不同网络中运行的其他设备联机,您将需要检索您的公共 IP。 你可以通过简单地做到这一点 ip.CodePre.com 获得 IP 地址后,您需要将其添加到 CSF 中的拒绝列表中

(在下面的示例中使用我的测试 IP 174.222.7.113)

[email protected]:~# csf -d 174.222.7.113

如果您没有额外的设备或方法来使用替代 IP 进行测试,您可以在接下来的 X 秒内暂时阻止自己。 在下面的示例中,IP 将被临时阻止 30 秒。

[email protected]:~# csf -td 174.222.7.113 30

一旦被阻止,尝试访问您的域,您将看到类似于以下页面的页面。

firewall.block.page-2

要取消阻止备用 IP,请使用此命令。

[email protected]:~# csf -dr 174.222.7.113

启用 reCAPTCHA 选项 – 非 cPanel 上的命令行

笔记: 这个流程 需要 一个 Gmail 帐户以继续。

首先,您需要创建 reCAPTCHA 站点密钥和密钥。 为此,请访问 谷歌的 recaptcha 网站,然后单击页面右上角的“管理控制台”按钮。

recaptcha.setup.1

登录 Gmail 帐户后,您将被定向到标题为“注册新站点”的页面。 对于站点标签,您可以输入任何您想要的条目,以便引用您将要创建的密钥,例如“CSF Messenger”。 然后,选择您要实施的 reCAPTCHA 方法的类型。 我们更喜欢“reCAPTCHA v2 Checkbox”选项,但它们中的任何一个都可以使用。 对于域条目,输入服务器的主机名

确保单击您键入的域左侧的加号以添加它. 然后,选中接受 TOS 旁边的框(如果您同意),然后点击提交。

recapregMOD

后续页面将在第一个框中显示站点密钥,在第二个框中显示密钥。 您需要将这些密钥放在手边,因为接下来您将需要它们来配置 CSF 中的 reCAPTCHA 选项。

recaptcha.setup.3

接下来,为了使以下步骤更容易,请运行下面提到的命令。 它会询问您上面收到的 Site Key 和 Secret Key,然后为您进行所需的更改,最后,它会重新启动 CSF 以实施更改。 如果您偶然出错,只需按 ‘ctrl+c’ 来中断/停止命令,或者您可以等到 CSF 完成重新启动,然后再次运行该命令。

[email protected]:~# cat echo "What is the Site Key?:" ; read skey ; echo "What is the Secret Key?:" ; read secret ; sed -i '/RECAPTCHA_SITEKEY = "/cRECAPTCHA_SITEKEY = "'$skey'"' /etc/csf/csf.conf ; sed -i '/RECAPTCHA_SECRET = "/cRECAPTCHA_SECRET = "'$secret'"' /etc/csf/csf.conf ; csf -ra

接下来,我们需要将 CSF Messenger 的默认 index.php 替换为使用 reCAPTCHA 信息修改的代码。 为此,请运行以下命令。

[email protected]:~# cat /etc/csf/messenger/index.recaptcha.php > /home/csf/public_html/index.php

最后,按照与上述相同的步骤设置 IP 的防火墙测试块,以尝试 reCAPTCHA 自动解锁功能。

笔记:解锁功能可能需要几秒钟才能完成。 在我们的测试中,有时我们不得不等待长达 10 秒的时间才能解锁 IP。 (我们的平均等待时间平均不到 3 秒)。

如果您想自定义文件所在的块页面上的外观、功能或信息; /home/csf/public_html/,特别是 /home/csf/public_html/index.php。

我们很乐意您加入我们!

您是否一直在寻找新的安全功能以进一步增强站点或服务器的安全性? 如果是这样,Liquid Web 有专家随时待命,帮助您实现此类功能和许多其他功能!

给我们打电话 800.580.4985,或打开一个 聊天 或与我们联系,与我们经验丰富的支持团队成员之一交谈,以了解更多保护您的站点或服务器的方法!