Vfo*_*tta 6 encryption mount passwords truecrypt macos
我想做以下事情:
I. 登录我的帐户后,我希望 OSX 使用密码或密钥文件自动挂载我的 2 个卷(位于通过 FW800 连接的同一个外部硬盘上)。我没有看到任何有关管理员密码或卷密码的促销信息,因为我已经有了我的帐户密码。
问题 1:我怎样才能做到这一点?有没有我可以下载或复制的脚本?
问题 2:我必须使用密钥文件还是可以使用 OSX 的密码来自动挂载卷?
额外问题:在这种情况下使用密码与密钥文件的优缺点是什么?
以供参考:
目前我使用的是 OSX 10.8.3,我的 OSX 将通过 FileVault2 加密。
我不太担心任何密钥文件或密码都存储在我的 OSX 上,因为它会被加密。使用我记得的密码登录我的帐户时,我将使用双因素身份验证,并让 Yubikey 完成密码的其余部分。所以这将是一个非常安全的密码。强调文本
我不是技术人员,所以我需要易于理解的说明和或多或少的复制和粘贴脚本:)
谢谢!
首先在卷工具 > 更改卷密码中使卷使用密钥文件和空密码。然后将属性列表保存为~/Library/LaunchAgents/truecrypt.plist:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC -//Apple Computer//DTD PLIST 1.0//EN http://www.apple.com/DTDs/PropertyList-1.0.dtd>
<plist version="1.0">
<dict>
<key>Label</key>
<string>truecrypt</string>
<key>ProgramArguments</key>
<array>
<string>bash</string>
<string>-c</string>
<string>diskutil list | grep -Fq ' *1.1 GB ' && exit # an asterisk indicates that the volume is mounted
disk=$(diskutil list | awk '/ 1.1 GB /{print $NF}')
[[ $disk ]] || exit
/Applications/TrueCrypt.app/Contents/MacOS/TrueCrypt --mount /dev/$disk -k ~/path/to/keyfile -p ''</string>
</array>
<key>StartOnMount</key>
<true/>
</dict>
</plist>
Run Code Online (Sandbox Code Playgroud)
更改1.1 GB为 所示的卷大小diskutil list。可能有一些更好的方法来识别卷,但例如diskutil info /dev/disk1s4没有显示我测试的卷的 UUID。
launchctl load ~/Library/LaunchAgents/truecrypt.plist然后通过运行或注销并重新登录来启用代理。您必须卸载并加载 plist 才能对其应用更改。
注意事项:
truecrypt您登录后第一次运行该命令时,即使以 root 身份运行,它也会要求输入管理员帐户的密码。如果您频繁注销或重新启动,一段时间后这可能会变得烦人。或者您可以使用 FileVault 加密该卷吗?如果您选中“在我的钥匙串中记住此密码”,只要登录钥匙串解锁,该卷就会自动安装。

这也意味着,如果登录钥匙串已解锁,有权访问您计算机的其他人可以看到密码,例如security find-generic-password -l "My FileVault volume" -w.
编辑:在上面的示例中我使用密钥文件和空密码没有特殊原因。要使用密码而不使用密钥文件,请替换TrueCrypt --mount /dev/$disk -k ~/path/to/keyfile -p ''为例如TrueCrypt --mount /dev/$disk -p pa55word。或者替换pa55word为"$(security find-generic-password -l "My TrueCrypt volume" -w)"并使用 Keychain Access 为密码添加钥匙串项:
