Usuários x Diretórios

1. Usuários x Diretórios

Luiz Felipe Dresch
lipeeh

(usa Debian)

Enviado em 31/03/2012 - 12:12h

Bom dia pessoal!

Galera, to com um probleminha aqui. Tenho um servidor rodando Debian aqui, e além do bando de dados em Firebird, rodo também um servidor de arquivos nele, em modo share, onde o servidor está mapeado em todos os terminais windos, como a empresa tem próximo de 30 funcionários, preciso mudar o modo de compartilhamento share, para "user", porem, preciso limitar o acesso de cada usuário a determinados diretórios, por exemplo:

o usuário responsável pelo RH, teria acesso somente ao seu diretório chamado RH, e ao diretório PESSOAL,
o usuário DIRETOR, teria acesso a todos os diretórios do samba,
o usuário FINANCEIRO, aos diretórios FINANCERIO, e CONVENIOS,

e assim por diante para os demais usuários.

Oque eu não sei como fazer, é dar as devidas permissões e criar os usuários e defini-los no samba, para que quando tal usuario logar, apareça somente aqueles diretórios pra ele.

Alguem pode me ajudar por favor?

Desde já agradeço a atenção dispensada.


  


2. Re: Usuários x Diretórios

Perfil removido
removido

(usa Nenhuma)

Enviado em 31/03/2012 - 17:31h

lipeeh escreveu:

Bom dia pessoal!

Galera, to com um probleminha aqui. Tenho um servidor rodando Debian aqui, e além do bando de dados em Firebird, rodo também um servidor de arquivos nele, em modo share, onde o servidor está mapeado em todos os terminais windos, como a empresa tem próximo de 30 funcionários, preciso mudar o modo de compartilhamento share, para "user", porem, preciso limitar o acesso de cada usuário a determinados diretórios, por exemplo:

o usuário responsável pelo RH, teria acesso somente ao seu diretório chamado RH, e ao diretório PESSOAL,
o usuário DIRETOR, teria acesso a todos os diretórios do samba,
o usuário FINANCEIRO, aos diretórios FINANCERIO, e CONVENIOS,

e assim por diante para os demais usuários.

Oque eu não sei como fazer, é dar as devidas permissões e criar os usuários e defini-los no samba, para que quando tal usuario logar, apareça somente aqueles diretórios pra ele.

Alguem pode me ajudar por favor?

Desde já agradeço a atenção dispensada.


Vamos a uma suposição:

Partições:

/
/home
/ServidorArquivos
/Backup

Grupos e subgrupos:
DFinanceira: Tesouraria, Financeiro
DComercial: Faturamento, Auditoria de Contas
DAdimistrativo: Departamento Pessoal, Assessoria de Recursos Humanos, Almoxarifado, Patrimônio
DSuperintendência: Superintendência

Adicione os grupos e subgrupos: dfin, dcom, dadm, dsup, tes, fin, fat, aud, dep, arh, alm, pat, sup

Ex:
# addgroup dfin

Estrutura de Diretórios:

-ServidorArquivos
---DFinaceiro
------Tesouraria_raiz
------Financeiro_raiz
---DComercial
------Faturamento_raiz
------AuditoriadeContas_raiz
---DAdimistrativo
------DepartamentoPessoal_raiz
------AssessoriadeRecurssoHumanos_raiz
------Almoxarifado_raiz
------Patrimonio_raiz
---DSuperintendencia
------Superintendencia_raiz

Permissões:

# cd /ServidorArquivos/DFinaceiro

# chown root.tes Tesouraria_raiz
# chmod 770 Tesouraria_raiz
# chown root.fin Financeiro_raiz
# chmod 770 Financeiro_raiz

# cd /ServidorArquivos/DComercial

# chown root.fat Faturamento_raiz
# chmod 770 Faturamento_raiz
# chown root.aud AuditoriadeContas_raiz
# chmod 770 AuditoriadeContas_raiz

# cd /ServidorArquivos/DAdimistrativo

# chown root.dep DepartamentoPessoal_raiz
# chmod 770 DepartamentoPessoal_raiz
# chown root.ARH AssessoriadeRecurssoHumanos_raiz
# chmod 770 AssessoriadeRecurssoHumanos_raiz

Criando usuários:

Ex1:
# useradd -c "Fulano de tal Assessor de ARH" -d /home/fulanodetal -g arh -G dadm -m fulanodetal
# smbpasswd -a fulanodetal

Ex2:#
# useradd -c "Diretor Superintendente" -d /home/fulanodetal2 -g sup -G dsup -m fulanodetal2
# smbpasswd -a fulanodetal2

Ex3:
# useradd -c "Fulano de tal Assessor de ADP" -d /home/fulanodetal3 -g adp -G dadm -m fulanodetal3
# smbpasswd -a fulanodetal3

Criando Links Simbólicos:

Ex1:
# cd /home/fulanodetal
# ln -s /ServidorArquivos/DAdimistrativo/AssessoriadeRecurssoHumanos_raiz "Documentos no servidor ARH"

Ex2:
# cd /home/fulanodeta2
# ln -s /ServidorArquivos/DSuperintendencia/Superintendencia_raiz "Documentos no servidor Superintendencia"

Ex3:
# cd /home/fulanodeta3
# ln -s /ServidorArquivos/DAdimistrativo/DepartamentoPessoal_raiz "Documentos no servidor ADP"

Ex4:
O usuário do ARH precisa de acessar o ARH e ADP
# cd /home/fulanodetal
# ln -s /ServidorArquivos/DAdimistrativo/AssessoriadeRecurssoHumanos_raiz "Documentos no servidor ARH"
# ln -s /ServidorArquivos/DAdimistrativo/DepartamentoPessoal_raiz "Documentos no servidor ADP"

OBS: Caso um usuário precise ter acesso a todos os grupos, basta adiciona-lo aos mesmos.

# vigr


Pronto!

Quando o usuário se autenticar cairá em seu home e enxergará uma pasta com o nome: Documentos no servidor blabla, que é um link do diretório real.

smb.conf exemplo
# --- Parametros Globais
[global]

# --- Dominio, Nome e Descricao
workgroup = ServerArquivos
netbios name = Server
server string = SERVIDOR DE ARQUIVOS

# --- Disponibilizar impressoras
# printcap name = /etc/printcap
load printers = no

# --- Nao mostrar no servidor o Wizard "Adicionar Impressora"
show add printer wizard = no

# --- Nivel de Mensagens
log level = 2
log file = /var/log/samba/%m.log
max log size = 50
lock directory = /var/run/samba

# --- Quais interfaces de rede utilizar

bind interfaces only = Yes
hosts deny = ALL
hosts allow = 192.168.1.0/24
interfaces = lo, eth0

# --- Atuar como um PDC
security = user
domain logons = yes
preferred master = yes
domain master = yes
os level = 45

# --- Tratamento de senhas
encrypt passwords = true

# --- Arquivo de senhas dos usuurios samba
smb passwd file = /etc/samba/smbpasswd

# --- Como o cliente ira se comunicar como o servidor
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

# --- Otimizacoes do servidor:
smb ports = 445 139
time server = yes

# --- Tratar os arquivos que comecam com "." como ocultos para maquinas Windows
hide dot files = yes

# --- Ativar a internacionalizacao: permitir caracteres acentuados pelo windows
dos charset = CP850
unix charset = ISO8859-1
display charset = ISO8859-1

# --- Forcar a criacao dos arquivos e diretorios com estas permissoes
create mask = 0660
directory mask = 0770

# --- Bloqueando extensoes no servidor
veto files = /*.bat/*.exe/*.avi/*.mov/*.mp3/*.mpeg/*.mpg/*.msi/*.wav/*.wma/*.wmv/*.inf/*.flv/*.rmv/*.rmvb/*.vcd/*.divx/*.bin/*.pif/*.dll/*.lnk/

# --- Lixeira do samba
vfs object = recycle
recycle:exclude = *.tmp *.temp ~$*
recycle:keeptree = true
recycle:touch = true
recycle:versions = true
recycle:noversions = .doc|.sxw|.odt|.docx|.pptx|.xlsx|.xls|.sxc|.ods|.ppt|.sxi|.odp|.pdf|.php|.csp|.html|.css|.js|.txt
recycle:repository = lixeira
recycle:maxsize = 100000
#====================================================================================
#============================ Compartilhamentos =====================================
#====================================================================================

[homes]
comment = Diretorio Pessoal
browseable = no
writable = yes

[ServidorArquivos]
comment = Diretorio RAIZ
path = /ServidorArquivos
public = yes
writable = yes


Bem vindo ao fórum
Espero ter ajudado!

Abraço!



3. Re: Usuários x Diretórios

William Fonseca Salvador
william-fonseca

(usa Debian)

Enviado em 31/03/2012 - 22:11h

Uma outra alternativa pode ser da seguinte maneira:
crie usuarios no sistema e depois adicione no samba pelo smbpasswd, depois no smb.conf
adicione a regra valid users em cada pasta compartilhada esta regra vai definir quem pode ter acesso a pasta. Um exempo:


[Atendimento]
valid users = atendimento,chefe

[RH]
valid users = Rh,chefe



[]'s


4. Re: Usuários x Diretórios

Luiz Felipe Dresch
lipeeh

(usa Debian)

Enviado em 03/04/2012 - 09:54h

Pessoal, nao posso dar permissao 777 na raiz dos diretorios de compartilhamento, e colocar os link's simbólicos das pastas para cada usuário? tentei fazer isso aqui, mas nao consigo acessar, dá erro de permissao...

oque será q eu to fazendo errado ?


5. Re: Usuários x Diretórios

Perfil removido
removido

(usa Nenhuma)

Enviado em 03/04/2012 - 11:40h

nabucodonosor:/ServidoArquivos# ls -ld
drwxr-xr-x 12 root root 4096 2011-04-13 14:19 .
nabucodonosor:/ServidoArquivos# ls -lh
total 44K
drwxrwx--- 11 root dadm 4,0K 2010-02-01 16:01 DAdministrativa
drwxrwx--- 9 root dcom 4,0K 2009-03-27 11:30 DComercial
drwxrwx--- 5 root dfin 4,0K 2010-08-30 17:54 DFinanceira
drwxrwx--- 15 root dsup 4,0K 2011-12-20 16:15 DSuperintendencia



6. Re: Usuários x Diretórios

Luiz Felipe Dresch
lipeeh

(usa Debian)

Enviado em 03/04/2012 - 13:36h

amarildosertorio escreveu:

nabucodonosor:/ServidoArquivos# ls -ld
drwxr-xr-x 12 root root 4096 2011-04-13 14:19 .
nabucodonosor:/ServidoArquivos# ls -lh
total 44K
drwxrwx--- 11 root dadm 4,0K 2010-02-01 16:01 DAdministrativa
drwxrwx--- 9 root dcom 4,0K 2009-03-27 11:30 DComercial
drwxrwx--- 5 root dfin 4,0K 2010-08-30 17:54 DFinanceira
drwxrwx--- 15 root dsup 4,0K 2011-12-20 16:15 DSuperintendencia



Cara, eu verifiquei as permissões, nesse link abaixo tem um print, da VM do linux, exibindo as permissoes, e do windows logado com usuario samba nao podendo acessar o diretorio....

http://www.vegacs.com.br/permissao.gif
Nem o outro usuario consegue abrir os links simbólicos.

No smb.conf, tenho configurado as pastas de destino dos link's simbólicos.


7. Re: Usuários x Diretórios

William Fonseca Salvador
william-fonseca

(usa Debian)

Enviado em 03/04/2012 - 14:06h

poste o smb.conf


8. Re: Usuários x Diretórios

Luiz Felipe Dresch
lipeeh

(usa Debian)

Enviado em 03/04/2012 - 23:45h

william-fonseca escreveu:

poste o smb.conf



o .conf tah assim cara:


#www.vivaolinux.com

# --- Parametros Globais
[global]

# --- Dominio, Nome e Descricao
workgroup = WORKGROUP
netbios name = Server
server string = SERVIDOR DE ARQUIVOS

# --- Disponibilizar impressoras
# printcap name = /etc/printcap
load printers = no

# --- Nao mostrar no servidor o Wizard "Adicionar Impressora"
show add printer wizard = no

# --- Nivel de Mensagens
log level = 2
log file = /var/log/samba/%m.log
max log size = 50
lock directory = /var/run/samba

# --- Quais interfaces de rede utilizar

bind interfaces only = Yes
hosts deny = ALL
hosts allow = 192.168.0.0/256
interfaces = lo, eth0

# --- Atuar como um PDC
security = user
domain logons = yes
preferred master = yes
domain master = yes
os level = 45

# --- Tratamento de senhas
encrypt passwords = true

# --- Arquivo de senhas dos usuurios samba
smb passwd file = /etc/samba/smbpasswd

# --- Como o cliente ira se comunicar como o servidor
# socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192

# --- Otimizacoes do servidor:
smb ports = 445 139
time server = yes

# --- Tratar os arquivos que comecam com "." como ocultos para maquinas Windows
hide dot files = yes

# --- Ativar a internacionalizacao: permitir caracteres acentuados pelo windows
dos charset = CP850
unix charset = ISO8859-1
display charset = ISO8859-1

# --- Forcar a criacao dos arquivos e diretorios com estas permissoes
create mask = 0777
directory mask = 0777

# --- Bloqueando extensoes no servidor
veto files = /*.bat/*.exe/*.avi/*.mov/*.mp3/*.mpeg/*.mpg/*.msi/*.wav/*.wma/*.wmv/*.inf/*.flv/*.rmv/*.rmvb/*.vcd/*.divx/*.bin/*.pif/*.dll/*.lnk/

# --- Lixeira do samba
vfs object = recycle
recycle:exclude = *.tmp *.temp ~$*
recycle:keeptree = true
recycle:touch = true
recycle:versions = true
recycle:noversions = .doc|.sxw|.odt|.docx|.pptx|.xlsx|.xls|.sxc|.ods|.ppt|.sxi|.odp|.pdf|.php|.csp|.html|.css|.js|.txt
recycle:repository = lixeira
recycle:maxsize = 100000

#====================================================================================
#============================ Compartilhamentos =====================================
#====================================================================================

[homes]
comment = Diretorio Pessoal
browseable = no
writable = yes

[Arquivos]
comment = Diretorio RAIZ
path = /home/arquivos
public = yes
writable = yes
create mask = 0777
directory mask = 0777
browseable = no

[Programas]
comment = PROGRAMAS
path = /home/programas
public = yes
read only = no
create mask = 0777
directory mask = 0777
browseable = no



9. Re: Usuários x Diretórios

William Fonseca Salvador
william-fonseca

(usa Debian)

Enviado em 04/04/2012 - 08:54h

@lipeeh
ja tentou por a opcao browseable = no para yes?


10. Re: Usuários x Diretórios

Luiz Felipe Dresch
lipeeh

(usa Debian)

Enviado em 04/04/2012 - 10:10h

william-fonseca escreveu:

@lipeeh
ja tentou por a opcao browseable = no para yes?



Já tentei cara... dah na mesma.. se eu tento acessar o diretorio compartilhado diretamente na url ou mapeio a unidade, funciona normal, mas se eu criar um link simbolico de algum dos compartilhamentos para dentro de uma pasta de usuario, o link simbolico nao abre, e dah o erro da imagem no endereço ali pra cima, dizendo q nao tem permissao, sendo q já dei todas as permissoes para o link simbolico.







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts