Como montar automaticamente um volume TrueCrypt no OSX após o login com senha / keyfile

6

Eu gostaria de fazer o seguinte:

eu. Depois de entrar na minha conta, gostaria que o OSX montasse automaticamente 2 dos meus volumes (localizados no mesmo HDD externo conectado via FW800) usando uma senha ou arquivo de chaves. Eu não sei o que ver qualquer prompts para senhas de administrador ou senhas de volumes como eu já tenho minha senha de conta no lugar.

Pergunta 1 : Como posso alcançar isso? Existe algum script que eu possa baixar ou copiar?

Pergunta 2 : Preciso usar arquivos-chave ou posso usar uma senha para o OSX para montar automaticamente os volumes?

Pergunta bônus : Quais seriam os prós e contras de usar senha vs. arquivos de chave nesse cenário?

Para referência:

Atualmente estou no OSX 10.8.3 e meu OSX será criptografado via FileVault2.

Não me preocupo muito com o fato de que quaisquer arquivos de chaves ou senhas sejam armazenados no meu OSX, pois serão criptografados. Eu vou estar usando uma autenticação de dois fatores ao fazer login na minha conta usando uma senha que eu lembro e ter um Yubikey fazer o resto da senha. Por isso, será uma senha muito segura. texto enfatizado

Eu não sou um técnico, então eu precisaria de instruções fáceis de entender e mais ou menos copiar e colar scripts :)

Obrigado!

    
por VforVendetta 03.05.2013 / 19:52

1 resposta

4

Primeiro, faça o volume usar um arquivo-chave e uma senha vazia em Ferramentas de volume > Alterar a senha do volume. Em seguida, salve uma lista de propriedades como ~/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 ' &amp;&amp; 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>

Altere 1.1 GB para o tamanho do volume exibido por diskutil list . Pode haver uma maneira melhor de identificar o volume, mas, por exemplo, diskutil info /dev/disk1s4 não mostrou um UUID para o volume com o qual testei.

Em seguida, ative o agente executando launchctl load ~/Library/LaunchAgents/truecrypt.plist ou efetuando logout e back in. Você precisa descarregar e carregar o plist para aplicar as alterações nele.

Advertências:

  • Quando o comando truecrypt é executado pela primeira vez após o login, ele solicita a senha de uma conta de administrador, mesmo que seja executada como raiz. Isso pode ficar irritante depois de um tempo se você sair ou reiniciar com freqüência.
  • O job launchd é acionado quando qualquer volume é montado, portanto, se você desmontar o volume TrueCrypt (mas manter a unidade externa conectada) e montar algum outro volume, o volume TrueCrypt será montado novamente.

Ou você poderia apenas criptografar o volume com o FileVault? Se você marcar "Lembrar esta senha em minhas chaves", o volume será montado automaticamente, desde que a chave de login esteja desbloqueada.

Issotambémsignificaque,seachavedeloginestiverdesbloqueada,outraspessoasquetenhamacessoaoseucomputadorpoderãoverasenhacom,porexemplo,securityfind-generic-password-l"My FileVault volume" -w .

Editar: não houve nenhuma razão especial pela qual eu usei um arquivo de chaves e uma senha vazia no exemplo acima. Para usar uma senha e nenhum arquivo de chaves, substitua TrueCrypt --mount /dev/$disk -k ~/path/to/keyfile -p '' por exemplo TrueCrypt --mount /dev/$disk -p pa55word . Ou substitua pa55word por "$(security find-generic-password -l "My TrueCrypt volume" -w)" e use o Acesso às Chaves para adicionar um item de chave para a senha:

    
por 04.05.2013 / 15:40