(在非托管/核心托管服务器上)
什么是脑脊液?
在本文中,我们将深入解释如何在非托管或核心托管服务器上设置和自定义 CSF 中的 Messenger 功能。 让我们首先准确定义 CSF 或 ConfigServer Firewall 是什么以及它的作用。
CSF 是一个开源的“状态包检测 (或者 SPI) 用于 Linux 服务器的防火墙、登录/入侵检测和安全应用程序。” 它是一个“安全、简单、灵活且易于配置的平台,包括额外的检查以确保顺利运行。 CSF 可用于任何通用 Linux 操作系统。 CSF 安装包括用于 cPanel、DirectAdmin 和 Webmin 的预配置配置和控制面板 UI。”
此外,CSF 与 LFD(登录失败守护程序)配对。
LFD 进程“连续运行,并会定期(每 X 秒)扫描最新的日志文件条目,以查找针对您的服务器的登录尝试,这些尝试在短时间内持续失败。 此类尝试通常被称为“蛮力攻击”,守护进程对此类模式做出快速响应并迅速阻止违规 IP。 其他类似的产品通过 cron 每 x 分钟运行一次,因此,经常错过闯入尝试,直到它们完成后,我们的守护进程消除了如此长的等待,并使其更有效地执行其任务。”
什么是 CSF 信使?
CSF Messenger 是一项功能,如果用户在防火墙中被阻止,则会向用户显示特定的警告页面,类似于下图所示,CSF 还为用户提供被阻止的 IP 地址,以便当他们联系服务器所有者或管理员时要解除对 IP 的阻止,他们将拥有所需的所有信息,以便在适当的情况下将 IP 列入白名单。
此功能非常灵活,特别是如果有客户端由于被防火墙阻止而经常被锁定在站点之外。 这些用户中的大多数可能会认为服务器或网站有问题,并认为每个人都无法访问它,而事实上,他们根本无法访问它。 这让用户高枕无忧,因为他们知道他们只是被防火墙阻止了,他们可以很容易地从中删除。 此属性还具有通过提供额外的保护层免受潜在的恶意个人或攻击者的保护来挽救失去的业务的潜力。
验证码
您可以通过启用 reCAPTCHA 选项进一步自定义此方面。 reCAPTCHA 功能是一种类似于 CAPTCHA 的方法,旨在验证计算机用户是否为人。 如果用户成功完成验证码挑战,他们可以自行解锁。 我们在下面提供了实施此选项的说明。
笔记:请记住,如果恶意人员被阻止,他们还可以选择通过成功完成验证码挑战来解除阻止。 此外,当启用 ReCaptcha 选项时,默认情况下,当有人成功解锁其 IP 地址时,您还会收到电子邮件警报。 此外,服务器也必须在运行 Apache v2.4 并使用 cPanel 的 EasyApache v4。 Messenger 用户还必须具有脚本提供的特定目录结构。
执行
在非托管/核心托管服务器上通过命令行实现。
这个单行命令将:
- 备份CSF的配置文件
- 将 CSF 更新到最新版本
- 进行必要的配置文件更改
- 然后重新启动 CSF 服务以启用信使功能
(您需要以 root 身份登录或拥有 sudo 使用权)
root@host:~# 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.BYNSS.com 获得 IP 地址后,您需要将其添加到 CSF 中的拒绝列表中
(使用我的测试 IP 174.222.7.113 在 example 以下)
root@host:~# csf -d 174.222.7.113
如果您没有额外的设备或无法使用替代 IP 进行测试,您可以在接下来的 X 秒内暂时阻止自己。 在里面 example 下,IP 将被暂时封锁 30 秒。
root@host:~# csf -td 174.222.7.113 30
一旦被阻止,尝试访问您的域,您将看到类似于以下页面的页面。

要取消阻止备用 IP,请使用此命令。
root@host:~# csf -dr 174.222.7.113
启用 reCAPTCHA 选项 – 非 cPanel 上的命令行
笔记: 这个流程 需要 一个 Gmail 帐户以继续。
首先,您需要创建 reCAPTCHA 站点密钥和密钥。 为此,请访问 谷歌的recaptcha 网站,然后单击页面右上角的“管理控制台”按钮。

登录到您的 Gmail 帐户后,您将被定向到标题为“注册新站点”的页面。 对于站点标签,您可以输入任何您想要的条目,以引用您将要创建的键,例如“CSF Messenger”。 然后,选择您要实施的 reCAPTCHA 方法的类型。 我们更喜欢“reCAPTCHA v2 Checkbox”选项,但其中任何一个都可以。 对于域条目,输入您的服务器的主机名
确保单击您键入的域左侧的加号以添加它. 然后,选中接受 TOS 旁边的框(如果您同意),然后点击提交。

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

接下来,为了使以下步骤更容易,请运行下面提到的命令。 它会询问您上面收到的站点密钥和秘密密钥,然后为您进行所需的更改,最后,它将重新启动 CSF 以实施更改。 如果您偶然犯了错误,只需按“ctrl+c”即可中断/停止命令,或者您可以等到 CSF 完成重新启动,然后再次运行该命令。
root@host:~# 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 信息修改的代码。 为此,请运行以下命令。
root@host:~# 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,或打开 聊天 或与我们联系,与我们经验丰富的支持团队成员交谈,了解更多保护您的站点或服务器的方法!