本文介绍在RHEL/CentOS 8系统上安装和使用CSF Firewall(防火墙)的方法,包括配置和启动CSF。安装系统后首先要做的是配置防火墙并强化服务器以防止任何形式的恶意访问,基于RHEL的系统中最常用的防火墙服务是Firewalld,ConfigServer安全和防火墙(CSF)是一个功能强大的开源状态数据包检测(SPI)防火墙,用于Linux服务器的登录/入侵检测和安全应用程序。
在RHEL/CentOS 8上安装CSF防火墙 如果系统未运行关键应用程序,则可以升级已安装的软件包并重新启动: sudo dnf -y update 完成后,安装Perl: sudo dnf -y install @perl 检查Perl版本: $ perl -v This is perl 5, version 26, subversion 2 (v5.26.2) built for x86_64-linux-thread-multi (with 52 registered patches, see perl -V for more detail) 使用自动化脚本安装CSF,使用curl命令下载它: curl -SL https://download.configserver.com/csf.tgz | tar -xzf - 导航到创建的文件夹-csf: cd csf 运行安装程序: sudo sh install.sh 见下面的示例输出:
测试安装: $ 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 至此,成功安装上了CSF防火墙。
在RHEL/CentOS 8上配置和启动CSF 我们已经在RHEL/CentOS 8上安装了CSF,主要配置文件是/etc/csf/csf.conf,修改此文件以调整防火墙规则和策略,有关允许的TCP和UDP端口,请参阅以下部分:
禁用测试: sudo perl -pi -w -e "s/TESTING = \"1\"/TESTING = \"0\"/" /etc/csf/csf.conf 忽略允许列表中的IP地址: sudo perl -pi -w -e "s/IGNORE_ALLOW = \"0\"/IGNORE_ALLOW = \"1\"/" /etc/csf/csf.conf 安装程序将为你添加systemd服务文件,你可以通过运行来启动它: sudo systemctl enable --now csf 确认服务状态,运行sudo systemctl status csf命令查看:
CSF使用示例 1、阻止IP或子网: sudo csf -d 192.168.0.20 sudo csf -d 192.168.0.0/24 输出内容如下: Adding 192.168.0.20 to csf.deny and iptables DROP… DROP all opt -- in !lo out * 192.168.0.20 -> 0.0.0.0/0 LOGDROPOUT all opt -- in * out !lo 0.0.0.0/0 -> 192.168.0.20 2、从阻止列表中删除IP/子网: $ sudo csf -dr 192.168.0.20 Removing rule… DROP all opt -- in !lo out * 192.168.0.20 -> 0.0.0.0/0 LOGDROPOUT all opt -- in * out !lo 0.0.0.0/0 -> 192.168.0.20 3、在防火墙上允许IP地址: $ sudo csf -a 192.168.15.15 Adding 192.168.15.15 to csf.allow and iptables ACCEPT… ACCEPT all opt -- in !lo out * 192.168.15.15 -> 0.0.0.0/0 ACCEPT all opt -- in * out !lo 0.0.0.0/0 -> 192.168.15.15 4、阻止某些国家/地区 编辑CC_DENY行: # Each option is a comma separated list of CC's, e.g. "US,GB,DE" CC_DENY = "" CC_ALLOW = "" 5、参阅侦听连接的端口: $ sudo csf -p 侦听外部连接的端口以及在其后面运行的可执行文件:
6、用户通过ssh登录时发送电子邮件: LF_SSH_EMAIL_ALERT = "1" 设置警报电子邮件: LF_ALERT_TO = "alerts@example.com" 向你自己发送有关安全检查的电子邮件: csf -m myemail@example.com
配置访问CSF Web UI的方法 CSF集成了可用于配置的Web UI,在/etc/csf/csf.conf文件上启用UI: UI = "1" 你还可以为以下项设置自定义值: # Set this to the port that want to bind this service to UI_PORT = "6666" # Leave blank to bind to all IP addresses on the server UI_IP = "" UI_USER = "admin" UI_PASS = "StrongAdminPassword" 然后将IP地址添加到白名单: sudo echo "YOUR_IP_ADDRESS" >> /etc/csf/ui/ui.allow 启动或重新启动lfd服务: $ sudo systemctl enable --now lfd $ systemctl status lfd
至此,可以在配置的端口上访问CSF防火墙了,成果如下图所示:
相关主题 |