Oracle 服务器开机 SOP.md

$ view ~/notes/Oracle 服务器开机 SOP.md

Oracle 服务器开机 SOP

date
2026-06-01
tags
#运维 #oracle #sop #开机 #debian
$ tree --toc
├─ 01 流程概览 ├─ 02 重装系统(可选,推荐 Debian 12)    操作步骤 ├─ 03 Swap + zRAM 配置 ├─ 04 安装 Docker ├─ 05 安全加固(按场景选择方案)    方案 A:单台个人服务器 → 个人服务器安全加固方案    方案 B:多台服务器集群 → Oracle 多机集群零公网架构方案    公共步骤速查 ├─ 06 对外服务发布(Cloudflare Tunnel) ├─ 07 完成后验证清单 └─ 08 附录:创建管理用户(可选)
$ tree --toc
  1. ├─ 01 流程概览
  2. ├─ 02 重装系统(可选,推荐 Debian 12)
  3. 操作步骤
  4. ├─ 03 Swap + zRAM 配置
  5. ├─ 04 安装 Docker
  6. ├─ 05 安全加固(按场景选择方案)
  7. 方案 A:单台个人服务器 → 个人服务器安全加固方案
  8. 方案 B:多台服务器集群 → Oracle 多机集群零公网架构方案
  9. 公共步骤速查
  10. ├─ 06 对外服务发布(Cloudflare Tunnel)
  11. ├─ 07 完成后验证清单
  12. └─ 08 附录:创建管理用户(可选)

Oracle 服务器开机 SOP

本文档是新 Oracle Cloud 免费实例的标准初始化流程,每一步都链接到对应的详细文档。


01

流程概览

重装系统(可选)
    ↓
Swap + zRAM 配置
    ↓
Docker 安装
    ↓
安全加固(按场景二选一)
  ├─ 单台个人服务器 → 个人服务器安全加固方案
  └─ 多台服务器集群 → Oracle 多机集群零公网架构方案
    ↓
对外服务发布(Cloudflare Tunnel)

02

重装系统(可选,推荐 Debian 12)

使用 dd重装脚本 将系统重装为 Debian 12(轻量系统对低配内存的机器更友好)。

操作步骤

  1. 复制机器现在的 SSH 登录公钥
  2. 参照仓库 readme 安装脚本
  3. 执行重装脚本,使用 --ssh-key 携带公钥:
bash reinstall.sh --ssh-key "ssh-rsa ..."
  1. 脚本下载镜像完成会提示 reboot 重启服务器,使用 root 登录

  2. 执行 reboot,SSH 会话断开,将 SSH 客户端用户名改为 root,私钥文件不变,重新连接。看到下图报错是正常现象,选择替换即可。(如果替换后连接失败,就再等几分钟。)

  3. 成功登录后会看到新系统正在 Reinstalling,等待即可。

安装完成后,参考以下各步骤继续配置。


03

Swap + zRAM 配置

详细步骤参见 Swap + zRAM 完整配置

Oracle Cloud 1C1G 机型必须配置 zRAM + Swap,否则 Docker 极易 OOM。

推荐配置:

zRAM:512MB(lz4)
Swap:1GB
swappiness:70
vfs_cache_pressure:150

04

安装 Docker

参考 官方 Debian 安装文档

sudo apt update
sudo apt install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

05

安全加固(按场景选择方案)

核心目标:关闭所有公网入站端口,使用 Tailscale 私网访问,实现零公网暴露。

以下两个方案的公共步骤相同(安装 Tailscale → 关安全组 → 配防火墙),区别在于 SSH 认证策略和架构深度。 根据你的场景二选一即可:

方案 A:单台个人服务器 → 个人服务器安全加固方案

适用场景:个人项目、单人维护,只有 1~2 台机器。

  • Root + 密钥直连(PermitRootLogin prohibit-password)
  • Tailscale 组网 + UFW + Oracle 安全组
  • 含三重兜底机制(Tailscale → 临时公网 SSH → Serial Console)

方案 B:多台服务器集群 → Oracle 多机集群零公网架构方案

适用场景:多台服务器集群(如 ARM + 2 AMD 架构)、团队协作维护。

  • 在方案 A 基础上增加:
    • 多节点 Tunnel 入口容灾
    • 跨服务器 Tailscale 内网互通
    • 健康检查 + 保活策略(防 Oracle 回收)

公共步骤速查

  1. 安装 Tailscale:curl -fsSL https://tailscale.com/install.sh | sh
  2. 启动并加入网络:tailscale up
  3. 获取内网 IP:tailscale ip -4(记下 100.x.x.x)
  4. 配置云平台安全组(详见所选方案文档中的具体步骤)
  5. 设置 Disable Key Expiry(防止凭证过期失联)
  6. UFW 防火墙配置:
    sudo ufw default deny incoming
    sudo ufw default allow outgoing
    sudo ufw allow in on tailscale0
    sudo ufw enable
    

06

对外服务发布(Cloudflare Tunnel)

详细步骤参见 Cloudflare Tunnel 完整方案

核心目标:让 Web 服务对外可访问,同时不开放任何公网端口。

  1. 安装 cloudflared
  2. 创建 Tunnel:cloudflared tunnel create homelab
  3. 配置 ingress 规则
  4. 设置开机自启

07

完成后验证清单

  • [ ] SSH 通过 Tailscale IP (100.x.x.x) 可正常登录
  • [ ] 公网 IP 无法 SSH(安全组已关闭)
  • [ ] free -h 显示 zRAM + Swap 已启用
  • [ ] docker --version 正常
  • [ ] Cloudflare Tunnel 状态正常

08

附录:创建管理用户(可选)

个人服务器(单人维护):可跳过,直接用 Root + 密钥登录即可。 企业/多人维护服务器:强烈建议执行,避免所有人共享 Root 最高权限。

核心目标:创建独立管理用户,日常使用该用户操作服务器,通过 sudo 提权执行特权命令。

  1. 创建新用户:adduser yourname
  2. 赋予 sudo 权限:apt update && apt install sudo -y && usermod -aG sudo yourname
  3. 测试新用户:不要关掉当前的 Root 窗口,另开一个 SSH 窗口尝试用新用户登录
  4. 禁用 Root 登录:
    • 编辑配置:nano /etc/ssh/sshd_config
    • 修改:PermitRootLogin no
    • 重启:systemctl restart ssh
个人服务器安全加固方案