GitHub Action appleboy/ssh-action:如何避免 SSH 密钥出现在服务器上?

Posted

技术标签:

【中文标题】GitHub Action appleboy/ssh-action:如何避免 SSH 密钥出现在服务器上?【英文标题】:GitHub Action appleboy/ssh-action: How do I avoid that the SSH key ends up on the server? 【发布时间】:2021-12-20 17:53:53 【问题描述】:

要从 GitHub 登录到我的外部服务器,我使用/test appleboy/ssh-action。一旦我在服务器上,我就会启动 git pull 以获取对服务器的最新更改。但是,这也包括 .github/workflows 文件夹。在 GH action yml 文件中是我的 SSH 密码。我想避免这种情况。但我不知道怎么做。有人知道怎么做吗?

【问题讨论】:

【参考方案1】:

您不应将密码存储在 YAML 文件本身中。相反,请使用存储库设置中的 GitHub Actions 机密功能将密码存储为机密,然后将其传递到环境中。例如,您可以像这样通过管道传递秘密:

    - run: echo $PASSWORD | my-program-here
      env:
        PASSWORD: $secrets.SSH_PASSWORD

您可以在Git LFS release workflow 中查看如何使用这种方法的示例。

【讨论】:

以上是关于GitHub Action appleboy/ssh-action:如何避免 SSH 密钥出现在服务器上?的主要内容,如果未能解决你的问题,请参考以下文章

套娃:在一个GitHub Action中触发另一个GitHub Action

GitHub Action appleboy/ssh-action:如何避免 SSH 密钥出现在服务器上?

Github Action 编译和发布APK

Github Action 编译和发布APK

Github Action 编译和发布APK

教程 - github action和安全