mcpField
S
specsfy-specialist-debian-server

specsfy-specialist-debian-server

github.com/promovaweb云与 DevOps87126 次安装1 周前更新
代码仓库

关于 specsfy-specialist-debian-server

这是用于 Debian 服务器安装、加固、更新和故障诊断的运维 skill,适合管理应用、容器或 Docker Swarm 主机的团队。它强调先检查主机状态、谨慎变更,并通过命令验证系统服务、网络与存储。

主要功能

  1. 01Debian 主机状态检查
  2. 02APT 与安全更新管理
  3. 03SSH、nftables 和 sysctl 配置
  4. 04systemd 与日志维护
  5. 05Docker 主机维护验证

适用场景

  1. 01准备应用或容器运行主机
  2. 02排查 Debian 服务和资源问题
  3. 03安全调整 SSH 或防火墙
  4. 04维护 Docker 主机与 Swarm 节点

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/promovaweb/specsfy --skill specsfy-specialist-debian-server

安装后在 Claude Code 中输入/specsfy-specialist-debian-server确认已加载。

附带文件agents/openai.yamlreferences/standards.md

详细介绍

Debian 服务器

适用场景

  • 用于安装、加固、更新或诊断运行应用、容器或 Docker Swarm 的 Debian 主机。
  • 用于处理主机上的 APT、systemd、journald、SSH、nftables、sysctl、磁盘、挂载、用户、组、时区、NTP 和 Docker Engine。
  • 不要假定 Debian 版本。提出变更前,先读取 /etc/os-release,并检查架构、内核、init、文件系统、容量和服务器角色。
  • 未获得备用访问方式和明确授权时,不要执行重启、发行版升级、SSH 变更或远程防火墙变更。

流程

  1. 在 $specsfy-specialist-deploy 下,询问环境由哪些机器组成,并在 ansible/inventory.yml 中记录别名、地址、SSH 端口、初始用户和 Swarm 中的角色。添加服务器时,保留所有现有条目,并在配置新主机前先进行测试。
  2. 记录版本、架构、内核、运行时间、负载、内存、磁盘、挂载、网络、故障单元和待处理的软件包。
  3. 确定主机角色、对外暴露的服务、维护时段、恢复访问方式,以及 Ansible 管理状态。
  4. 创建运维用户 deploy,添加其 SSH 公钥,并设置 sudo 和权限;在测试第二个会话前,不要撤销当前访问权限。
  5. 配置 APT 和安全更新,并规划服务重启;当内核或库有要求时,规划重启。
  6. 应用与拓扑兼容的防火墙。在 Swarm 中,仅允许授权节点之间的控制、发现和 overlay 流量。
  7. 将内核调整持久化到 /etc/sysctl.d/,有条件地应用,并在变更后测量工作负载的表现。
  8. 在适当的环境中验证 systemd、journald、空间、inode、时钟、DNS、连通性和受控重启。

规范

  • 使用与已安装发行版对应的软件仓库,并核实外部软件包的来源。不要混用 Debian 套件来获取新版本。
  • 使用 systemd 单元或官方软件包管理服务,并定义重启策略、依赖关系、限制和日志。不要让进程依赖 SSH 会话运行。
  • 在当前 Debian 上优先使用 nftables,并确保已加载的配置可在启动时恢复。关闭现有连接前,先测试新的管理会话。
  • 在 /etc/sysctl.d/ 中创建小型且命名清晰的文件;记录每个参数的用途,避免使用没有负责人维护的通用配置块。
  • 根据可用磁盘空间配置日志轮转和保留策略。在 Docker 无法继续创建层之前,及时对文件系统和 inode 使用量发出警报。
  • 将 Docker 套接字和 docker 组的访问权限视为对主机的广泛管理权限。

反模式

  • 未检查服务、恢复控制台和应用自动恢复机制,就执行 apt full-upgrade 并重启。
  • 未验证配置并打开第二个已认证会话前,就修改 sshd_config 并重启 SSH。
  • 当使用方位于同一私有网络或 overlay 中时,仍在主机上开放数据库、Redis 或管理面板端口。
  • 不创建 /etc/sysctl.d/ 配置文件就执行 sysctl -w:调整会在重启后消失,观测到的状态也将不再与自动化配置一致。
  • 将容器持久化数据保存在本地磁盘上,却未测试 placement、备份和恢复。

验证

  • 对自定义单元运行 systemd-analyze verify,更改后运行 systemctl --failed。
  • 重新加载 SSH 前运行 sshd -t;在关闭应用更改的连接前,先建立新的已认证会话。
  • 重新加载前运行 nft --check --file /etc/nftables.conf,并从应能或不应能访问主机的网络测试端口。
  • 运行 sysctl --system,随后读取参数,并在重启后再次测试。
  • 运行 apt-get --simulate upgrade,在可用时检查 needrestart,并确认自动更新使用的定时器。
  • 对 Docker 主机,在维护前后检查守护进程、日志轮转、空间、inode、网络和持久化情况。

相关技能

  • $specsfy-specialist-deploy 协调服务器的完整准备工作;此专家负责定义主机的 Debian 状态。
  • $specsfy-specialist-ansible 自动化并重复执行主机配置;此专家负责定义自动化应生成的 Debian 状态。
  • $specsfy-specialist-docker 管理容器镜像和运行时;此专家负责主机的守护进程、内核、磁盘和 Docker 服务。
  • $specsfy-specialist-docker-swarm 在节点准备就绪后管理管理节点、工作节点、堆栈和覆盖网络。

阅读 references/standards.md,了解 Debian 基线、Docker 运维以及附有官方来源的检查命令。

评论

支持 Markdown