#ssh-key #work-in-progress #docker-hub #rust-lang #secret-store #private-key #session-store

已撤回 podman_ssh_auth

存储和使用加密的docker-hub secret_token与SSH密钥

3个稳定版本

1.0.4 2024年4月23日

#14#secret-store

26 每月下载量

MIT 许可证

51KB
366

podman_ssh_auth

存储和使用加密的docker-hub secret_token与SSH密钥
版本:1.0.4 日期:2024-04-23 作者: bestia.dev 仓库: GitHub

work-in-progress rustlang docker-hub

License Rust

Lines in Rust code Lines in Doc comments Lines in Comments Lines in examples Lines in tests

标签:#维护 #准备就绪 #rustlang #自动化 #工作流
我的GitHub项目更像是教程而不是成品: bestia-dev教程.
我建议使用 CRUSTDE - Containerized Rust Development Environment 在Linux上编写Rust项目,与系统隔离。

动机

要访问docker-hub,您需要一个用户名+密码或访问secret_token。
重要提示:将访问secret_tokens视为您的密码,并保密。例如,在凭证管理器中安全地存储您的secret_tokens。
对于普通人来说,访问secret_tokens难以记住。我们需要将它们存储在某处。
注意:Podman是Docker的替代品。
我相信它们都使用命令存储docker-hub secret_token以进行登录

podman login --username user_name docker.io
docker login --username user_name docker.io

警告:请注意,它们将secret_token以“明文”形式存储在文件中: ${XDG_RUNTIME_DIR}/containers/auth.json
好的,这并不是真正的明文,但base64编码并不是安全特性。
这意味着任何可以访问此知名文件的攻击者都可以登录我们的Docker Hub账户。不好!!!

我想使用SSH密钥加密此secret_token以进行保护。
我们已经在创建、管理和保护我们的SSH密钥方面积累了大量经验。私钥由我们可以记住和输入的密码保护。每次使用secret_token都需要用户交互来输入密码。非常安全。

如果我们非常自信于当前会话,我们可以将SSH密钥存储在ssh-agent中,并只输入一次密码。
警告:一个专门的攻击者可能能够从ssh-agent中读取并发现访问secret_token,而不需要我们的用户交互。请自行决定是否使用此功能。

替换命令

将可执行文件podman_ssh_auth放入您打算使用的文件夹中。
复制后,使用chmod +x podman_ssh_auth使其可执行。
使用podman_ssh_auth push代替podman push
如果找到加密的secret_token,它将询问您私钥的密码短语。否则,它将询问您存储secret_token。

开发细节

在单独的md文件中阅读开发细节:DEVELOPMENT.md

发布变更日志

在单独的md文件中阅读发布变更日志:RELEASES.md

待办事项

然后快乐地编写代码...

开源且免费如啤酒

我的开源项目免费如啤酒(MIT许可)。
我只是热爱编程。
但我也需要喝酒。如果您觉得我的项目和教程有帮助,请通过捐赠到我的PayPal来为我买一杯啤酒。
您知道您当地酒吧啤酒的价格:-)
这样我就可以为了您的健康喝一杯免费的啤酒:-)
Na zdravje! Alla salute! Prost! Nazdravlje! 🍻

//bestia.dev
//github.com/bestia-dev
//bestiadev.substack.com
//youtube.com/@bestia-dev-tutorials

依赖项

~27–41MB
~750K SLoC