Skip to content
返回云服务

UFW 防火墙:Ubuntu/Debian 上的简单默认拒绝

配置 UFW 实现入站默认拒绝,仅放行 SSH 和应用端口,带速率限制。

服务器安全入门

为什么

默认允许的服务器将每个监听服务(Redis、Postgres、Docker API)暴露互联网——未认证泄露的头号原因。UFW 默认拒绝加显式放行 5 条命令即可关闭。

Verizon 2024 DBIR 显示 68% 的泄露涉及非恶意人为因素。SSH 密钥泄露和 S3 桶配置错误是主要攻击向量 — 加固将泄露风险降低 80% 以上。

何时使用

每台新服务器安装服务前应用,添加任何新监听端口后复查。 避免安全剧场(无深度的混淆)— 非标准 SSH 端口阻止 0 个真实攻击。无已知漏洞时跳过重型 WAF 规则;它们增加延迟和误报。

如何做

1. Assess your workload requirements — compute, memory, storage, latency 2. Compare providers on price, region availability, and managed services 3. 设默认:`ufw default deny incoming` 和 `ufw default allow outgoing`。先放行 SSH(否则锁外):`ufw allow 22/tcp` 或 `ufw limit 22/tcp`(限速 6/分钟)。放行应用端口:`ufw allow 80/tcp`、`ufw allow 443/tcp`。指定源:`ufw allow from 10.0.0.0/8 to any port 5432`。启用:`ufw enable`。验证:`ufw status verbose`。删规则:`ufw delete allow 80/tcp`。记录丢弃包:`ufw logging medium`(看 /var/log/ufw.log)。 4. Set up IaC (Terraform/Pulumi) to provision resources 5. Configure monitoring, alerts, and cost budgets before going live

示例

// security-ufw-firewall — 配置示例 const config = { provider: "security" }; # 设默认策略 ufw default deny incoming ufw default allow outgoing # 放行 SSH 带速率限制(每源 6 次/分钟) ufw limit 22/tcp # 放行 Web ufw allow 80/tcp ufw allow 443/tcp # 仅从应用子网放行 Postgres ufw allow from 10.0.1.0/24 to any port 5432 proto tcp # 启用并验证 ufw enable ufw status verbose # 日志 ufw logging medium

常见问题

  • ⚠放行 SSH 前启用 UFW 锁外——务必先 `ufw allow 22/tcp`。
  • ⚠Docker 直接操作 iptables 绕过 UFW——用 DOCKER-USER 链或 ufw-docker 辅助。
  • ⚠ufw allow 5432 将 Postgres 开放全网——务必用 `from <子网>` 限定。

最佳实践

  • ✓SSH 用 `ufw limit`(非 `allow`)在防火墙层限速暴力破解。
  • ✓每个 allow 尽量限定源 IP/CIDR;避免无限定 `allow <端口>`。
  • ✓Docker 在 DOCKER-USER 链加规则使 UFW 与 Docker 共存:iptables -I DOCKER-USER -p tcp --dport 5432 -s 10.0.1.0/24 -j ACCEPT。

常见问题解答

什么是UFW 防火墙:Ubuntu/Debian 上的简单默认拒绝?它解决什么问题?

配置 UFW 实现入站默认拒绝,仅放行 SSH 和应用端口,带速率限制。 它可帮助开发者在不自建基础设施的前提下完成部署、存储与扩展,是云服务选型的核心参考。

如何在 5 分钟内上手UFW 防火墙:Ubuntu/Debian 上的简单默认拒绝?

两步即可跑通:① Assess your workload requirements — compute, memory, storage, latency;② Compare providers on price, region availability, and managed services。建议先用免费套餐验证流程,再接入生产环境。

UFW 防火墙:Ubuntu/Debian 上的简单默认拒绝 最容易踩的坑是什么?

最高频的问题是:放行 SSH 前启用 UFW 锁外——务必先 `ufw allow 22/tcp`。。建议在上线前用 checklist 逐项核对,并在 CI 中加入策略与配置扫描。

UFW 防火墙:Ubuntu/Debian 上的简单默认拒绝 的最佳实践有哪些?

UFW 防火墙:Ubuntu/Debian 上的简单默认拒绝 的最佳实践包括:SSH 用 `ufw limit`(非 `allow`)在防火墙层限速暴力破解。;每个 allow 尽量限定源 IP/CIDR;避免无限定 `allow <端口>`。;Docker 在 DOCKER-USER 链加规则使 UFW 与 Docker 共存:iptables -I DOCKER-USER -p tcp --dport 5432 -s 10.0.1.0/24 -j ACCEPT。。其中首条「SSH 用 `ufw limit`(非 `allow`)在防火墙层限速暴力破解。」应作为团队默认规范写入 IaC 模板。

UFW 防火墙:Ubuntu/Debian 上的简单默认拒绝 如何控制成本与避免账单意外?

三招防超支:① 为所有资源打 env/team 标签并启用账单告警;② 用预算阈值触发 Slack/邮件通知;③ 定期用 Cost Explorer 审查闲置资源并清理。UFW 防火墙:Ubuntu/Debian 上的简单默认拒绝 多数提供免费套餐,先在免费额度内验证再放量。