GitHub 操作 appleboy/ssh-action:如何避免 SSH 密钥最终出现在服务器上?
GitHub Action appleboy/ssh-action: How do I avoid that the SSH key ends up on the server?
要从 GitHub 登录我的外部服务器,我 use/test appleboy/ssh-action。一旦我在服务器上,我就会启动 git 拉取以获取对服务器的最新更改。但是,这也包括 .github/workflows 文件夹。在 GH 操作 yml 文件中是我的 SSH 密码。我想避免这种情况。但我不知道怎么办。有人知道怎么做吗?
您不应将密码存储在 YAML 文件本身中。相反,使用存储库设置中的 GitHub Actions secrets 功能将密码存储为机密,然后通过环境将其传递。例如,您可以像这样传递一个秘密:
- run: echo $PASSWORD | my-program-here
env:
PASSWORD: ${{secrets.SSH_PASSWORD}}
您可以在 Git LFS release workflow.
中查看如何使用这种方法的示例
要从 GitHub 登录我的外部服务器,我 use/test appleboy/ssh-action。一旦我在服务器上,我就会启动 git 拉取以获取对服务器的最新更改。但是,这也包括 .github/workflows 文件夹。在 GH 操作 yml 文件中是我的 SSH 密码。我想避免这种情况。但我不知道怎么办。有人知道怎么做吗?
您不应将密码存储在 YAML 文件本身中。相反,使用存储库设置中的 GitHub Actions secrets 功能将密码存储为机密,然后通过环境将其传递。例如,您可以像这样传递一个秘密:
- run: echo $PASSWORD | my-program-here
env:
PASSWORD: ${{secrets.SSH_PASSWORD}}
您可以在 Git LFS release workflow.
中查看如何使用这种方法的示例