我有一个安装 truecrypt 卷的脚本,密码作为参数给出。系统上的任何用户都可以发出命令,该命令ps -aux | grep truecrypt
将显示加密卷的密码。此外,通过遍历proc
目录,可以再次显示密码。我对我的机器具有 root 访问权限,但我确信更改ps
命令和proc
目录的权限会破坏系统其他部分的功能。一方面,我想在不需要用户交互的情况下自动挂载卷,另一方面,泄露 truecrypt 卷的密码是不可能的。我也许可以找到一些可接受的解决方案,expect
但在此之前我想问一下是否有人有更好的主意?
问问题
252 次
1 回答
1
我曾经pexpect
在 python 脚本中解决我的问题,等效的 shell 脚本在概念上应该看起来相似
代替
mntMyDir = '/mnt/' + myDir
os.system('truecrypt ' + mntMyDir + '.tc ' + mntMyDir + ' --password=' + myPassword + ' --keyfiles= --protect-hidden=no')
os.chdir(mntMyDir + '/tree')
我用了
mntMyDir = '/mnt/' + myDir
truecryptCmd = 'truecrypt ' + mntMyDir + '.tc ' + mntMyDir + ' --keyfiles= --protect-hidden=no'
child = pexpect.spawn(truecryptCmd)
child.expect('Enter password for ' + mntMyDir + '.tc: ')
child.sendline(myPassword)
child.wait()
os.chdir(mntMyDir + '/tree')
于 2013-09-06T17:11:26.723 回答