You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Linux系统/usr/local中GitHub自托管Runner的目录归属及运行用户最佳方案

GitHub自托管Runner Linux运行用户的安全最佳实践

绝对不要用root(超级用户)运行GitHub自托管Runner——Runner会执行工作流里的任意代码,root权限会让恶意代码直接掌控整个系统,风险极高。

推荐的安全运行方式按优先级排序:

  • 用你已设置所有者的普通用户运行
    你已经通过chmod -R <my user> /usr/local/actions-runner把目录所有者改成了自己的普通用户,直接用这个用户运行run.sh完全可行。普通用户权限有限,就算工作流里存在恶意代码,能造成破坏的范围也会被严格限制,这是最基础的安全保障。

  • 创建独立的专用系统用户(更严谨的方案)
    如果想进一步隔离风险,可以专门创建一个仅用于运行Runner的系统用户,比如github-runner:

    1. 创建用户:sudo useradd -m -d /home/github-runner -s /bin/bash github-runner
    2. 调整目录权限:sudo chown -R github-runner:github-runner /usr/local/actions-runner
    3. 切换到该用户启动Runner:su - github-runner -c "/usr/local/actions-runner/run.sh"
      这么做能把Runner的运行环境和你的个人用户完全隔离开,避免权限交叉带来的额外风险。

额外安全提醒:

  • 不要给运行Runner的用户开放sudo权限,除非工作流确实必须用到(就算要开,也要通过sudoers配置最小必要权限,绝对不能给无限制的sudo)
  • 定期更新Runner到最新版本,GitHub会持续修复安全漏洞
  • 做好Linux系统本身的安全加固:比如启用防火墙、关闭不必要的服务、定期更新系统包

内容的提问来源于stack exchange,提问作者mcnnowak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 08:08:14