Montar automaticamente o volume Truecrypt no login usando a senha da conta

0

Estou usando uma edição Debian do Linux Mint. Eu gostaria de ter um volume Truecrypt (um arquivo no meu diretório home ou uma partição separada) ser montado automaticamente no login usando minha senha de login. Isso é possível? Se não, como eu poderia solicitar uma senha e montá-la diretamente após o login?

    
por Leagsaidh Gordon 06.08.2013 / 17:23

2 respostas

0

O Debian usa um sistema init tipo Sys-V para executar comandos quando o nível de execução do sistema é alterado - por exemplo, no tempo de inicialização e encerramento.

Se desejar adicionar um novo serviço para iniciar quando a máquina for inicializada, você deve adicionar o script necessário ao diretório /etc/init.d / . Muitos dos scripts já presentes nesse diretório darão um exemplo do tipo de coisa que você pode fazer.

Aqui está um script muito simples que é dividido em duas partes, código que sempre é executado e código que é executado quando chamado com "start" ou "stop".

#! /bin/sh
# /etc/init.d/blah
#

# Some things that run always
touch /var/lock/blah

# Carry out specific functions when asked to by the system
case "$1" in
  start)
    echo "Starting script blah "
    echo "Could do more here"
    ;;
  stop)
    echo "Stopping script blah"
    echo "Could do more here"
    ;;
  *)
    echo "Usage: /etc/init.d/blah {start|stop}"
    exit 1
    ;;
esac

exit 0

Uma vez que você salvou seu arquivo no local correto, certifique-se de que ele é executável executando " chmod 755 /etc/init.d/blah ".

Depois, você precisa adicionar os links simbólicos apropriados para fazer com que o script seja executado quando o sistema for desativado ou for ativado.

A maneira mais simples de fazer isso é usar o comando específico do Debian update-rc.d :

root@skx:~# update-rc.d blah defaults Adding system startup for /etc/init.d/blah ... /etc/rc0.d/K20blah -> ../init.d/blah
/etc/rc1.d/K20blah -> ../init.d/blah /etc/rc6.d/K20blah -> ../init.d/blah /etc/rc2.d/S20blah -> ../init.d/blah
/etc/rc3.d/S20blah -> ../init.d/blah /etc/rc4.d/S20blah -> ../init.d/blah /etc/rc5.d/S20blah -> ../init.d/blah

Se você deseja remover o script da sequência de inicialização na execução futura:

root@skx:/etc/rc2.d# update-rc.d -f blah remove update-rc.d: /etc/init.d/blah exists during rc.d purge (continuing) Removing any system startup links for /etc/init.d/blah ... /etc/rc0.d/K20blah
/etc/rc1.d/K20blah /etc/rc2.d/S20blah /etc/rc3.d/S20blah
/etc/rc4.d/S20blah /etc/rc5.d/S20blah /etc/rc6.d/K20blah

Isto deixará o próprio script no lugar, apenas remova os links que fazem com que ele seja executado.

Você pode encontrar mais detalhes sobre este comando executando " man update-rc.d ".

Estes são apenas exemplos. Basta gerar seu próprio script para montar o volume e fornecer a senha, se desejar. É claro que, se você fizer isso, sua senha será armazenada em texto sem formatação no seu disco rígido. Você pode alterar o script para solicitar uma senha, é claro.

Fonte

    
por 06.08.2013 / 17:38
0

Acho que você precisaria corrigir seus programas de login - login , xdm / gdm / kdm , ... - para montar o volume ou passar a senha inserida para outro processo . Passar a senha de forma clara para outro processo parece um risco de segurança. Não há wa

Solicitar a senha após o login parece fácil e seguro. Há apenas o incômodo menor de digitar a senha duas vezes para o primeiro login (ou login após você decidir desmontar automaticamente ou manualmente o volume criptografado).

Qual é a resposta exata depende do seu método de login. Cada sistema de desktop gráfico provavelmente tem um método um pouco diferente de especificar o programa a ser executado. Como executar comandos como parte do login no seu sistema GUI Desktop favorito vale outra questão distinta. Essencial para sua pergunta atual é que você poderia criar um script para verificar se o seu volume Truecrypt está montado e se não, monte-o e configure seu login para rodar este script que pareceria algo tão simples como o abaixo:

#!/bin/sh

your_truecrypt_volume_mounted || mount_true_crypt_volume

em que your_truecrypt_volume_mounted é uma função ou comando do shell para verificar se você já montou o volume criptografado (provavelmente apenas grep de saída de mount ) e mount_true_crypt_volume é o comando ou a função shell para montar seu volume. Se você estiver efetuando login em uma área de trabalho gráfica (Gnome / KDM / XFCE / whatever), poderá executar o comando mount no aplicativo do terminal para que o usuário possa receber uma solicitação de senha. Você pode usar a variável DISPLAY environment como uma dica de que está executando uma sessão do X Windows ou torná-la uma opção de linha de comando para o script, se desejar reutilizá-la (sem especificar em vários locais seus caminhos de montagem, etc.).

Para o login no console virtual, você pode executar o mesmo script no arquivo ~/.bash_login , assumindo que o padrão bash seja o seu shell.

Você provavelmente já sabe quais são os comandos para montar o volume do Truecrypt e verificar a presença do volume do Truecrypt.

    
por 15.10.2013 / 17:43