Veja como habilitar namespaces de montagem por usuário no Ubuntu 12.10 usando pam_namespace:
Edite o /etc/security/namespace.conf
Descomente as últimas linhas. Por segurança, adicione seu usuário atual à lista de exclusões.
/tmp /tmp-inst/ level root,adm,myuser
/var/tmp /var/tmp/tmp-inst/ level root,adm,myuser
Edite /etc/security/namespace.init
e altere #!/bin/sh -p
para #!/bin/bash --noprofile
ou para #!/bin/sh
Isso ocorre porque sh
é realmente dash
.
Para testar a edição /etc/pam.d/su
e anexar no final do arquivo:
session required pam_namespace.so
Teste em um usuário de teste:
su - testuser
Como o usuário de teste é executado:
echo diff '<(sort /proc/'$$'/mounts) <(sort /proc/mounts)'
Isso gerará um comando como:
diff <(sort /proc/31987/mounts) <(sort /proc/mounts)
Execute o diff gerado a partir do shell do usuário de teste e da raiz. Do usuário de teste você não terá saída, mas a partir da raiz você verá algo como:
4,7d3
< /dev/sda1 /tmp ext4 rw,relatime,errors=remount-ro,data=ordered 0 0
< /dev/sda1 /tmp/tmp-inst ext4 rw,relatime,errors=remount-ro,data=ordered 0 0
< /dev/sda1 /var/tmp ext4 rw,relatime,errors=remount-ro,data=ordered 0 0
< /dev/sda1 /var/tmp/tmp-inst ext4 rw,relatime,errors=remount-ro,data=ordered 0 0
A pasta test_user /tmp
será mapeada como /tmp/tmp-inst/test_user
e só será acessível a este usuário.