agenix CLI 工具完全指南:加密、解密和重加密操作手册
agenix CLI 工具完全指南:加密、解密和重加密操作手册
【免费下载链接】agenixage-encrypted secrets for NixOS and Home manager项目地址: https://gitcode.com/gh_mirrors/ag/agenix
agenix 是一款专为 NixOS 和 Home Manager 设计的命令行工具,用于管理 age-encrypted 加密密钥,帮助用户轻松处理系统中的敏感信息。本文将详细介绍 agenix CLI 工具的加密、解密和重加密核心操作,让你快速掌握密钥管理技巧。
一、加密操作:保护你的敏感数据
加密是 agenix 最核心的功能之一,通过简单的命令即可将敏感文件加密为.age格式。基本语法如下:
agenix -e FILE [-i PRIVATE_KEY]使用示例: 加密名为secret1.age的文件:
$ agenix -e secret1.age如果需要指定私钥进行加密(例如使用非默认路径的密钥):
$ agenix -e secret1.age -i ~/.ssh/id_ed25519此命令会根据secrets.nix中定义的接收者公钥列表,将原始文件加密为只有指定接收者才能解密的.age文件。加密后的文件可安全地提交到版本控制系统中。
二、解密操作:获取加密内容
当需要查看或使用加密文件时,可以通过解密命令将.age文件内容输出到标准输出流。基本语法:
agenix -d FILE使用示例: 解密secret1.age文件并查看内容:
$ agenix -d secret1.age解密后的内容会直接显示在终端中,方便临时查看敏感信息。如需保存到文件,可使用重定向操作:
$ agenix -d secret1.age > secret1.txt三、重加密操作:更新密钥访问权限
当团队成员变动或密钥轮换时,需要对所有加密文件进行重加密以更新访问权限。使用--rekey选项可批量处理所有 secrets:
agenix -r [-i PRIVATE_KEY]使用示例: 使用默认私钥重加密所有 secrets:
$ agenix --rekey指定私钥进行重加密:
$ agenix -r -i ~/.ssh/id_ed25519重加密操作会读取secrets.nix中最新的接收者列表,确保只有当前授权的用户才能访问加密文件。这一功能在团队协作或密钥更新场景中尤为重要。
四、核心参数速查表
| 参数 | 功能描述 |
|---|---|
-e FILE | 加密指定文件为.age格式 |
-d FILE | 解密.age文件并输出到标准输出 |
-r | 重加密所有 secrets 以更新访问权限 |
-i PRIVATE_KEY | 指定用于加密/重加密的私钥路径 |
五、实际应用场景
1. 个人 NixOS 配置管理
在个人 NixOS 系统中,使用 agenix 加密/etc/nixos/secrets目录下的 Wi-Fi 密码、API 密钥等敏感信息,确保配置文件可安全分享。
2. 团队协作环境
团队成员通过secrets.nix文件管理公钥列表,新成员加入时只需添加其公钥并执行agenix --rekey,即可自动更新所有加密文件的访问权限。
3. 密钥轮换
定期执行重加密操作,配合密钥定期更换策略,有效降低密钥泄露风险。
六、学习资源推荐
- 详细使用教程:doc/tutorial.md
- 命令参考手册:doc/reference.md
- 重加密操作指南:doc/rekeying.md
通过本文介绍的加密、解密和重加密操作,你可以安全高效地管理 NixOS 和 Home Manager 中的敏感信息。agenix 简洁的命令设计和强大的功能,让密钥管理变得简单而可靠。无论是个人使用还是团队协作,agenix 都是保护系统安全的得力助手。
【免费下载链接】agenixage-encrypted secrets for NixOS and Home manager项目地址: https://gitcode.com/gh_mirrors/ag/agenix
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
