将 scp 与 GitHub 操作一起使用有多安全?

问题描述 投票:0回答:2

现在我使用 scp-action 将一些文件复制到一台服务器。

这种方法安全吗?

使用 GitHub Actions 的替代方案是什么,我正在考虑运行

scp
的自定义操作并在我这边设置本地运行器。

security github github-actions scp
2个回答
0
投票

另一种选择是在服务器上配置一个裸存储库,并将其添加为本地存储库上的第二个远程存储库。 现在,每次您想要将代码部署到服务器时,您都可以推送到此远程服务器。然后,您在服务器上创建一个 git hook 来触发 post-push,并自动执行例如重新启动服务的脚本。 阅读更多这里

对我来说,我很难在这两种选择之间做出选择,因为我有一些未解答的问题:

  • 对于 github 操作,从 github 运行程序运行的 SSH 密钥有多安全?考虑到我的代码库很大,在我只更改了 1 或 2 个文件的修补程序提交之后 scp 所有文件是不是有点过分了?

  • 对于 git bare 存储库:git 文件夹的大小会成为问题吗?以及如何保护我的服务器,使其不会为 .git 文件夹提供服务?


0
投票

您使用 scp 的方法可能是安全的,但需要记住一些注意事项:

  • SSH 密钥处理:确保您将 SSH 私钥和任何其他敏感数据存储为 GitHub 机密,而不是 将它们硬编码到您的工作流程文件中。
  • 密钥管理:使用专门用于此 GitHub Action 的专用 SSH 密钥对。
  • 最小权限原则:用于复制的SSH帐户应该具有最低限度的必要权限。应该只能 写入所需的目录。
  • 审核和日志记录:确保 GitHub Actions 和您的服务器都启用了适当的审核和日志记录。

使用自托管运行器的方法比 GitHub 托管运行器具有安全优势,因为您可以控制自托管运行器。您可以使用自托管运行器轻松在 SSH 端口上设置入口过滤。此外,您可以使用 SSH 的专用服务器端点,并有可能消除服务器的互联网暴露。

© www.soinside.com 2019 - 2024. All rights reserved.