使用ecryptfs或encfs(可能更多),实际的解密密码保存在一个由密码解密的文件中。
因此,如果偏执(或试图留下深刻印象),您可以在几毫秒内将所有加密数据有效地粉碎成美国DOD标准(通常是整个主目录)。
我想设置我的电脑(或者至少是我的vbox系统),如果输入了特定的密码,或连续输入了错误的密码,就会粉碎包装的密码。
这很容易但我不知道如何进入linux认证系统的水平允许我检查错误的密码和/或在文件上运行shred程序。
TL; DR:如果不正确的登录使用了特定密码,任何人都知道如何让linux粉碎文件?
答案 0 :(得分:10)
通常,用于挂钩Linux身份验证的方法是PAM。编写自己的PAM模块,或找到一个可以强制执行你想做的事情。
我能看到的最简单的选项是pam_script。
安装,然后将auth optional pam_script.so
放在/etc/pam.d中的相应文件中,并编写一个查看$ PAM_USER和$ PAM_AUTHTOK的pam_script_auth脚本。
请注意,该脚本可以作为root用户或用户运行,因此需要在密切关注权限的情况下存储密码失败数据。
没有多故障版本的简单版本有点像:
if [ $PAM_USER = "jv" ] && [ $PAM_AUTHTOK = "ThePoliceHaveMe" ]; then
shredcommand
fi
答案 1 :(得分:5)
已经发布了很好的答案,解释了如何使用可插拔验证模块执行您想要执行的操作,因此我不再重复这些操作。
首先,当您在一定数量的登录失败后自动粉碎加密密钥时,您会遇到令人讨厌的拒绝服务漏洞,任何人都可以通过反复登录错误来销毁所有数据。
其次,你可能认为它会在“他们”得到你的机器时起作用,但事实并非如此,因为在试图破解你的加密或猜测你的密码时,没有人会使用你的系统来做到这一点。任何人都要做的第一件事就是复制原始分区并在安全的环境中使用您的数据,在这种环境中,他们可以确保他们试图读取的数据不会在此过程中被破坏。
第三,至于在几毫秒内将整个数据粉碎到美国DOD标准,记得还要粉碎整个交换分区,或者首先不要使用一个。此外,虽然看起来不需要,但请记住也要粉碎RAM的内容,因为即使断电后RAM的内容有时也可以恢复。
答案 2 :(得分:2)
您需要开发PAM module并配置系统以将其用于密码验证。
如果这有点令人生畏,您可以尝试PAM-script声称能够在身份验证过程中运行脚本。我自己没试过。