如何在 Ubuntu 20.04 LTS 上安装 CSF 防火墙

在本教程中,我们将向您展示如何在 Ubuntu 20.04 LTS 上安装 CSF 防火墙。 对于那些不知道的人,ConfigServer Security & Firewall (CSF) 是一种流行的开源有状态数据包检查 (SPI) 安全工具,适用于 Linux。 此外,它为 iptables 提供了一个简单的接口来保护 Linux 服务器。 CSF 具有多种功能,例如状态数据包检测防火墙、入侵检测、登录失败守护程序、DDOS 保护和控制面板集成。

本文假设您至少具备 Linux 的基本知识,知道如何使用 shell,最重要的是,您将网站托管在自己的 VPS 上。 安装非常简单,假设您在 root 帐户下运行,如果不是,您可能需要添加 ‘sudo‘ 到命令以获取 root 权限。 我将向您展示在 Ubuntu 20.04 (Focal Fossa) 上逐步安装 ConfigServer 安全和防火墙 (CSF)。 对于 Ubuntu 18.04、16.04 和任何其他基于 Debian 的发行版(如 Linux Mint),您可以按照相同的说明进行操作。

在 Ubuntu 20.04 LTS Focal Fossa 上安装 CSF 防火墙

步骤 1. 首先,通过运行以下命令确保所有系统包都是最新的 apt 终端中的命令。

sudo apt update sudo apt upgrade

步骤 2. 在 Ubuntu 20.04 上安装 CSF 防火墙。

现在我们从其官网下载最新的 CSF 存档源代码:

wget https://download.configserver.com/csf.tgz

接下来,提取下载的文件,然后运行其安装脚本:

tar -xvzf csf.tgz cd csf sudo bash install.sh

之后,运行 csftest.pl Perl 脚本来验证您的系统上是否安装了所有必需的 iptables 模块以使其正常工作:

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

输出:

Testing ip_tables/iptable_filter...OK Testing ipt_LOG...OK Testing ipt_multiport/xt_multiport...OK Testing ipt_REJECT...OK Testing ipt_state/xt_state...OK Testing ipt_limit/xt_limit...OK Testing ipt_recent...OK Testing xt_connlimit...OK Testing ipt_owner/xt_owner...OK Testing iptable_nat/ipt_REDIRECT...OK Testing iptable_nat/ipt_DNAT...OK  RESULT: csf should function on this server

步骤 3. 配置 CSF。

现在根据您的安全标准配置 CSF。 您可以通过编辑文件来配置它 /etc/csf/csf.conf

nano /etc/csf/csf.conf

根据您的要求更改以下行:

TESTING = "0" RESTRICT_SYSLOG = "3" TCP_IN = "20,21,22,25,53,80,110,143,443,465,587,993,995"  # Allow outgoing TCP ports TCP_OUT = "20,21,22,25,53,80,110,113,443,587,993,995"  # Allow incoming UDP ports UDP_IN = "20,21,53,80,443"  # Allow outgoing UDP ports # To allow outgoing traceroute add 33434:33523 to this list UDP_OUT = "20,21,53,113,123"  # Allow incoming PING. Disabling PING will likely break external uptime # monitoring ICMP_IN = "1"

Save 和 close 文件,然后使用以下命令重新启动 CSF:

csf -r csf -l

输出:

iptables mangle table ===================== Chain PREROUTING (policy ACCEPT 55 packets, 3332 bytes) num pkts bytes target prot opt in out source destination  Chain INPUT (policy ACCEPT 48 packets, 3054 bytes) num pkts bytes target prot opt in out source destination  Chain FORWARD (policy ACCEPT 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination  Chain OUTPUT (policy ACCEPT 24 packets, 15822 bytes) num pkts bytes target prot opt in out source destination  Chain POSTROUTING (policy ACCEPT 24 packets, 15822 bytes) num pkts bytes target prot opt in out source destination  iptables raw table ================== Chain PREROUTING (policy ACCEPT 51 packets, 3321 bytes) num pkts bytes target prot opt in out source destination  Chain OUTPUT (policy ACCEPT 24 packets, 15966 bytes) num pkts bytes target prot opt in out source destination  iptables nat table ================== Chain PREROUTING (policy ACCEPT 12 packets, 1410 bytes) num pkts bytes target prot opt in out source destination  Chain INPUT (policy ACCEPT 0 packets, 0 bytes) num pkts bytes target prot opt in out source destination  Chain OUTPUT (policy ACCEPT 1 packets, 69 bytes) num pkts bytes target prot opt in out source destination  Chain POSTROUTING (policy ACCEPT 1 packets, 23 bytes) num pkts bytes target prot opt in out source destination

步骤 4. 访问 CSF Web 界面。

CSF 提供了一个基于 Web 的界面来从 Web 浏览器管理防火墙。 首先,使用以下命令编辑 CSF 主配置文件:

nano /etc/csf/csf.conf

添加以下行:

#Enable Web UI UI = "1"  #Listening Port UI_PORT = "8080"  #Admin username UI_USER = "admin"  #Admin user password  UI_PASS = "your-password"  #Listening Interface UI_IP = ""

Save 和 close 完成后的文件。 然后,您将需要编辑 /etc/csf/ui/ui.allow 文件并添加您要访问 CSF Web UI 的服务器 IP 地址和远程计算机 IP。

nano /etc/csf/ui/ui.allow

添加您的服务器 IP 和远程机器 IP:

your-server-ip remote-machine-ip

Save 和 close 文件,然后重新启动 CSF 和 LFD 服务以应用更改:

csf -r service lfd restart

最后,打开您的 Web 浏览器并搜索服务器 IP 地址,然后是端口 8080:

https://your-server-ip:8080

恭喜! 您已成功安装 CSF。 感谢您使用本教程在您的 Ubuntu 20.04 LTS Focal Fossa 系统上安装 ConfigServer Security and Firewall。 如需更多帮助或有用信息,我们建议您查看 CSF官方网站.