欢迎光临
我们一直在努力

Cloudflare-ufw终极指南:如何用脚本自动更新UFW防火墙规则保护服务器

Cloudflare-ufw终极指南:如何用脚本自动更新UFW防火墙规则保护服务器

【免费下载链接】cloudflare-ufw Script to update UFW with Cloudflare IPs 【免费下载链接】cloudflare-ufw 项目地址: https://gitcode.com/gh_mirrors/cl/cloudflare-ufw

Cloudflare-ufw是一款专为服务器管理员设计的实用脚本工具,能够自动将Cloudflare的IP地址列表更新到UFW防火墙规则中,为服务器提供更安全的网络访问控制。通过定期执行该脚本,你可以确保服务器只接受来自Cloudflare的合法流量,有效阻挡恶意攻击和未授权访问。

🛡️ 为什么需要Cloudflare-ufw?

在当今复杂的网络环境中,服务器安全面临着诸多挑战。Cloudflare作为全球领先的CDN和安全服务提供商,其IP地址库会定期更新以应对不断变化的网络威胁。手动更新UFW规则不仅耗时费力,还容易出错。Cloudflare-ufw脚本解决了这一痛点,实现了IP地址列表的自动同步,让你的服务器防护始终保持最新状态。

核心优势

  • 自动化更新:无需手动检查和添加Cloudflare IP地址
  • 提升安全性:只允许来自Cloudflare的流量访问服务器
  • 简单易用:适合新手和普通用户的操作流程
  • 灵活配置:可根据需求限制特定端口访问

🚀 准备工作:UFW防火墙基础设置

在使用Cloudflare-ufw脚本之前,需要确保你的服务器已经正确安装并配置了UFW防火墙。大多数Linux发行版都预装了UFW,你可以通过以下步骤进行基础设置。

检查UFW状态

首先确认UFW是否已安装并处于非活动状态: sudo ufw status verbose 如果输出结果显示"Status: inactive",则可以继续下一步;如果UFW已启用,请先执行以下命令将其禁用: sudo ufw disable

重置并配置默认规则

清除现有规则并设置默认策略: sudo ufw reset sudo ufw default deny incoming sudo ufw default allow outgoing

添加关键访问规则

为了避免在配置过程中被锁定在服务器之外,需要先添加两条重要规则:

  • 允许本地网络访问: sudo ufw allow from 192.168.1.0/24
  • 允许SSH访问: sudo ufw allow ssh
  • 启用UFW防火墙

    完成上述配置后,启用UFW: sudo ufw enable 系统会提示"命令可能会中断现有的SSH连接",由于我们已经添加了SSH访问规则,因此可以放心输入"y"继续。

    验证基础配置

    执行以下命令检查当前UFW规则状态: sudo ufw status verbose

    🔧 安装Cloudflare-ufw脚本

    克隆项目仓库

    首先将项目代码克隆到你的服务器: git clone https://gitcode.com/gh_mirrors/cl/cloudflare-ufw

    运行脚本

    进入项目目录并执行脚本: cd cloudflare-ufw sudo ./cloudflare-ufw.sh

    脚本会自动从Cloudflare官方网站下载最新的IPv4和IPv6地址列表,并将这些IP地址添加到UFW规则中,每条规则都会标记"Cloudflare IP"以便识别。

    验证规则添加结果

    再次运行状态命令检查是否成功添加了Cloudflare IP规则: sudo ufw status verbose

    ⚙️ 自定义规则配置

    Cloudflare-ufw脚本提供了多种规则配置选项,你可以根据实际需求修改cloudflare-ufw.sh文件来自定义访问控制策略。

    默认规则

    脚本默认允许来自Cloudflare IP的所有TCP流量: for cfip in `curl -sw '\\n' https://www.cloudflare.com/ips-v{4,6}`; do ufw allow proto tcp from $cfip comment 'Cloudflare IP'; done

    限制特定端口

    如果你只想允许特定端口的流量,可以注释默认规则并取消相应示例规则的注释:

    仅允许80端口

    #for cfip in `curl -sw '\\n' https://www.cloudflare.com/ips-v{4,6}`; do ufw allow proto tcp from $cfip to any port 80 comment 'Cloudflare IP'; done

    仅允许443端口

    #for cfip in `curl -sw '\\n' https://www.cloudflare.com/ips-v{4,6}`; do ufw allow proto tcp from $cfip to any port 443 comment 'Cloudflare IP'; done

    允许80和443端口

    #for cfip in `curl -sw '\\n' https://www.cloudflare.com/ips-v{4,6}`; do ufw allow proto tcp from $cfip to any port 80,443 comment 'Cloudflare IP'; done

    📅 设置定期自动更新

    由于Cloudflare的IP地址列表会定期更新,建议设置脚本每周自动执行,以确保UFW规则始终保持最新状态。

    使用Cron调度任务

  • 编辑crontab配置: sudo crontab -e

  • 添加以下行以在每周一午夜执行脚本: 0 0 * * 1 /your/path/cloudflare-ufw/cloudflare-ufw.sh > /dev/null 2>&1 请将"/your/path"替换为实际的脚本路径。

  • 使用Node-RED(可选)

    如果你使用Node-RED,可以添加一个"exec"节点,输入以下命令,并设置每周触发一次: sudo /your/path/cloudflare-ufw/./cloudflare-ufw.sh

    📝 UFW常用管理命令

    掌握以下UFW命令可以帮助你更好地管理防火墙规则:

    查看规则状态

    sudo ufw status verbose

    查看编号规则列表

    sudo ufw status numbered

    删除特定规则

    首先通过编号列表找到要删除的规则编号,然后执行: sudo ufw delete 规则编号 例如删除编号为34的规则: sudo ufw delete 34

    禁用UFW

    sudo ufw disable

    重置所有规则

    sudo ufw reset

    🎯 总结

    Cloudflare-ufw脚本为服务器管理员提供了一种简单高效的方式来维护与Cloudflare IP地址同步的防火墙规则。通过本文介绍的步骤,你可以轻松完成从基础配置到高级定制的全过程,为服务器添加一层强大的安全防护。

    无论是个人博客还是企业服务器,定期更新Cloudflare IP地址列表都是确保网络安全的重要措施。现在就开始使用Cloudflare-ufw,让你的服务器防护更加智能、高效!

    该项目的概念最初由Leow Kah Man开发,现在通过社区贡献得以持续优化和维护。

    【免费下载链接】cloudflare-ufw Script to update UFW with Cloudflare IPs 【免费下载链接】cloudflare-ufw 项目地址: https://gitcode.com/gh_mirrors/cl/cloudflare-ufw

    创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

    赞(0)
    未经允许不得转载:171主机测评 » Cloudflare-ufw终极指南:如何用脚本自动更新UFW防火墙规则保护服务器
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址