Ubuntu 是 Canonical Ltd 的注册商标。Imaxe.cloud 与 Canonical 没有任何关联或协议:这款 AMI 依照 Ubuntu 22.04 LTS 的自由软件许可证构建,支持服务由我们独立提供。
描述 #
Imaxe Hardened Ubuntu 22.04 LTS 是一款可用于生产、经过安全加固的 AMI,面向需要让 Ubuntu 22 机群在标准维护期结束后仍长期安全运行的组织。我们持续跟踪安全公告、应用关键补丁,并按固定节奏发布更新的 AMI,让您的工作负载在无需进行破坏性操作系统迁移的情况下保持受保护。
镜像出厂即已完成系统加固:默认拒绝的防火墙、强化的 SSH、处于 enforce 模式的 AppArmor、基于 auditd 的审计、AIDE 文件完整性校验、rkhunter rootkit 检测、ClamAV 防病毒以及 fail2ban 暴力破解防护。每次发布均通过 Lynis 审计验证,完整报告可在下方阅读。
快速指南:5 分钟投入使用 #
从零到一台已加固的生产实例,所需的全部步骤。
| 步骤 | 操作 | 位置 | 时间 |
|---|---|---|---|
| 1 | 订阅并启动 AMI — 任意 arm64(Graviton)实例,例如入门可选 t4g.small。含 7 天免费试用。 | AWS Marketplace → EC2 | 约 2 分钟 |
| 2 | 在安全组中开放端口 22,并限制为您的 IP 或 CIDR。 | EC2 控制台 | 1 分钟 |
| 3 | 通过 SSH 连接 — ssh ubuntu@<实例 IP>,使用启动时选择的密钥对。 | 您的终端 | 1 分钟 |
| 4 | 完成 — 加固已生效。使用内置的 imaxe 工具查看系统状态。 | 实例内 | — |
没有配置向导,也没有必须执行的后续步骤:镜像出厂即已加固。本页其余内容均为可选。如遇问题,请直接前往故障排查。
特性 #
镜像包含的全部内容,按标准功能与我们的独有功能分组。
通用
- Ubuntu 22.04 LTS(jammy,arm64)基线在每次构建时更新,并启用自动安全补丁(
unattended-upgrades)。 ufw防火墙默认拒绝:出厂仅开放端口 22。- 强化的 SSH:禁止 root、禁止密码,仅允许公钥,采用现代加密算法(ed25519、chacha20-poly1305、后量子密钥交换 sntrup761x25519)。
- AppArmor 安装了额外配置文件,且全部处于 enforce 模式。
- 通过 sysctl 强化内核(限制 ptrace、禁用非特权 BPF、链接与 FIFO 保护、完整 ASLR)。
- 强化的挂载点:
/tmp、/var/tmp和/dev/shm使用noexec,nosuid,nodev;/proc使用hidepid=2。 - 基于
auditd的完整审计(身份、sudoers、sshd、登录)以及sysstat统计。 - PAM 配置强密码策略(最少 14 个字符),并通过
faillock在 5 次失败后锁定账户。
特有
- Extended Lifecycle Support(延长生命周期支持): 在标准维护结束后,我们继续发布已打补丁的 Ubuntu 22.04 AMI — 支持至 2032 年。
- 文件完整性(AIDE): 数据库在构建时预先生成,首次启动即可检测变更。
- 开箱即用的反恶意软件: rkhunter 自带基线,ClamAV 预置病毒库并自动更新(每天检查 24 次)。
- 与 ufw 集成的 fail2ban: 10 分钟内 5 次 SSH 失败 = 封禁 1 小时,直接读取 journal。
- 软件包完整性校验:通过 debsums 定时(cron)执行。
- 内置
imaxe工具: 一个 CLI,用于操作加固、防火墙、审计及其他模块,无需手动编辑文件。 - 每次发布都执行 Lynis 审计,完整报告发布在本页。
imaxe 模块
预置在这款 AMI 中的 imaxe 工具模块及其文档:
| 模块 | 功能 | 文档 |
|---|---|---|
| os | 系统基础:无人值守更新、locale、时区、主机名和时间。 | 查看文档 → |
| ssh | 授权密钥、host keys、活动会话,以及一条命令完成 sshd 加固。 | 查看文档 → |
| firewall | ufw 状态、封禁/解封 IP,以及开放或关闭端口。 | 查看文档 → |
| audit | auditd 事件和 CIS 审计规则,无需与 auditctl 搏斗。 | 查看文档 → |
| aide | 基于 AIDE 的文件完整性(FIM)。 | 查看文档 → |
| rkhunter | 扫描服务器查找 rootkit。 | 查看文档 → |
| clamav | 运行时的 ClamAV 防病毒。 | 查看文档 → |
| lynis | 系统加固审计,输出可执行的报告。 | 查看文档 → |
| fail2ban | jail 状态、被封禁的 IP,以及手动封禁和解封。 | 查看文档 → |
| secrets | 生成、读取和轮换实例的本地机密。 | 查看文档 → |
| info | AMI 清单,位于 /etc/imaxe/info.yaml,不含机密。 | 查看文档 → |
| global-alerts | 实例的全局告警总线(SNS)。 | 文档准备中 |
规格与成本 #
这是一个操作系统基础镜像:可运行于 AWS 上任何 arm64(Graviton)实例,从 t4g.nano 到 metal — 请根据您的负载而非 AMI 来选择规格。本镜像的构建和测试在 t4g.medium 上执行。
| 项目 | 价格 |
|---|---|
| 按小时订阅 | 每实例 0.008 美元/小时 |
| 按年订阅 | 每实例 60 美元/年 |
| 免费试用 | 7 天 |
订阅价格之外还需支付常规的 AWS 费用(EC2 实例、EBS 磁盘和流量),按您的费率直接支付给 AWS。镜像磁盘为 8 GB,启动时可扩容。
Lynis 报告 #
每个已发布版本的 Lynis 加固审计结果:加固指数、警告和建议,附逐行完整报告。
加固指数由 Lynis 根据通过的测试计算得出。我们在每次发布时重新执行审计;未解决的警告会在镜像上架 Marketplace 之前处理完毕。
可用版本 #
已在 AWS Marketplace 发布的此 AMI 版本:
| 版本 | Ubuntu | 架构 | 状态 | 发布时间 |
|---|---|---|---|---|
| v1.0 | 22.04 LTS (jammy) | arm64 | ✓ 活跃 | 2026-07 |
生命周期
一图看懂本产品的存在意义:当 Canonical 对 Ubuntu 22.04 的标准支持结束时,我们的维护仍在继续。
区域与 AMI ID
v1.0 版本已发布至以下 31 个 AWS 区域。若通过 Marketplace 启动,AWS 会自动选择正确的 ID。
| 区域 | 位置 | AMI ID (v1.0) |
|---|---|---|
| af-south-1 | 开普敦 | ami-0c0fc690298a3b001 |
| ap-east-1 | 香港 | ami-0b95004e814cf7882 |
| ap-east-2 | 台北 | ami-056227049121913ba |
| ap-northeast-1 | 东京 | ami-0521df48aadd24098 |
| ap-northeast-2 | 首尔 | ami-0ca3a46c793880118 |
| ap-northeast-3 | 大阪 | ami-0afdc6b6274f262a4 |
| ap-south-1 | 孟买 | ami-0c3c5aaa11ffcdb1e |
| ap-south-2 | 海得拉巴 | ami-0f1e93453cd9dcda5 |
| ap-southeast-1 | 新加坡 | ami-04c7b97bb948a3b45 |
| ap-southeast-2 | 悉尼 | ami-00de9f6eab9802988 |
| ap-southeast-3 | 雅加达 | ami-0e772bffc352b606e |
| ap-southeast-4 | 墨尔本 | ami-08c38b2c186977100 |
| ap-southeast-5 | 吉隆坡 | ami-07eccea55afed16fd |
| ap-southeast-7 | 曼谷 | ami-03f9aeb4da0e88d4e |
| ca-central-1 | 蒙特利尔 | ami-09691d988f365f21f |
| ca-west-1 | 卡尔加里 | ami-0596b2452d6c212b8 |
| eu-central-1 | 法兰克福 | ami-04cfe6082ff824925 |
| eu-central-2 | 苏黎世 | ami-0c023a2715e77e64f |
| eu-north-1 | 斯德哥尔摩 | ami-03adc89e226066ce9 |
| eu-south-1 | 米兰 | ami-0c7659ddbb197cb1e |
| eu-south-2 | 西班牙 | ami-0c4bc66463aa38368 |
| eu-west-1 | 爱尔兰 | ami-0d5d0e8a90a30bf86 |
| eu-west-2 | 伦敦 | ami-04b9d315eedd97fb2 |
| eu-west-3 | 巴黎 | ami-0bf55d735789c1397 |
| il-central-1 | 特拉维夫 | ami-01c2782a4433e7d4f |
| mx-central-1 | 克雷塔罗 | ami-0cca55138d045cfc1 |
| sa-east-1 | 圣保罗 | ami-04bb062fd427f4ab6 |
| us-east-1 | 弗吉尼亚 | ami-0f374e9b3d09bfc7d |
| us-east-2 | 俄亥俄 | ami-02b569a7f3d276a0a |
| us-west-1 | 加利福尼亚 | ami-0c2c699b1f7f8672e |
| us-west-2 | 俄勒冈 | ami-0e99e2234c7702526 |
待发布区域:me-central-1 和 me-south-1。
如何启动 AMI #
该 AMI 遵循 EC2 在 arm64(Graviton)实例上的标准启动流程。安全组只需要一个端口:
| 类型 | 协议 | 端口 | 来源 |
|---|---|---|---|
| (*) SSH | TCP | 22 | 您的 CIDR |
将 SSH 限制为您自己的 CIDR 或堡垒机 — 绝不要使用 0.0.0.0/0。镜像内部的防火墙同样拒绝除 22 以外的所有端口,因此任何额外端口都需要在两处开放:安全组和 ufw。
v1.0 面向 arm64 架构发布:请选择 Graviton 系列(t4g、m7g/m8g、c7g/c8g、r7g/r8g…)。它无法在 x86_64 实例上启动。
启动之后 — SSH: 使用启动时选择的密钥对,以 ubuntu 用户登录。没有可访问的 root 用户,也没有密码认证。
ssh -i my-keypair.pem ubuntu@<实例 IP>镜像内部 # 专家
AMI 内部运行的一切、各项内容的位置,以及日常会用到的命令。
服务与端口
| 服务 | systemd 单元 | 端口 | 功能 |
|---|---|---|---|
| OpenSSH | ssh.service | 22 | 强化的远程访问(drop-in 99-imaxe-harden.conf) |
| ufw | ufw.service | — | 默认拒绝的防火墙 |
| auditd | auditd.service | — | 系统审计(身份、sudoers、sshd、登录) |
| fail2ban | fail2ban.service | — | 通过 ufw 封禁 SSH 暴力破解,读取 journal |
| AppArmor | apparmor.service | — | 强制访问控制,所有配置文件均处于 enforce 模式 |
| freshclam | clamav-freshclam.service | — | ClamAV 病毒库更新,每天 24 次 |
| unattended-upgrades | apt-daily-upgrade.timer | — | 自动安全补丁 |
| sysstat | sysstat.service | — | 进程与性能统计 |
基础镜像中禁用了常驻守护进程 clamd,以免占用 1–2 GB 内存:扫描通过 clamscan 按需执行,病毒库始终保持最新。
关键路径
| 路径 | 说明 |
|---|---|
| /etc/ssh/sshd_config.d/99-imaxe-harden.conf | sshd 加固(drop-in,不改动主配置文件) |
| /etc/sysctl.d/99-zz-imaxe-harden-kernel.conf | 通过 sysctl 加固内核 |
| /var/log/sudo.log | 所有 sudo 使用记录 |
| /var/log/audit/ | auditd 事件 |
| /etc/imaxe/ 和 /var/lib/imaxe/ | imaxe 工具的配置和状态 |
| /usr/local/bin/imaxe | imaxe CLI 二进制文件 |
常用命令
| 任务 | 命令 |
|---|---|
| 防火墙状态 | sudo ufw status verbose |
| fail2ban 封禁的 IP | sudo fail2ban-client status sshd |
| 文件完整性检查 | sudo aide –check |
| rootkit 扫描 | sudo rkhunter –check |
| 按需病毒扫描 | sudo clamscan -r /path |
| 本地 Lynis 审计 | sudo lynis audit system |
| AMI 清单与模块 | imaxe |
以上每个子系统在 imaxe CLI 中都有对应模块,界面比原始命令更友好 — 参见 imaxe 模块。
备份与更新 #
- 自动补丁:
unattended-upgrades每天自动应用 Ubuntu 安全更新,无需干预。 - 病毒库: freshclam 每天更新 ClamAV 数据库 24 次。
- 新 AMI: 我们按固定节奏在 Marketplace 发布镜像的更新版本;每个版本发布前都会通过自己的 Lynis 审计。
- 备份: 镜像不强制任何自有备份系统 — 请使用 EBS 快照或您惯用的工具。
AIDE 数据库在构建时预先生成。如果您安装或修改了软件,请重新生成基线(sudo aideinit 或通过 imaxe 的 aide 模块),以免完整性检查将您自己的变更标记为异常。
故障排查 #
几乎所有工单集中的问题,及其常见原因和解决方法。
| 症状 | 可能原因 | 解决方法 |
|---|---|---|
| 实例无法启动 | 使用了 x86_64 实例类型 | 该 AMI 为 arm64:请使用 Graviton 系列(t4g、m7g、c7g…) |
| 无法通过 SSH 连接 | 安全组未开放端口 22,或 IP 不在允许的 CIDR 内 | 检查安全组 — 参见如何启动 AMI |
Permission denied (publickey) | 密码认证已被禁用 | 使用启动时的密钥对以 ubuntu 登录:ssh -i key.pem ubuntu@<ip> |
| 多次尝试后 SSH 不再响应 | fail2ban 封禁了您的 IP(10 分钟内 5 次失败 = 封禁 1 小时) | 等待一小时,或从另一个 IP 执行:sudo fail2ban-client set sshd unbanip <ip> |
| 新服务无法访问 | 内部防火墙拒绝除 22 以外的所有端口 | 在 ufw 和安全组中同时开放端口 |
| 二进制文件在 /tmp 中无法执行 | /tmp 以 noexec 挂载(加固措施) | 从其他路径执行,或在自担风险的前提下调整挂载 |
常见问题 #
订阅具体包含什么?
加固的 AMI、在整个延长生命周期内(至 2032 年)带补丁的新版本,以及构建团队的支持。按实例付费:0.008 美元/小时或 60 美元/年,含 7 天免费试用。
它能在 x86_64 实例上运行吗?
不能。v1.0 面向 arm64(AWS Graviton)发布:t4g、m6g–m8g、c6g–c8g、r6g–r8g 等系列。
我可以用 root 或密码登录吗?
不可以:出于加固考虑,root 登录和密码认证已被禁用。请以 ubuntu 用户和您的密钥对登录,并使用 sudo(记录在 /var/log/sudo.log 中)。
加固会不会影响我的应用?
大多数情况下不会,但需要了解两个限制:/tmp、/var/tmp 和 /dev/shm 以 noexec 挂载,编译器仅限 root 使用。如果您的应用需要这些,请有意识地进行调整。
如何更新到新版本的 AMI?
安全补丁通过 unattended-upgrades 自动到达。要切换到新版本镜像,请用新 AMI 启动实例并下线旧实例 — 这是不可变 AMI 的常见模式(在 Auto Scaling 中同样适用)。
为什么继续用 Ubuntu 22.04 而不迁移到 24.04?
迁移操作系统版本是一个有风险的项目。本产品的存在就是让您不必仓促迁移:我们将 22.04 保持打补丁并通过审计直到 2032 年,您可以在合适的时候再迁移。
更新日志 #
AMI 的历史。日期对应每个版本在 AWS Marketplace 的发布时间。
首次发布
在 AWS Marketplace 的首个公开版本,基于 Ubuntu 22.04 LTS arm64。
imaxe 工具,镜像中预置 12 个运维模块。