cifs, smb - Não é possível montar (permissão negada) ou navegar na pasta compartilhada

cifs, smb - Não é possível montar (permissão negada) ou navegar na pasta compartilhada

Recentemente me deparei com esse problema. Normalmente navego por uma pasta compartilhada de rede local a partir de uma máquina Linux via smb (ou seja, do gerenciador de arquivos usando smb: ). Agora, sempre que tento acessar o atalho ou digitar a credencial novamente, recebo uma janela de diálogo solicitando usuário, domínio e senha.

Então tentei montar o local manualmente usando cisf-utils fazendo:

sudo mount -t cifs //fileshare1/docs1/user/My\ Documents/shared/Francesco/ /home/frank/used_shared/ -o username=my_user,password=my_pass,domain=my_domain,gid=1000,uid=1000

Eu recebo mount error(13): Permission denied.

Tenho certeza de que meu usuário tem permissão para essa pasta porque posso acessá-la em uma máquina Windows.

Além disso, se eu tentar montar minha pasta pessoal nesse local por meio de:

sudo mount -t cifs //fileshare1/docs5/francesco.azzarello/ /home/frank/mnt_folder -o username=my_user,password=my_pass,domain=my_domain,gid=1000,uid=1000

Posso acessá-lo sem problemas.

Para referência, estou usando o kernel 4.2.0-36-genérico e minha versão mount.cifs é 6.4

Alguma idéia de como fazer um dos dois métodos funcionar?


AtualizarRgarding ponsfrilus resposta

número 1: opção detalhada retorna:

_mount.cifs kernel mount options: ip=xxx.xxx.xxx.xxx,unc=\\fileshare1\docs1,uid=1000,gid=1000,user=my_user,,domain=my_domain,prefixpath=user/My Documents/shared/Francesco/,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)_

O número 2 é basicamente a mesma coisa:

_ mount.cifs kernel mount options: ip=xxx.xxx.xxx.xxx,unc=\\fileshare1\docs1,iocharset=utf8,file_mode=0777,dir_mode=0777,user=my_user,,domain=my_domain,prefixpath=user/My Documents/shared/Francesco/,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)_

E nada mudou com vers=2.1:

_mount.cifs kernel mount options: ip=xxx.xxx.xxx.xxx,unc=\\fileshare1\docs1,vers=2.1,iocharset=utf8,file_mode=0777,dir_mode=0777,user=my_user,,domain=my_domain,prefixpath=user/My Documents/shared/Francesco/,pass=********
mount error(13): Permission denied
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)_

Quanto ao número 4, posso montar o docs1 sem problemas, mas posso navegar para chegar à pasta compartilhada no usuário.

Responder1

Tenho certeza que encontrei exatamente o mesmo problema hoje no Ubuntu 16.10. Tentei todas as sugestões deste tópico várias vezes, consegui montar exatamente o mesmo compartilhamento usando o Windows Server 2016 e pude navegá-lo usando smbclient ( smbclient -U brainstrust //WINBOX01/shared). Até tentei um arquivo de credenciais externo.

Acabei encontrando uma solução - embora tenha criado um usuário local para o compartilhamento na caixa do Windows, ele também foi associado a um domínio. Basicamente, definir o domínio como a máquina local -o domain=WINBOX01resolveu meu problema instantaneamente, deixando um comentário aqui na esperança de que seja útil para alguém.

O comando mínimo completo que usei foi:

sudo mount.cifs -v //WINBOX01/shared /home/geoff/winbox01  --verbose -o user=brainstrust,password=topsecret,domain=WINBOX01

Responder2

Acho que você tem o tipo de segurança errado para o servidor, o erro 13 significa que o servidor não está permitindo sua entrada.

Você precisará selecionar o modo de segurança correto em seu comando mount e adicionar uma opção sec via -o da seguinte maneira[referência]:

sec=
   Security mode. Allowed values are:
   ·   none - attempt to connection as a null user (no name)
   ·   krb5 - Use Kerberos version 5 authentication
   ·   krb5i - Use Kerberos authentication and forcibly enable packet 
       signing
   ·   ntlm - Use NTLM password hashing
   ·   ntlmi - Use NTLM password hashing and force packet signing
   ·   ntlmv2 - Use NTLMv2 password hashing
   ·   ntlmv2i - Use NTLMv2 password hashing and force packet signing
   ·   ntlmssp - Use NTLMv2 password hashing encapsulated in Raw NTLMSSP message
   ·   ntlmsspi - Use NTLMv2 password hashing encapsulated in Raw NTLMSSP message, and force packet signing

Responder3

  1. Tente adicionar a opção "-v" para obter uma saída detalhada:

    sudo mount -v -t cifs //fileshare1/docs1/user/My\ 
       Documents/shared/Francesco/ /home/frank/mnt_folder -o \
       username=my_user,password=my_pass,domain=my_domain,gid=1000,uid=1000
    
  2. Teste com essas opções para o comando mount

    iocharset=utf8,rw,file_mode=0777,dir_mode=0777:

    sudo mount -v -t cifs //fileshare1/docs1/user/My\ 
       Documents/shared/Francesco/ /home/frank/mnt_folder -o 
       username=my_user,password=my_pass,domain=my_domain,\
       iocharset=utf8,rw,file_mode=0777,dir_mode=0777
    
  3. Teste especificando a opção de versão SMB (vers=2.1), consultea wiki do samba. Na página de manual mount.cifs:

    vers=
    versão do protocolo SMB. Os valores permitidos são:

    • 1.0 - O protocolo CIFS/SMBv1 clássico. Este é o padrão.

    • 2.0 - O protocolo SMBv2.002. Isso foi introduzido inicialmente no Windows Vista Service Pack 1 e no Windows Server 2008. Observe que a versão inicial do Windows Vista falava um dialeto ligeiramente diferente (2.000) que não é compatível.

    • 2.1 - O protocolo SMBv2.1 introduzido no Microsoft Windows 7 e no Windows Server 2008R2.

    • 3.0 – O protocolo SMBv3.0 introduzido no Microsoft Windows 8 e no Windows Server 2012.

  4. Por fim, tente montar apenas o primeiro compartilhamento:

    sudo mount -v -t cifs //fileshare1/docs1/ /home/frank/mnt_folder \
       -o username=my_user,password=my_pass,domain=my_domain,\
       iocharset=utf8,rw,file_mode=0777,dir_mode=0777
    

Qualquer saída detalhada que você possa compartilhar pode ajudar.

Responder4

Adicionar a opção sec=ntlmao comando mount resolveu meu problema.

por exemplo:

sudo mount -t cifs -o username=administrator,password=123456,sec=ntlm //ip/eeshare /mnt/eeshare/

informação relacionada