ragenix:NixOS系统的年龄加密秘密管理工具
2024-09-12 08:44:36作者:侯霆垣
项目介绍
ragenix 是一个专为NixOS系统设计的用于创建、编辑和重置加密秘密的工具,它是agenix的现代替代品,由Rust编写的。此工具利用了高效的age加密库来加强安全性,并特别适配NixOS和macOS环境。ragenix不仅提供了与agenix相似的命令行接口以保障平滑迁移,还增添了对Nix Flakes的全力支持,以及一系列如插件机制、命令行优化、壳补全等功能,提高了管理加密秘密的灵活性和安全性。
项目快速启动
安装
要在你的NixOS系统中安装ragenix,你可以通过Nix命令或者Flake方式添加它。下面是使用Flake的示例:
# 在你的flake.nix文件中添加ragenix
inputs:
ragenix.url = "github:yaxitech/ragenix";
# 然后更新并启用ragenix
$ nix flake update
$ nix shell .#ragenix --command "ragenix --version"
如果你不在Flake环境中,可以直接安装包:
# 对于NixOS
$ nix-env -iA nixos.ragenix
# 或者对于home-manager
$ home-manager install --packages ragenix
使用示例
创建一个新的加密文件:
$ ragenix --edit /path/to/your-secret.nix
这将会使用默认编辑器打开一个加密的新文件,保存后,该文件会被加密存储。
应用案例和最佳实践
- 系统激活加密: 在NixOS的配置中,可以设置系统关键配置为加密状态,通过ragenix在系统启动时解密,确保安全性。
- 团队共享敏感配置: 利用公共密钥分享机制,团队成员可以安全地共享和访问加密后的配置文件,而无需直接暴露秘密信息。
- 自动化部署: 在CI/CD流程中,使用ragenix加密敏感信息,如API密钥或数据库密码,确保这些数据在传输和部署过程中的安全。
典型生态项目
虽然ragenix本身是独立的,但与Nix生态紧密结合,特别是在结合Nix Flakes时,它可以与多种基础设施自动化工具如Terraform、Ansible等结合,用于自动化配置的部署和管理。此外,其与YubiKey等硬件安全模块的配合使用,通过age-plugin-yubikey,展示了如何增强物理层的安全性,是高级用户和企业级部署中的最佳实践之一。
结合YubiKey的实践
配置ragenix以使用YubiKey进行加密和解密,增加了额外的安全层级:
- 确保已安装
yubikey-personalization和age-plugin-yubikey。 - 在你的Nix配置中指定
ragenix使用YubiKey插件。 - 创建或编辑秘密时指定相应的身份,若已配置YubiKey,
ragenix将利用其增强安全性。
通过这种方式,ragenix成为了一个强大的工具,不仅仅局限于基本的秘密管理,而是成为构建高安全性IT架构的基石。
登录后查看全文
热门项目推荐
kernelopenEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。C0131
let_datasetLET数据集 基于全尺寸人形机器人 Kuavo 4 Pro 采集,涵盖多场景、多类型操作的真实世界多任务数据。面向机器人操作、移动与交互任务,支持真实环境下的可扩展机器人学习00
mindquantumMindQuantum is a general software library supporting the development of applications for quantum computation.Python059
PaddleOCR-VLPaddleOCR-VL 是一款顶尖且资源高效的文档解析专用模型。其核心组件为 PaddleOCR-VL-0.9B,这是一款精简却功能强大的视觉语言模型(VLM)。该模型融合了 NaViT 风格的动态分辨率视觉编码器与 ERNIE-4.5-0.3B 语言模型,可实现精准的元素识别。Python00
GLM-4.7-FlashGLM-4.7-Flash 是一款 30B-A3B MoE 模型。作为 30B 级别中的佼佼者,GLM-4.7-Flash 为追求性能与效率平衡的轻量化部署提供了全新选择。Jinja00
AgentCPM-ReportAgentCPM-Report是由THUNLP、中国人民大学RUCBM和ModelBest联合开发的开源大语言模型智能体。它基于MiniCPM4.1 80亿参数基座模型构建,接收用户指令作为输入,可自主生成长篇报告。Python00
最新内容推荐
项目优选
收起
deepin linux kernel
C
27
11
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
496
3.64 K
Ascend Extension for PyTorch
Python
300
338
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
307
131
本项目是CANN提供的数学类基础计算算子库,实现网络在NPU上加速计算。
C++
868
479
暂无简介
Dart
744
180
React Native鸿蒙化仓库
JavaScript
297
346
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
11
1
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
66
20
仓颉编译器源码及 cjdb 调试工具。
C++
150
882