Fórum Ubuntu Linux - PT

Suporte Técnico => Internet, Redes e Segurança => Tópico iniciado por: zero00 em 15 de Janeiro de 2016, 03:21

Título: Samba em rede doméstica - Já tentei de tudo, cansei. - Resolvido!
Enviado por: zero00 em 15 de Janeiro de 2016, 03:21
Pessoal,
Mais uma vez estou aqui para solicitar ajuda na resolução de um problema aparentemente simples, mas que já segui diversos tutoriais, li vários artigos, e não consegui fazer com que minhas pastas compartilhadas pelo Samba no Ubuntu ficassem acessíveis para uma máquina rodando XP aqui em minha casa. Ambas estão conectadas ao mesmo roteador.

O que ocorre é que tentando acessar os compartilhamentos do próprio pc os mesmos são exibidos. Tento abri-los e é exigido usuário e senha, porém após digitá-los as pastas não são abertas e aparece novamente a janela pedindo usuário e senha.

No Windows XP, ao tentar acessar, primeiramente pede usuário e senha. Ao serem digitados as pastas são exibidas, porém ao tentar abri-las surge a mensagem:

\\10.10.0.133\backup não está acessível. Talvez você não tenha permissão para usar este recurso de rede.
Contate o administrador deste servidor para saber se você tem permissões de acesso.
Acesso negado.


No Ubuntu acesso normalmente os compartilhamentos disponíveis no XP.

A versão do Ubuntu é a 15.10 e a do Samba é "Version 4.1.17-Ubuntu".

O procedimento que realizei, após a instalação do Samba, para efetuar os compartilhamentos foi:

Adicionei o usuário "usersamba2" ao sistema:
Código: [Selecionar]
# adduser --disabled-login --no-create-home usersamba2

Adicionei o usuário "usersamba2" ao Samba:
Código: [Selecionar]
# smbpasswd -a usersamba2

Adicionei um grupo para o usuário:
Código: [Selecionar]
# groupadd share2

Adicionei o usuário ao grupo criado:
Código: [Selecionar]
# adduser usersamba2 share2

Dei permissões de acesso às pastas a serem compartilhadas:
Código: [Selecionar]
# chgrp -R share2 /media/alex/backup
# chgrp -R share2 /media/alex/principal
# chgrp -R share2 /media/alex/windows

Código: [Selecionar]
# chmod -R 775 /media/alex/backup
# chmod -R 775 /media/alex/principal
# chmod -R 775 /media/alex/windows


O comando ls -l dentro do diretório /media/alex exibe:

total 24
drwxrwxrwx 1 root root  4096 Jan  6 22:10 backup
drwxrwxrwx 1 root root  8192 Dez 23 06:00 principal
drwxrwxrwx 1 root root 12288 Dez 23 22:58 windows



Abaixo, segue os dados do arquivo smb.conf:

[global]
netbios name = Alex
server string = Compartilhamentos
workgroup = MSHOME
local master = yes
os level = 100
preferred master = yes
wins support = yes

security = user
encrypt passwords = yes
;map to guest = bad user
guest account = usersamba2

printing = cups
load printers = yes

# Impressoras
[printers]
comment = Todas Impressoras
browseable = yes
path = /var/spool/samba
print ok = yes
read only = yes
create mask = 0700
guest ok = no
available = yes

# Drivers impressoras
[print$]
comment = Drivers impressoras
path = /var/lib/samba/printers
browseable = yes
read only = yes
guest ok = no
available = yes

[backup]
path = /media/alex/backup
writable = yes
guest ok = no
available = yes
browsable = yes
public = yes

[principal]
path = /media/alex/principal
writable = yes
guest ok = no
available = yes
browsable = yes
public = yes

[windows]
path = /media/alex/windows
writable = yes
guest ok = no
available = yes
browsable = yes
public = yes
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: galactus em 15 de Janeiro de 2016, 11:06
Olá!

No seu smb.conf, está assim:

Citar
encrypt passwords = yes
;map to guest = bad user

Não seria assim?

encrypt passwords = true
map to guest = bad user
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zekkerj em 15 de Janeiro de 2016, 15:25
Olá zero,
Chama a minha atenção que mesmo após vc fazer um "chgrp -R share2 /media/alex/backup", ele ainda aparece pertencendo a root:root.

Por acaso /media/alex é um pendrive ou drive externo? Se for, e não estiver formatado em um formato nativo, pode ser essa a origem do problema...
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zero00 em 15 de Janeiro de 2016, 15:46
Caro galactus,

Pelo que li nos artigos sobre Samba, como no site do Morimoto, se eu descomentar a linha ;map to guest = bad user, isso permitirá que ao ser digitado um usuário inválido automaticamente será redirecionado para o usuário padrão, configurado em guest account = usersamba2; de forma que todos que não entrarem com o usuário correto cadastrado para acesso terão acesso aos compartilhamentos como se estivessem conectando com o usuário usersamba2.



Caro zekkerj,

Os diretórios /media/alex/backup, /media/alex/principal e /media/alex/windows são partições do meu hd (só possuo um hd), no qual está instalado o Ubuntu e o Windows 7. As três estão formatadas com o sistema de arquivos NTFS.

São carregadas automaticamente pelo fstab, conforme abaixo:

#hd backup
/dev/sda4 /media/alex/backup ntfs-3g -t

#hd principal
/dev/sda5  /media/alex/principal ntfs-3g -t

#hd c: windows
/dev/sda2 /media/alex/windows ntfs-3g -t


Obrigado senhores!
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zero00 em 15 de Janeiro de 2016, 16:10
Galactus,

Ao fazer as mudanças que você sugeriu

encrypt passwords = true
map to guest = bad user



No XP permanece a mesma mensagem de acesso negado, e no Ubuntu aparece:

Não foi possível acessar o local
Falha ao montar o compartilhamento Windows: Permissão negada
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zekkerj em 16 de Janeiro de 2016, 00:25
(...)Caro zekkerj,

Os diretórios /media/alex/backup, /media/alex/principal e /media/alex/windows são partições do meu hd (só possuo um hd), no qual está instalado o Ubuntu e o Windows 7. As três estão formatadas com o sistema de arquivos NTFS.

São carregadas automaticamente pelo fstab, conforme abaixo:

#hd backup
/dev/sda4 /media/alex/backup ntfs-3g -t

#hd principal
/dev/sda5  /media/alex/principal ntfs-3g -t

#hd c: windows
/dev/sda2 /media/alex/windows ntfs-3g -t


Obrigado senhores!


Então, definitivamente, está explicado o problema. Você está montando esses diretórios errado, apenas o root terá acesso a eles.

Você precisa adicionar a opção "umask=000" à linha do fstab para que algum outro usuário além do root possa fazer essa  montagem. E esqueça qualquer comando "chmod", "chown" ou "chgrp" nesses diretórios, pois eles simplesmente não vão funcionar --- isso só funciona em sistemas de arquivos nativos (ext3/4, reiser, xfs, etc.)
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zero00 em 16 de Janeiro de 2016, 03:25
zekkerj,

Acrescentei a linha umask=000, mas ainda assim não consigo acessar os compartilhamentos.

Acho que ainda há algo errado no fstab, pois o compartilhamento [print$] está abrindo normalmente.

Alterei o diretório da partição pela UID para ver se funcionava, mas também não deu certo.


O comando blkid retorna:

/dev/sda1: LABEL="Reservado pelo Sistema" UUID="E21CBD961CBD6667" TYPE="ntfs" PARTUUID="8977a38c-01"
/dev/sda2: UUID="10BA0BB8BA0B98FC" TYPE="ntfs" PARTUUID="8977a38c-02"
/dev/sda4: LABEL="Backup" UUID="E47E0F867E0F512A" TYPE="ntfs" PARTUUID="8977a38c-04"
/dev/sda5: UUID="1A2A324D2A3225E3" TYPE="ntfs" PARTUUID="8977a38c-05"
/dev/sda6: UUID="2ca01a68-2b45-4c4a-b506-c2558cb224d2" TYPE="swap" PARTUUID="8977a38c-06"
/dev/sda7: UUID="21e08a63-aeff-4ab7-9b8b-93c8bbb8ec07" TYPE="ext4" PARTUUID="8977a38c-07"



E atualmente o fstab está assim:

# <file system> <mount point>   <type>  <options>       <dump>  <pass>

# / was on /dev/sda7 during installation
UUID=21e08a63-aeff-4ab7-9b8b-93c8bbb8ec07 /               ext4    errors=remount-ro 0       1

# swap was on /dev/sda6 during installation
UUID=2ca01a68-2b45-4c4a-b506-c2558cb224d2 none            swap    sw              0       0

# hd backup /dev/sda4
UUID=E47E0F867E0F512A /media/alex/backup ntfs-3g umask=000

# hd principal /dev/sda5
UUID=1A2A324D2A3225E3 /media/alex/principal ntfs-3g umask=000

# hd c: windows /dev/sda2
UUID=10BA0BB8BA0B98FC /media/alex/windows ntfs-3g umask=000
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zekkerj em 16 de Janeiro de 2016, 07:41
Você lembrou de remontar a partição, pra ativar as novas opções? Só mudar as opções não basta, tem que ativá-las remontando.

Quando remontar, tente acessar essas pastas no próprio linux com esse usuário que foi cadastrado para o samba.

sudo -u usersamba2 ls /media/alex/backup
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zero00 em 16 de Janeiro de 2016, 11:51
Após alterar o fstab, desmontei e remontei as partições com o comando mount -a.
Não tendo funcionado, reiniciei o pc para tirar qualquer dúvida.

O comando sudo -u usersamba2 ls /media/alex/backup (executado com a partição já remontada) retorna:

ls: não é possível acessar /media/alex/backup: Permissão negada

Mesma mensagem retornada para qualquer uma das partições.


Será que resolveria incluir o usersamba2 em algum outro grupo? O comando groups usersamba2, retorna:

usersamba2 : usersamba2 share2


Em /etc/passwd o usersamba2 é listado assim:

usersamba2:x:1001:1001:Usuario Samba,,,:/home/usersamba2:/bin/bash


Em /etc/groups está assim:

usersamba2:x:1001:
share2:x:1002:usersamba2
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zekkerj em 16 de Janeiro de 2016, 12:05
Não, tem que acertar as opções de montagem.
Mas acabo de lembrar... independente das opções de montagem, "usersamba2" tem que ter, no mínimo, acesso de execução em "/media" e "/media/alex". Tem? Sem isso, você não consegue acessar qualquer pasta dentro desse caminho.

O comando "namei -om /media/alex/backup" vai mostrar todas as permissões no caminho.
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zero00 em 16 de Janeiro de 2016, 14:52
Ainda não compreendo muito como funciona as permissões nem como ajustá-las adequadamente...

Esse é o resultado do comando namei -om /media/alex/backup

f: /media/alex/backup
 drwxr-xr-x root root /
 drwxr-xr-x root root media
 drwxr-x--- root root alex
 drwxrwxrwx root root backup


Como devo proceder?
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zekkerj em 16 de Janeiro de 2016, 17:03
Viu que o sub-diretório "alex" não tem permissões públicas? Um "chmod a+rx /media/alex" deve fechar o problema.
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei.
Enviado por: zero00 em 16 de Janeiro de 2016, 19:52
zekkerj,

Valeu, entendi o erro! Apliquei a permissão pública e o problema foi resolvido, agora tenho acesso completo aos compartilhamentos.
Acho que preciso adquirir um livro avançado sobre Linux, pois os artigos disponíveis na internet não tratam desses pormenores.

Linux é mesmo um sistema desafiador. Por um lado isso é bom, especificamente pra quem gosta desta liberdade de configurar o sistema como bem deseja e quer entendê-lo em todos os seus mínimos detalhes (como, a princípio, é meu caso); mas por outro, especificamente se tratando de Ubuntu que é um sistema direcionado ao usuário final, então ainda possui algumas barreiras, como essa simples configuração que deveria ser efetuada automaticamente para o usuário que deseja fazer um simples compartilhamento.

Eu sempre imagino um profissional qualquer, que não está nem aí para qual sistema operacional usa, desde que tal lhe ofereça segurança, estabilidade e rode de forma satisfatória o seu programa de trabalho; como um médico, por exemplo, cujo objetivo seria usar somente um programa específico, como um sistema de cadastro dos dados clínicos dos pacientes; para esse profissional não é interessante entender desses detalhes, nem enfrentar essas dificuldades. Nesse ponto, penso que o Ubuntu precisa de algumas melhorias.

Valeu, obrigado por mais essa ajuda e mais esse ensinamento. Abraço!
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei. - Resolvido!
Enviado por: davidsonn em 18 de Janeiro de 2016, 08:34
...mas por outro, especificamente se tratando de Ubuntu que é um sistema direcionado ao usuário final, então ainda possui algumas barreiras, como essa simples configuração que deveria ser efetuada automaticamente para o usuário que deseja fazer um simples compartilhamento.

Apenas lembrando ao colega que o Ubuntu já possui uma opção p/ compartilhar qualquer pasta na rede pelo Samba apenas clicando com o botão direito sobre a pasta e abrindo a opção Compartilhar (ou Propriedades), só não sei lhe dizer se esse procedimento se aplica ao seu caso.
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei. - Resolvido!
Enviado por: zekkerj em 18 de Janeiro de 2016, 08:50
O problema aí foi o uso de uma pasta em "/media". O sistema cria essas pastas automaticamente pra cada usuário, e cria com privacidade, ou seja, sem acesso público.

Dá pra automatizar? Dá. Só tem que repensar todo o sistema, pq ele foi projetado pra não funcionar assim.
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei. - Resolvido!
Enviado por: zero00 em 18 de Janeiro de 2016, 11:48
Acho que grande parte, se não a maioria, de usuários Ubuntu são migrados do Windows, como eu.
Então, como usuário do Windows por muitos anos, creio que se fosse lá, esse tipo de dificuldade poderia ser evitado sem maiores alterações no sistema.

E isso poderia ser feito, por exemplo, com a exibição de uma mensagem similar a que se segue, ao tentar efetuar o compartilhamento:

"A pasta que você quer compartilhar não possui permissões públicas em /media/alex, altere as permissões para que o compartilhamento fique acessível".

Geralmente é assim que funciona no Windows e Isso já seria suficiente para o usuário saber qual o problema e buscar uma solução.
Acho que seria uma mudança simples para o Ubuntu.

Com a experiência que tenho, uma das coisas que percebo também é que a maioria dos softwares livres não fazem questão de oferecer certas facilidades ao usuário.

Um exemplo que cito é o sistema de abas/guias que foi implementado primeiramente pelo Firefox; mas essa facilidade ficou sem o conhecimento de muitos usuários simplesmente porque o Firefox não oferecia um "botão" ou um "indicador" qualquer que mostrasse ao usuário a opção de abrir uma nova aba. De forma que somente os usuários que conheciam a função sabiam que bastava dar um duplo clique ao lado da aba já aberta ou pressionar CTRL + T para se abrir uma nova aba.

Eu sempre me questionava sobre isso, "por que não colocaram um sinal indicador de nova aba aqui?".

Pois bem, quando a versão seguinte do IE foi lançada, "roubando" a ideia do Firefox, lá estava a opção de abrir uma nova guia, bem visível e acessível a um simples clique do mouse. Assim também foi com o Chrome e os demais navegadores.
E, se não me engano, foi a partir daí que o número de usuários do FF começou a cair em relação ao IE.
E a opção de abrir uma nova aba só apareceu posteriormente no FF, após o lançamento de uma quantidade considerável de atualizações.

São coisas simples de se fazer que eu realmente não compreendo o porque de não serem feitas.

É como se o desenvolvimento do sistema não passasse pelo teste de um usuário final; como se um MS Word não fosse testado por um escritor antes de ser lançado; como se um celular fosse desenvolvido por quem não faz ligações...

Difícil entender...
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei. - Resolvido!
Enviado por: zekkerj em 18 de Janeiro de 2016, 13:08
Quer saber pq não é feito? Pq as pessoas não participam do desenvolvimento.
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei. - Resolvido!
Enviado por: galactus em 18 de Janeiro de 2016, 17:13
Quer saber pq não é feito? Pq as pessoas não participam do desenvolvimento.

"As pessoas não sabem o que querem, até mostrarmos a ela."

Quem poderia dizer isso e ser aclamado como gênio?

Dá uma boa ideia de como é feito o desenvolvimento dos produtos!
Título: Re:Samba em rede doméstica - Já tentei de tudo, cansei. - Resolvido!
Enviado por: zero00 em 18 de Janeiro de 2016, 18:53
Quer saber pq não é feito? Pq as pessoas não participam do desenvolvimento.

Sim, existe essa possibilidade, mas acho que não se trata disso. A quantidade de pessoas que participam no desenvolvimento de softwares livres é enorme, comparada aos softwares pagos.

No exemplo que citei, a comunidade que desenvolve o FF certamente é bem maior que os profissionais que trabalham no IE. A diferença talvez seja a remuneração. E isso é um fator crucial e que não deve ser ignorado.
O trabalho voluntário sempre está em desvantagem ao remunerado, afinal precisamos sobreviver.

Embora, admitamos, trabalhadores efetivos da Canonical, por exemplo, são remunerados e ainda contam com uma grande contribuição de voluntários.
Esse é o espírito da comunidade open source.

Os profissionais que trabalham no Linux também são em maior quantidade do que os que desenvolvem o Windows ou outros sistemas proprietários. Prova disso é a enorme quantidade de distribuições Linux que temos disponíveis.

Ainda ressalto que nem todos podem participar diretamente desse desenvolvimento, pois nem todos trabalham na área de informática.
Então alguns podem participar testando e avaliando o software, dando ideias que facilitem as coisas para o usuário, traduzindo para outros idiomas, indicando bugs... Tudo isso também é uma importante forma de contribuição.

Então, eu insisto que melhorias podem ser feitas. O Ubuntu já é um grande sistema, amplamente utilizado, e tem toda capacidade de desbancar o Windows; mas para isso precisa conquistar o usuário final. Infelizmente, isso implica em oferecer as facilidades (ou mais que isso) que o Windows oferece.