No Debian 8.3, quero montar um contêiner criptografado /usr/local/share/test.img
com pam_mount no login no ponto de montagem /home/test
(que pertence a test
, é claro). A imagem de disco criptografada LUKS test.img
possui a mesma senha que a senha de login do usuário test
.
Este é meu /etc/security/pam_mount.conf.xml
:
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE pam_mount SYSTEM "pam_mount.conf.xml.dtd">
<pam_mount>
<debug enable="0" />
<volume user="test" fstype="crypt" path="/usr/local/share/test.img" mount="/home/test" />
<mntoptions allow="nosuid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other" />
<mntoptions require="nosuid,nodev" />
<logout wait="0" hup="0" term="0" kill="0" />
<mkmountpoint enable="1" remove="true" />
<cryptmount>mount.crypt %(VOLUME) %(MNTPT)</cryptmount>
<cryptumount>umount.crypt %(MNTPT)</cryptumount>
</pam_mount>
Estranhamente, tive que acrescentar à /etc/fstab
linha:
/usr/local/share/test.img /home/test crypt user,noauto 0 0
Caso contrário, pam_mount reclamará que não consegue encontrá-lo no fstab!?
Funciona como deveria, exceto por um problema: /home/test
passa a ser propriedade root
e não pode ser gravado pelo usuário test
!
Adicionar noroot="1"
também não funciona, pam_mount reclama que não é possível configurar o dispositivo de loopback para o contêiner criptografado.
Como faço para montar /home/test
com pam_mount para que ele pertença a test
?
Responder1
Eu mudei a última linha /etc/fstab
para:
/usr/local/share/test.img /home/test crypt user,noauto,uid=1000 0 0
1000 é o uid do usuário test
.
E adicionado uid
às opções permitidas em /etc/security/pam_mount.conf.xml
:
<mntoptions allow="nosuid,uid,nodev,loop,encryption,fsck,nonempty,allow_root,allow_other" />
Agora funciona. Mas não está claro para mim o porquê.