ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

claude-skills 基础设施安全实战指南:DevSecOps、云加固、容器安全与合规自动化的完整落地手册

2026/9/16 20:39:04 拓冰建站 浏览量
claude-skills 基础设施安全实战指南:DevSecOps、云加固、容器安全与合规自动化的完整落地手册 claude-skills 基础设施安全实战指南DevSecOps、云加固、容器安全与合规自动化的完整落地手册【免费下载链接】claude-skills67 Specialized Skills for Full-Stack Developers. Transform Claude Code into your expert pair programmer.项目地址: https://gitcode.com/GitHub_Trending/claud/claude-skills导读本文以 claude-skills 仓库中 security-reviewer 技能的基础设施安全参考文档 infrastructure-security.md 为骨架系统讲解如何将安全评审能力落地到基础设施全链路从 CI/CD 流水线扫描、IaC 与多云平台加固到容器/Kubernetes 运行时安全、CIS 合规自动化、密钥管理与 SIEM 监控。读完本文你将掌握一套开箱即用、可直接复制到生产项目的命令与配置文件集合并理解这些安全控制背后的实现原理及其在 claude-skills 技能体系中的调用位置。一、DevSecOps 集成把安全左移到 CI/CD 流水线security-reviewer 技能的核心工作流Scope → Scan → Review → Test/Classify → Report中Scan 阶段强调先跑自动化工具再人工评审。基础设施安全的第一道防线就是把安全扫描固化到持续集成流程里让每次 push 与 pull_request 都自动触发。1.1 CI/CD 安全流水线GitHub Actionsinfrastructure-security.md 给出了一套典型的三工具组合扫描流水线对应三类不同风险面# GitHub Actions - Security scanning name: Security Pipeline on: [push, pull_request] jobs: security: runs-on: ubuntu-latest steps: - uses: returntocorp/semgrep-actionv1 - uses: gitleaks/gitleaks-actionv2 - uses: aquasecurity/trivy-actionmaster with: scan-type: fs severity: CRITICAL,HIGH三者分工明确恰好对应 SKILL.md 中 Scan 阶段列出的命令工具职责对应扫描面Semgrep通用静态分析SAST代码注入、敏感 API 误用等源码级缺陷支持--configp/security-audit、--configp/owasp-top-ten等规则集Gitleaks密钥与凭据检测硬编码 token、密码、私钥支持全 git 历史扫描--log-opts--allTrivy文件系统综合扫描依赖漏洞 密钥 配置--security-checks vuln,secret,config可一键全开原文档中 Semgrep 与 Gitleaks 使用默认配置实操时建议参考 sast-tools.md 将 Semgrep 显式指定规则集如config: p/security-audit并参照 secret-scanning.md 为 Gitleaks 传入GITHUB_TOKEN环境变量以生成 SARIF 格式报告。1.2 基础设施即代码IaC安全扫描对 Terraform、CloudFormation、Kubernetes 清单这类代码化的基础设施需要在 merge 前用专用工具做静态扫描# Terraform/CloudFormation scanning checkov -d terraform/ --framework terraform tfsec terraform/ terrascan scan -d terraform/ # Kubernetes manifest scanning kubesec scan deployment.yaml各工具定位Checkov跨 IaC 框架的合规扫描器支持 Terraform、CloudFormation、Kubernetes、Helm 等内置大量 CIS 与安全检查策略支持--framework精确限定扫描目标。tfsecTerraform 专项扫描规则聚焦 AWS/Azure/GCP 资源的安全配置输出简洁、易于接入 CI 门槛。Terrascan策略即代码引擎基于 OPA/Rego 策略适合需要自定义合规策略的团队。Kubesec轻量级 Kubernetes 资源安全评分工具对单个 manifest 快速给出风险评级与修复建议。原文档给的是裸命令落库到 CI 时建议加--exit-code 1Checkov/tfsec让高危问题直接阻断流水线避免扫描结果被忽略。二、云安全控制AWS / Azure / GCP 三方加固速查infrastructure-security.md 为三大云厂商各给出两条最核心的加固操作开启安全监控服务 修复最典型的安全配置。2.1 AWS 安全加固# Enable security services aws guardduty create-detector --enable aws securityhub enable-security-hub aws cloudtrail create-trail --name security-trail --s3-bucket-name logs # Check S3 bucket security aws s3api list-buckets --query Buckets[].Name | \ xargs -I {} aws s3api get-bucket-acl --bucket {} # IAM password policy aws iam update-account-password-policy \ --minimum-password-length 14 \ --require-symbols --require-numbers \ --require-uppercase-characters --require-lowercase-characters三条命令覆盖了 AWS 安全的核心三大件GuardDuty威胁检测、Security Hub安全态势聚合、CloudTrail审计日志。S3 ACL 检查命令体现了先盘点再审计的思路——枚举所有 bucket 再逐个检查 ACLIAM 密码策略则把密码最小长度提升到 14 位并强制四类字符组合与 vulnerability-patterns.md 中弱密码策略CWE-521修复建议完全同源。2.2 Azure 安全# Enable Security Center az security auto-provisioning-setting update --name default --auto-provision on # Enable disk encryption az vm encryption enable --resource-group myRG --name myVM --disk-encryption-keyvault myKVSecurity Center现名 Microsoft Defender for Cloud的auto-provisioning开启后会自动为订阅内虚拟机部署 Log Analytics Agent实现无感接入。磁盘加密使用 Azure Key Vault 托管密钥对 VM 磁盘加密满足加密静态数据这一几乎所有合规框架SOC 2 / PCI DSS的公共控制项。2.3 GCP 安全# Enable Security Command Center gcloud services enable securitycenter.googleapis.com # Enable VPC Flow Logs gcloud compute networks subnets update SUBNET --enable-flow-logsSecurity Command CenterSCC是 GCP 的安全中心统一聚合漏洞、威胁与配置错误。VPC Flow Logs记录 VPC 网络流量的五元组信息是后续 SIEM 关联分析和入侵取证的数据底座默认关闭需要显式开启。从源码结构看security-reviewer 与 cloud-architect、devops-engineer 在 SKILL.md 的related-skills中互相关联说明云安全评审在项目中是与云架构设计、DevOps 交付协作完成的。三、容器安全从 Dockerfile 到 Kubernetes 的纵深防御容器是当前应用交付的主流形态infrastructure-security.md 从镜像构建和运行时编排两个层面给出加固模板。3.1 最小权限安全 DockerfileFROM node:18-alpine RUN addgroup -g 1001 -S nodejs adduser -S nodejs -u 1001 WORKDIR /app COPY --chownnodejs:nodejs package*.json ./ RUN npm ci --onlyproduction USER nodejs EXPOSE 3000 HEALTHCHECK --interval30s CMD node healthcheck.js CMD [node, server.js]逐行拆解其安全设计以 Alpine 为基础镜像攻击面更小、体积更小同时node:18-alpine会随上游滚动更新避免陈旧镜像带 CVE。创建非 root 用户nodejsUID 1001应用进程不以 root 运行即使被攻破也拿不到容器内的 root 权限。COPY --chown确保复制进镜像的文件归属应用用户防止属主为 root 的文件被应用进程无法访问或反向利用。npm ci --onlyproduction只装生产依赖缩小依赖攻击面npm ci相比npm install保证锁文件一致性、可复现构建。USER nodejs切换运行身份是 Dockerfile 中最关键的单一加固点。HEALTHCHECK提供健康探针供编排系统感知容器存活状态。3.2 Kubernetes 安全Pod Security 与默认拒绝网络策略# Pod Security Standards apiVersion: v1 kind: Pod metadata: name: secure-pod spec: securityContext: runAsNonRoot: true runAsUser: 1000 fsGroup: 2000 seccompProfile: type: RuntimeDefault containers: - name: app image: myapp:1.0 securityContext: allowPrivilegeEscalation: false readOnlyRootFilesystem: true capabilities: drop: [ALL] resources: limits: memory: 128Mi cpu: 500m --- # Network Policy - Default deny apiVersion: networking.k8s.io/v1 kind: NetworkPolicy metadata: name: default-deny-all spec: podSelector: {} policyTypes: - Ingress - Egress该清单实现了 Kubernetes 官方 Pod Security Standards 的Restricted 级别核心要求控制项作用runAsNonRoot: truerunAsUser: 1000强制非 root 运行双重保险seccompProfile: RuntimeDefault启用容器运行时默认 seccomp 配置限制系统调用allowPrivilegeEscalation: false禁止提权如禁止执行setuidreadOnlyRootFilesystem: true根文件系统只读防篡改与恶意写入capabilities.drop: [ALL]丢弃全部 Linux Capabilities最小权限resources.limits内存/CPU 限额防资源耗尽型 DoS配套的 NetworkPolicy 通过空podSelector 双policyTypes实现默认全拒绝未显式放行的入站与出站流量一律丢弃。这是零信任网络模型的基础——先拒绝一切再按需开放。补充drop: [ALL]后如需运行容器应按需add明确所需的能力如NET_BIND_SERVICE该模式与 kubernetes-specialist 的加固知识可交叉引用。四、合规自动化把 CIS 基准变成可重复执行的检查人工逐项核对合规清单既慢又易错infrastructure-security.md 给出两条自动化路径现成基准扫描器 代码化的合规断言InSpec。4.1 CIS Benchmark 扫描# Docker CIS benchmark docker run --net host --pid host --cap-add audit_control \ -v /var/lib:/var/lib -v /var/run/docker.sock:/var/run/docker.sock \ docker/docker-bench-security # Kubernetes CIS benchmark kube-bench run --targets master,node # Linux system hardening lynis audit system --quickdocker-bench-security官方 CIS Docker Benchmark 检查器以容器方式运行注意其挂载 host 的/var/lib与 docker.sock 是审计所需仅建议在可信主机上运行。kube-bench检查 Kubernetes 集群 master 与 node 节点是否符合 CIS Kubernetes Benchmark。LynisUnix/Linux 系统级安全审计--quick模式快速输出加固建议。4.2 合规即代码InSpec 断言InSpec 把合规要求写成可测试的代码一次编写、处处可重复执行# controls/baseline.rb control ssh-hardening do impact 1.0 title SSH Security Configuration describe sshd_config do its(Protocol) { should eq 2 } its(PermitRootLogin) { should eq no } its(PasswordAuthentication) { should eq no } end end control encryption-at-rest do impact 1.0 title S3 Encryption Enabled describe aws_s3_bucket(my-bucket) do it { should have_default_encryption_enabled } end endimpact 1.0标记该控制项为最高严重度违反即视为不通过。ssh-hardening控制断言sshd_config协议为 2、禁止 root 登录、禁止密码认证直击 SSH 最常见的三类弱配置。encryption-at-rest控制使用 InSpec 的 AWS 资源 DSL 断言 S3 bucket 默认加密已开启把静态数据加密这类合规要求转成了可回归的测试。五、密钥管理Vault 动态凭据与 Kubernetes 外部密钥注入5.1 HashiCorp Vault初始化、KV 存储与动态数据库凭据# Initialize and configure vault operator init vault secrets enable -pathsecret kv-v2 # Store secrets vault kv put secret/app/config api_keysecret123 # Dynamic database credentials vault secrets enable database vault write database/config/postgresql \ plugin_namepostgresql-database-plugin \ allowed_rolesapp \ connection_urlpostgresql://{{username}}:{{password}}localhost:5432/ \ usernamevault passwordvaultpass vault write database/roles/app \ db_namepostgresql \ creation_statementsCREATE ROLE \{{name}}\ WITH LOGIN PASSWORD {{password}}; \ default_ttl1h max_ttl24h分三段理解初始化与 KV 存储vault operator init生成根 token 与解封密钥须离线妥善保管kv-v2是带版本控制的键值引擎写入的密钥可回滚。动态数据库凭据核心价值Vault 不存数据库密码而是通过database引擎按需生成短期一次性数据库账号——default_ttl1h表示账号默认 1 小时过期max_ttl24h封顶 24 小时彻底消除长期有效数据库密码这一泄漏风险点。应用侧只需向 Vault 申请database/roles/app的凭据即可连接无需再管理密码。这与 secret-scanning.md 的 Remediation 步骤使用密钥管理器AWS Secrets Manager、Vault形成闭环扫描发现硬编码密钥 → 轮换 → 迁移到 Vault 动态凭据。5.2 External Secrets OperatorKubernetes 从 Vault 同步密钥apiVersion: external-secrets.io/v1beta1 kind: SecretStore metadata: name: vault-backend spec: provider: vault: server: https://vault.example.com path: secret auth: kubernetes: role: app-role --- apiVersion: external-secrets.io/v1beta1 kind: ExternalSecret metadata: name: app-secrets spec: refreshInterval: 1h secretStoreRef: name: vault-backend target: name: app-secrets data: - secretKey: api_key remoteRef: key: secret/app/config property: api_keySecretStore声明密钥后端来源此处为 Vault并使用 Kubernetes 认证方式绑定 Vault 的app-rolePod 身份即权限。ExternalSecret声明从远端拉哪些键remoteRef定位 Vault 中secret/app/config的api_key属性映射到 K8s Secretapp-secrets中。refreshInterval: 1h让 K8s Secret 每小时与 Vault 同步一次——密钥轮换后无需重建 Pod实现密钥不落盘、轮换自动生效。六、安全监控Filebeat 把关键日志汇入 SIEM安全体系闭环的最后一步是看得见所有安全控制产生的告警与审计日志需要汇聚、关联、告警。filebeat.inputs: - type: log paths: - /var/log/auth.log - /var/log/nginx/*.log fields: environment: production output.elasticsearch: hosts: [elasticsearch:9200] index: security-logs-%{yyyy.MM.dd}收集面精选两类高风险日志系统认证日志auth.log对应登录攻击、爆破检测与Web 访问日志nginx对应扫描探测、注入尝试。每条日志打上environment: production字段便于多环境区分与后续过滤。按security-logs-日期分索引天然按天分片便于保留策略管理如 90 天冷备与合规留存要求对接。Elasticsearch 作为输出端可继续接 Kibana 告警或 SIEM 平台形成端到端监控链路。七、快速参考速查表7.1 工具速查AreaToolPurposeCloud SecurityProwler, ScoutSuiteAWS/Azure/GCP auditContainerTrivy, ClairImage scanningIaCCheckov, tfsecTerraform/CloudFormationSecretsVault, Sealed SecretsSecret managementComplianceInSpec, OpenSCAPCIS benchmarksMonitoringELK, SplunkSIEM补充语境Prowler面向 AWS 专项审计ScoutSuite跨多云审计两者都输出 Markdown/HTML 报告可直接附入安全评审报告Clair是容器镜像漏洞静态扫描器与 Trivy 可互为冗余。这些工具产生的发现应沿用 report-template.md 的结构归档严重度统计表 详细发现CWE/CVSS/位置/影响/修复 优先级建议。7.2 合规框架速查FrameworkFocusKey ControlsSOC 2Security controlsAccess, encryption, monitoringISO 27001ISMSPolicy, risk, auditPCI DSSPayment securityNetwork segmentation, encryptionHIPAAHealthcareEncryption, access logsGDPRData privacyConsent, retention, DLP理解这张表的实用价值在于对照落地例如 PCI DSS 的 Network segmentation 对应本文 3.2 节的默认拒绝 NetworkPolicyencryption 对应 2.2 节磁盘加密与 5.1 节 Vault 动态凭据HIPAA 的 access logs 对应 2.1 节 CloudTrail 与 6 节 Filebeat 日志汇流。做合规评审时可以用框架要求反查是否已覆盖对应技术控制点。八、如何在本项目中触发这套基础设施安全能力infrastructure-security.md 是 security-reviewer 技能的 Tier-2 参考文件。根据 CLAUDE.md 定义的渐进式披露架构Progressive Disclosure其调用方式为Tier-1 入口SKILL.md 的 routing table 将 DevSecOps, cloud security, compliance 语境路由到本文技能触发词包括infrastructure security、DevSecOps、cloud security、compliance audit。Tier-2 深度内容仅当评审任务涉及基础设施时才按需加载本文从而节约约 50% 的上下文 token。协同技能在 SKILLS_GUIDE.md 的 Security-Focused Development 组合中Security Reviewer 与 secure-code-guardian、Test Master 协同完成安全开发闭环基础设施相关任务还可结合 kubernetes-specialist、terraform-engineer、cloud-architect 使用。典型触发提示词示例参考 SKILLS_GUIDE.md 的 Examples 一节Audit the security posture of my Kubernetes cluster and Terraform codeSet up a DevSecOps pipeline with SAST and IaC scanningHarden my AWS account and check SOC 2 / PCI DSS coverage总结infrastructure-security.md 提供了一条从开发 → 交付 → 运行 → 合规的完整基础设施安全加固路径CI/CD 阶段用 Semgrep、Gitleaks、Trivy、Checkov 自动扫描云平台层面逐项加固 AWS/Azure/GCP 的安全服务与关键配置容器侧通过最小权限 Dockerfile 和 Restricted 级 Kubernetes 安全上下文落地纵深防御合规侧用 docker-bench-security、kube-bench、Lynis 与 InSpec 把 CIS 基准变成可重复执行的自动化检查密钥管理用 Vault 动态凭据与 External Secrets Operator 实现密钥不落盘、短期化、自动轮换最后以 Filebeat 汇流 SIEM 完成监控闭环。所有命令与配置均可直接复制进你的项目结合 security-reviewer 的评审工作流先自动化扫描、再人工复核、按 CVSS 分级、输出结构化报告即可建立一套可持续运营的安全评审体系。【免费下载链接】claude-skills67 Specialized Skills for Full-Stack Developers. Transform Claude Code into your expert pair programmer.项目地址: https://gitcode.com/GitHub_Trending/claud/claude-skills创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考