[CentOS-pt-br] Restringir escrita em USB e CD para certos usuários

João Olavo Baião de Vasconcelos joaoolavo em gmail.com
Sexta Fevereiro 25 07:28:17 EST 2011


Olá pessoal,

Na empresa, surgiu uma demanda para que somente alguns usuários possam
escrever/gravar dados em dispositivos de armazenamento USB (pendrive, HD
externo, etc) e em CD/DVD (a leitura está liberada).

Foi escolhida a opção de criar um grupo no NIS para armazenar os usuários
que terão essa permissão de escrita.

Para restringir a gravação de CD, utilizei o udev. Coloquei a seguinte
regra:
*# cat /etc/udev/rules.d/50-cdrom.rules
ENV{ID_TYPE}=="cd", GROUP:="GRUPO_NIS_RW", MODE:="460", OPTIONS="last_rule"*

O last_rule foi necessário pois a regra 95-pam-console.rules executava um
binário que dá chmod 0600 no dispositivo. Com isso, essa fica sendo a última
regra a ser aplicada ao cdrom.

Ao tentar gravar algo ou formatar um cd-rw, o usuário que não está no grupo
GRUPO_NIS_RW fica sem permissão, mesmo que ele seja o dono do dispositivo.

*O problema é como restringir a escrita em USB*. Mesmo mudando a permissão
do dispositivo, por exemplo, /dev/sdb, para 440, continuo conseguindo
escrever no pendrive. Imagino que seja pq o diretório montado fique com
permissão de escrita por meu usuário (devido ao HAL?), e isso acaba tendo
mais prioridade que a permissão no dispositivo.

A solução foi mover o /bin/mount para /bin/mount.orig e escrever meu próprio
/bin/mount, que faz as verificações de qual o usuário que está chamando o
binário e se ele tem permissão de escrita, e então chamando o mount.orig
passando também "-o ro", caso ele não tenha permissão de escrita.

Alguém teria uma solução mais elegante/simples que essa?

Estou usando o CentOS 5.5.

Obrigado!
-- 
João Olavo Baião de Vasconcelos
Analista de Sistemas - Infraestrutura
joaoolavo.wordpress.com
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL: http://lists.centos.org/pipermail/centos-pt-br/attachments/20110225/d632cc34/attachment.html 


Mais detalhes sobre a lista de discussão CentOS-pt-br