Autor Tópico: Problemas com permissão de pastas no samba  (Lida 10030 vezes)

Offline moizheys

  • Usuário Ubuntu
  • *
  • Mensagens: 5
    • Ver perfil
Problemas com permissão de pastas no samba
« Online: 20 de Janeiro de 2011, 14:49 »
Olá pessoal, estou montando um servidor de arquivos e estou tendo problemas para controlar as permissões das pastas.
A situação no momento é a seguinte: O samba está instalado e funcionando.Eu compartilhei uma pasta principal " /servlab " dentro da qual criarei várias outras subpastas,às quais darei permissão total  ao dono e permissão de leitura e gravação aos demais usuários  do grupo. Pra testar criei dois usuários " zeys" e " aluno " , os dois já fazem parte dos mesmos grupos. Criei uma subpasta e dei as permissões de acordo com o código abaixo:

mkdir /servlab/teste
chown -R zeys /servlab/teste
chmod 766 /servlab/teste

Bom meu problema é o seguinte.Com o usuário dono (zeys) , tudo ok , através de uma máquina cliente, consigo acessar e manipular as pastas sem problemas. Mas com o usuário " aluno " que deveria ter acesso de leitura e gravação não funciona legal, no inicio nem acessava as subpastas, dava erro de permissão , aí criei uma nova e restartei o samba aí acessei e consegui ler um conteúdo que se encontrava na subpasta mas não consegui gravar um novo conteúdo.
Se alguém souber onde pode estar o problema , fico no aguardo.

Offline zekkerj

  • Usuário Ubuntu
  • *
  • Mensagens: 19.736
  • Gratidão gera gratidão, lamúria atrai lamúria...
    • Ver perfil
    • Blog do Zekke
Re: Problemas com permissão de pastas no samba
« Resposta #1 Online: 21 de Janeiro de 2011, 14:44 »
Pasta sem permissão de execução? Ih... com a permissão de leitura, vc pode ver o conteúdo dela, mas sem permissão de execução, vc não pode pesquisar nela --- fica praticamente inútil.

Se é pra ter acesso público, use permissão "777".
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Offline moizheys

  • Usuário Ubuntu
  • *
  • Mensagens: 5
    • Ver perfil
Re: Problemas com permissão de pastas no samba
« Resposta #2 Online: 25 de Janeiro de 2011, 18:32 »
Então, só que neste caso o usuário 'aluno' vai poder fazer o que quiser dentro da pasta inclusive excluir os arquivos.
A idéia é a seguinte: imagine uma pasta pra uma instituiçaõ de ensino ,pra salvar trabalhos e provas. O usuário 'aluno' (serão vários usuários , vários alunos) vai fazer seus trabalhos e provas e salvar nesta pasta, quando ele quiser editar um trabalho ele vai la copia pro seu computador edita e depois salva novamente , no entanto não pode ter permissão pra apagar arquivos porque senão algum sacaneador pode ir la e apagar arquivos dos colegas. Já usuário professor pode ter acesso total, para corrigir os trabalhos e provas assim como apagar quando for necessário fazer uma limpeza no diretório.

Offline zekkerj

  • Usuário Ubuntu
  • *
  • Mensagens: 19.736
  • Gratidão gera gratidão, lamúria atrai lamúria...
    • Ver perfil
    • Blog do Zekke
Re: Problemas com permissão de pastas no samba
« Resposta #3 Online: 25 de Janeiro de 2011, 19:21 »
Citar
Então, só que neste caso o usuário 'aluno' vai poder fazer o que quiser dentro da pasta inclusive excluir os arquivos.
Só se ele tiver permissão de escrita na pasta.

Citar
O usuário 'aluno' (serão vários usuários , vários alunos) vai fazer seus trabalhos e provas e salvar nesta pasta
Infelizmente a permissão pra criar arquivos implica na permissão pra apagá-los. O que dá pra fazer, pra diminuir o estrago, é ativar o "sticky bit" na pasta, assim o usuário só pode apagar os próprios arquivos.

Citar
no entanto não pode ter permissão pra apagar arquivos porque senão algum sacaneador pode ir la e apagar arquivos dos colegas.
Como eu disse, o "sticky bit" resolve isso.

chmod +t /caminho/da/pasta

Outra coisa que ajuda nesse caso é tirar a permissão de leitura; o usuário vai poder gravar dentro da pasta, vai poder pegar arquivos lá dentro (desde que saiba o nome deles), mas não vai poder ver o conteúdo dela.

chmod ug=rwx,o=wx,+t /caminho/da/pasta

ou

chmod 1773 /caminho/da/pasta

Faça a pasta pertencer ao grupo dos professores:

chgrp professores /caminho/da/pasta

na hora de compartilhar, vc vai usá-la assim:

[Trabalhos]
    comment = Pasta para entrega de trabalhos
    path = /caminho/da/pasta
    valid users = aluno, +alunos, +professores

Vc pode também criar sub-pastas em "/caminho/da/pasta", para cada disciplina. Nesse caso, a pasta "top-level" ficaria R/O, e as tais permissões especiais ficariam nessas sub-pastas:

mkdir /caminho/da/pasta/Portugues-101
mkdir /caminho/da/pasta/Portugues-201
mkdir /caminho/da/pasta/Matematica-102

chmod 755 /caminho/da/pasta
chmod 1773 /caminho/da/pasta/Portugues-101
chmod 1773 /caminho/da/pasta/Portugues-102
chmod 1773 /caminho/da/pasta/Matematica-201

E assim por diante.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Offline moizheys

  • Usuário Ubuntu
  • *
  • Mensagens: 5
    • Ver perfil
Re: Problemas com permissão de pastas no samba
« Resposta #4 Online: 26 de Janeiro de 2011, 17:57 »
Então, ZekKerj , fiz o teste em uma pasta que eu ja estava usando para testes anteriores e a principio funcionou, exatamente como eu queria , o aluno esta acessando a pasta, inclusive lendo os arquivos , gravando dentro da pasta e não está conseguindo excluir. Como implementei todas as sugestões que você me passou não sei ainda qual resolveu, mas vou analisar com calma porque preciso estar bem de apar destas tarefas, porque vai ser uma coisa rotineiro no servidor de arquivos.
A respeito das subpastas , é exatamente isto que eu preciso, vou criar várias subpastas, não por disciplina mas uma pra cada professor.
A respeito do comando "sticky bit" , até achei interessante , pretendo usar em outras situações mas nesta não resolve meu problema, porque como disse , várias pessoas ( todos os alunos) vão usar o mesmo login, então uma pessoa pode criar um documento e outra pode excluir como se fosse ela que tivesse criado, pois obviamente as duas usaram o mesmo login.
Só aproveitando a sua boa vontade pra tirar mais uma dúvida.
Não terei problema em várias estações estarem acessando ao mesmo tempo com o mesmo login né?
Ao final de alguns testes que pretendo fazer postarei mais alguma observação ou resultado.
Por enquanto , muito obrigado

Offline zekkerj

  • Usuário Ubuntu
  • *
  • Mensagens: 19.736
  • Gratidão gera gratidão, lamúria atrai lamúria...
    • Ver perfil
    • Blog do Zekke
Re: Problemas com permissão de pastas no samba
« Resposta #5 Online: 26 de Janeiro de 2011, 23:14 »
Citar
Como implementei todas as sugestões que você me passou não sei ainda qual resolveu
Foram todas, elas se completam.

Citar
A respeito do comando "sticky bit" , até achei interessante , pretendo usar em outras situações mas nesta não resolve meu problema, porque como disse , várias pessoas ( todos os alunos) vão usar o mesmo login, então uma pessoa pode criar um documento e outra pode excluir como se fosse ela que tivesse criado, pois obviamente as duas usaram o mesmo login.
Só posso te sugerir pra não fazer isso. Ao invés, crie uma conta pra cada aluno.

Até pq aluno é o pior tipo de usuário que existe. Mexem, fuçam, alteram, fazem derma a torto e a direito. Se vc tiver só uma conta pra todos, não tem como rastrear quem fizer caca no seu servidor.
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Offline moizheys

  • Usuário Ubuntu
  • *
  • Mensagens: 5
    • Ver perfil
Re: Problemas com permissão de pastas no samba
« Resposta #6 Online: 28 de Janeiro de 2011, 15:17 »
Pois é , criar um usuário pra cada aluno seria inviável, são aprox. 3000 alunos que usam o Servlab.
Mas não tem um jeito mesmo de separar as opções de gravação e exclusão?
Preciso separar isto para que eu consiga usar o Linux como servidor de arquivos, gostaria muito de testa-lo principalmente por questões de segurança.

Offline zekkerj

  • Usuário Ubuntu
  • *
  • Mensagens: 19.736
  • Gratidão gera gratidão, lamúria atrai lamúria...
    • Ver perfil
    • Blog do Zekke
Re: Problemas com permissão de pastas no samba
« Resposta #7 Online: 28 de Janeiro de 2011, 15:56 »
Citar
Mas não tem um jeito mesmo de separar as opções de gravação e exclusão?
Não que eu saiba. Quem pode criar, pode apagar.

Na melhor das hipóteses, pelo fato do usuário não poder ver a listagem do diretório, vai impedir que ele saiba quais são os arquivos dos outros pra apagar intencionalmente, mas não vai impedir que eles apaguem ou sobrescrevam por acidente.

Pq vc não implementa isso via aplicativo web?
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D

Offline moizheys

  • Usuário Ubuntu
  • *
  • Mensagens: 5
    • Ver perfil
Re: Problemas com permissão de pastas no samba
« Resposta #8 Online: 01 de Fevereiro de 2011, 18:47 »
Pq vc não implementa isso via aplicativo web?
Como assim?
De um exemplo por favor!

Offline zekkerj

  • Usuário Ubuntu
  • *
  • Mensagens: 19.736
  • Gratidão gera gratidão, lamúria atrai lamúria...
    • Ver perfil
    • Blog do Zekke
Re: Problemas com permissão de pastas no samba
« Resposta #9 Online: 01 de Fevereiro de 2011, 19:07 »
Pq vc não implementa isso via aplicativo web?
Como assim?
De um exemplo por favor!
Ué, uma página web [formulário] onde o aluno informa seu nome (ou matrícula), possivelmente uma senha de acesso, o curso, e o arquivo que vai entregar.

A página carrega o arquivo e o salva em um diretório predefinido. Pronto! Sem necessidade de usar o Samba, com todos os problemas que ele pode ter (dificuldade de localização do servidor, necessidade de cadastrar os usuários um a um, possibilidade de um aluno apagar o próprio trabalho ou o de outros).

Como seria muito simples, isso pode ser feito bem rápido, com PHP, ou qualquer outra linguagem RAD.
« Última modificação: 01 de Fevereiro de 2011, 19:09 por zekkerj »
Pesquise antes de perguntar, sua dúvida pode já ter sido respondida.
Não respondo dúvidas por MP, coloque sua dúvida no fórum onde ela pode ser pesquisada pelos seus colegas!
Não venha ao fórum apenas para perguntar. Se você sabe a resposta de um problema, porque não ajudar seu colega? ;D