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 havia uma regra 95 do PAM que executava um binário que dava 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, 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? Obrigado! -- João Olavo Baião de Vasconcelos Analista de Sistemas - Infraestrutura joaoolavo.wordpress.com