Permissão de leitura + escrita sem permissão de deletar arquivos

1. Permissão de leitura + escrita sem permissão de deletar arquivos

Sergio Souza
sergin1rn

(usa Ubuntu)

Enviado em 01/12/2011 - 16:10h

Boa tarde pessoal,

Alguem sabe como faço pra dar permissão a uma determinada pasta para um grupo de usuários para que ele possa somente visualizar e postar coisas lá dentro sem poder deletar, e que somente outro grupo de usuário possa fazer a deleção?

Ex:
/home/dados (grupo "incluir" com direito de postar e de visualizar o conteúdo da pasta sem alterar/deletar)
/home/dados (grupo "alterar" com permissão total chmod 777")

Desde já fico agradecido.

Sérgio


  


2. Re: Permissão de leitura + escrita sem permissão de deletar arquivos

renan vicente gomes da silva
renan1010

(usa Debian)

Enviado em 01/12/2011 - 16:31h

Coloque permissão stick bit no diretório
Qualquer usuário que tenha permissão de escrita para um diretório pode apagar todos os arquivos no diretório, independentemente de quem o possui.

Com o sticky bit ativado, apenas o proprietário de um arquivo poderá apagá-lo.

Como usar?

Incluir sticky bit:

chmod +t NOME_DIRETORIO

Remover o sticky:

chmod -t NOME_DIRETORIO

Verificar se o sticky bit está ativado ou não:

ls -ld NOME_DIRETORIO


recomendo este artigo para aprimorar os conhecimentos em permissões especiais:
http://www.vivaolinux.com.br/artigo/Tipos-de-permissoes-especiais-GNU-Linux


3. renan1010

Sergio Souza
sergin1rn

(usa Ubuntu)

Enviado em 01/12/2011 - 16:45h

Oi Renan,

Cara, é porque no RWindow$, na parte de segurança do compartilhamento temos as opções de deixar leitura, escrita, mas não deixar apagar um determinado arquivo. Pensei que com o chown teria esta opção... Mas, pelo que estou pesquisando não...



4. Re: Permissão de leitura + escrita sem permissão de deletar arquivos

renan vicente gomes da silva
renan1010

(usa Debian)

Enviado em 01/12/2011 - 17:23h

se você pode colocar permissao de leitura e escrita para os usuários no diretório e colocar stick bit também no diretório assim os usuários vão ter permissão de leitura e escrita mas só o dono do arquivo criado pode apaga-lo, caso queira que ninguém possa apaga-lo, faca uma regra que todo arquivo criado nesse diretório o dono seja o root assim qualquer arquivo criado so pode ser deletado pelo root, não vejo necessidade de fazer isso, colocando o stick bit você ja impede que outro usuário apague um arquivo que foi criado por outra pessoa e que o único que pode apagar sera quem criou ele.


exemplo:
se você fizer regra para todos os arquivos sejam dono o root apenas você poderá apagar então se um usuário criar um arquivo por engano não vai poder apagar indo de incomodar a todo momento, usando apenas o stick bit so quem vai poder apagar os arquivos vai ser quem o criou os outros não vão conseguir.

a segunda opção seria muito melhor não acha?


5. Re: Permissão de leitura + escrita sem permissão de deletar arquivos

renan vicente gomes da silva
renan1010

(usa Debian)

Enviado em 01/12/2011 - 17:30h

se for um determinado arquivo que voce quer que nao deletem mas quer que possam altera-lo e visualizado, entao a solucao e muito simples.
coloque opcao de stick bit junto com leitura e gravacao no diretorio e deixe o root como dono usando o chown assim todos poderam ler escrever mas nao deletar.
exemplo
#chmod 1777 Diretorio
acamamos de dar permissao stick bit, permissao de leitura,gravacao e execucao para todos.
#chown root diretorio
agora o root como dono do diretorio

oque aconteceu?

todos podem executar, alterar e ler o diretorio mas o unico que pode apagar sera o root porque a permissao stick bit deixa apenas o dono do diretorio apagar ele, caso qualquer outro tentar apagar a permissao sera negada, o mesmo serve para arquivos.


6. Re: Permissão de leitura + escrita sem permissão de deletar arquivos

Sergio Souza
sergin1rn

(usa Ubuntu)

Enviado em 06/12/2011 - 18:51h

Aí é que está Renan,

O que eu quero é que dono do arquivo não consiga alterar, mas outro usuário possa fazer as alterações.
Porque não quero que o dono do arquivo altere? Para que haja um controle de que se ele (dono quem postou) colocar o arquivo, não possa deletar/alterar sem querer ou até mesmo querendo.

Vou postar uma imagem do meu AD para que haja uma compreensão maior da galera.


7. Re: Permissão de leitura + escrita sem permissão de deletar arquivos

renan vicente gomes da silva
renan1010

(usa Debian)

Enviado em 07/12/2011 - 00:15h

acho que entendi oque você quer, você quer quer uma diretório na rede, compartilhada, que tenha permissao de leitura e gravação para todos mas ninguém inclusive o dono do arquivo pode apagar qualquer arquivo ou diretório criado nesse diretório da correto?
não conheço um comando que possa fazer mas você pode fazer o seguinte.
vamos dar um exemplo pratico.
- crie o diretório
#mkdir /home/fulano/diretorio_teste

- faca um grupo para os usuários que vão utilizá-lo

- adicione os usuários nesse grupo

- mude a permissao do diretório da rede, para stick bit com permissao de leitura e gravação para o grupo e permissao total para o dono e quem não pertence ao grupo e não e dono fica sem permissao a nada com o comando.
#chmod 3770 /home/fulano/diretorio_teste

agora vem a parte interessante
crie uma tarefa para que todo arquivo criado nesse diretório faca que o root seja o dono.
execute o comando:
#crontab -e
e adicione a linha abaixo:
#Nota: mude o nome do grupo que eu coloquei vendas pelo nome do grupo que você criou.
* * * * * chown root:vendas /home/fulano/diretorio_teste/*

pronto assim todo arquivo criado na pasta o grupo vendas tera acesso a leitura e gravação, porem ninguém poderá apagá-lo pois tem stick bit e so o dono pode apagar, ja que a tarefa criada faz com que todo arquivo criado na pasta faca com que o dono seja o root ninguém consegue apagar exceto o root.

Agora esta com o seu problema resolvido neh rs?


8. Re: Permissão de leitura + escrita sem permissão de deletar arquivos

Diego Marin
diegobnx

(usa Debian)

Enviado em 07/12/2011 - 09:45h

Acredito que deve ter resolvido já mais vou dar minha contribuição ao tópico se ajudar, perfeito.

As permissões funcionam assim:

Primeiro caracter é o bit especial chamado bit sticky o segundo é para o usuário que criou o arquivo o terceiro para o grupo e o quarto para outros. As permissões são em binários 1 ativa e 0 desativa por ex.:

a posição padrão das permissões são: rwx,
1 em binario é 1 ou seja 001 seria --x correto?
e assim por diante se for 2 será 010 que é igual -w- até o 7.

quando se coloca 0777 por isso ele da permissão full -rwxrwxrwx

r = read = leitura
w = write = escrita
x = execute = executar

espero ter ajudado me corrija se estiver errado,

grato.


9. Re: Permissão de leitura + escrita sem permissão de deletar arquivos

Sergio Souza
sergin1rn

(usa Ubuntu)

Enviado em 09/12/2011 - 17:03h

Vou testar agora Renan!


10. Re: Permissão de leitura + escrita sem permissão de deletar arquivos

Sergio Souza
sergin1rn

(usa Ubuntu)

Enviado em 09/12/2011 - 18:50h

Renan,

Estamos quase chegando ao resultado esperado.
Consegui fazer com que os usuários do grupo "limitados" consigam apenas colar as pastas/arquivos na pasta compartilhada e após um tempo o crontab -e faz o trabalho de alterar a permissão para o grupo "permitidos".
Porém, não só consegui fazer com que o grupo "permitidos" acessassem o compartilhamento, somente após colocar o usuário estudio no grupo "limitados" conforme o exemplo abaixo, consegui acessálo, porém sem permissão de alterar nada...

cat /etc/group
limitados:x:1002:ljdigital,estudio
ljdigital:x:1001:
permitidos:x:1003:estudio
estudio:x:1004:


Há alguma forma de compartilhar a pasta para ambos os grupos?

cat /etc/samba/smb.conf
[Imagens]
comment = Compartilhamento de teste
path = /dados/imagens
valid users = @limitados
force group = limitados
read only = No
veto files = /*.mp3/*.flv/*.mp4/*.avi/*.wma/*.wmv/*.{*}/

Só falta isso hein galera...


11. Re: Permissão de leitura + escrita sem permissão de deletar arquivos

renan vicente gomes da silva
renan1010

(usa Debian)

Enviado em 09/12/2011 - 20:11h

para poder adicionar dois grupos para uma pasta, você pode usar o aplicativo acl,
pra instalar
# apt-get install acl
da um vi no fstab para adicionar a palavra acl no seu fstab
adicionar acl apenas no /
nas outras deixa como esta
um exemplo do que vc tem que fazer:
no meu caso meu / e o sda1 então você tem que adicionar no sda1

# vi /etc/fstab

# /etc/fstab: filesystem table.
#
# filesystem mountpoint type options dump pass
/dev/sda1 / reiserfs noatime,acl,notail 0 1
/dev/sda2 none swap sw 0 0



apos fazer isso tem que remontar o /, basta usar o comando abaixo.

# mount / -o remount,acl

modo de utilizacao do setfacl:
#mkdir pasta1
# setfacl -m g:vendas:rwx pasta1/


vendas seria o nome do grupo a ser adicionado, depois era so usar o comando de novo para adicionar outro grupo.
para verificar as permissoes
# getfacl pasta1/
exemplo do resultado
# file: pasta1
# owner: root
# group: root
user::rwx
user:root:rwx
group::rwx
group:edita:rwx
mask::rwx
other::r-x

para entender mais sobre permissões usando acl remondo a leitura
www.hardware.com.br/dicas/acl-linux.html


12. Re: Permissão de leitura + escrita sem permissão de deletar arquivos

Sergio Souza
sergin1rn

(usa Ubuntu)

Enviado em 12/12/2011 - 10:15h

Salvei o link agora... Daqui há pouco vou testar...
Muito obrigado Renan, quando terminar aqui eu comento se deu certo, mas pelo que eu li por cima vai dar certo sim...

Valeu, muito obrigado!



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts