Linux 服务器中如何安全的存储私钥文件?

293 天前
 raw0xff

由于自己的应用需要用到私钥进行签名,所以私钥文件需要存储在服务器中。那么如何存储私钥文件比较靠谱呢?有没有什么方式再设置一层私钥的密钥,使人即便拥有了 root 权限也无法得知私钥?前提是应用可以正常获取私钥。

1915 次点击
所在节点    Linux
25 条回复
tomychen
293 天前
你这个假设是 root 是不安全用户

这种场景下,怎么做才安全呢,你要解决的不是一个文件的存储问题,而是把场景切换的问题。
EvineDeng
293 天前
以我极有限的知识,我仅知道 p12 证书可以再设置一层证书密码,使用时需要验证密码。
virusdefender
293 天前
即使 p12 设置了密码,那 root 用户也能看到。如果真的需要那么高的安全性,你应该换硬件签名设备。
adoal
293 天前
学术人:想办法搞一个可以没有 super user 的用户权限模型的操作系统。
运维人:限制无关人士登录/切换身份的权限。
tomychen
293 天前
@adoal 这不就是等保最初的概念三权分立嘛
tomychen
293 天前
app 要访问私钥进行签名...所以即使设置密码,密码也必然会在 app 内保存,至于怎么储存(加密)等,这些在 root 的面前,只是时间的问题。
deplivesb
293 天前
假定 root 是不安全的,那就需要 yubikey 这种硬件设备了
seers
293 天前
把签名封装成接口
GeruzoniAnsasu
293 天前
私钥本来就可以用 passphrase 保护,要清除私钥的 passphrase 需要正确输入一次

这个机制可以理解为用对称加密将你的私钥额外加密一次,对称加密的 pass 放在你脑子里。
proxychains
293 天前
@adoal 学院派和工程派
a1274598858
292 天前
HSM 硬件安全模块
flyingfz
292 天前
HashiCorp 有个 叫做 vault 的 东西, 就是专门处理这种机密信息的系统。
推荐看看。
t123yh
292 天前
买一个 yubikey 或者 canokey
yinmin
292 天前
如果是 docker 部署的,可以使用 docker secret 命令添加 pfx 密码,然后在 Docker Compose 中引入密码,程序使用 pfx+secret 密码去签名。
yanqiyu
292 天前
HSM ,管理员物理带在身上,需要签名的时候插上去
4kingRAS
292 天前
签名的频率大吗,不大就物理加密狗,大就做成服务,内网远程调用签名
raw0xff
292 天前
@4kingRAS 签名不规律,均值在每秒一次。
MetroWind
292 天前
把密钥相关功能单拎出来放到另一台 PKI 服务器上,上面可以跑个 HashiCorp Vault 或者 CFSSL 类似的东西,不用的时候关机断网。
ltkun
292 天前
搞个 2FA 认证?
Vieufoux
292 天前
Vault

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/958255

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX