<div class="gmail_quote">Olá pessoal,<br><br>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).<br>

<br>
Foi escolhida a opção de criar um grupo no NIS para armazenar os usuários que terão essa permissão de escrita.<br><br>Para restringir a gravação de CD, utilizei o udev. Coloquei a seguinte regra:<br><i># cat /etc/udev/rules.d/50-cdrom.rules<br>


ENV{ID_TYPE}==&quot;cd&quot;, GROUP:=&quot;GRUPO_NIS_RW&quot;, MODE:=&quot;460&quot;, OPTIONS=&quot;last_rule&quot;</i><br><br>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.<br>


<br>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.<br><br><b>O problema é como restringir a escrita em USB</b>. 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.<br>


<br>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 &quot;-o ro&quot;, caso ele não tenha permissão de escrita.<br>


<br>Alguém teria uma solução mais elegante/simples que essa?<br><br>Estou usando o CentOS 5.5.<br clear="all"><br>Obrigado!<font color="#888888"></font><br clear="all"></div>-- <br>João Olavo Baião de Vasconcelos<br>Analista de Sistemas - Infraestrutura<br>

<a href="http://joaoolavo.wordpress.com">joaoolavo.wordpress.com</a><br>