Erro 13 de montagem com o Ubuntu 16.04 e o Azure (mesma região)

1

Estou tentando montar um compartilhamento de samba no Azure usando a string de conexão que eles fornecem ao lado da minha pasta de compartilhamento e, no 16.04, estou recebendo "Erro de montagem 13, permissão negada"

A string de conexão, depois de instalar o cifs-utils, funciona exatamente como eu esperaria no Ubuntu Server 17.04

String de conexão:

sudo mount -t cifs //<HOSTNAME>.file.core.windows.net/<SHARENAME> /mnt/etclol -o vers=3.0,username=<HOSTNAME>,password=<PASSWORD KEY>,dir_mode=0777,file_mode=0777,sec=ntlmssp

Estou ciente de que há um problema no 16.04 que impede conexões externas e conexões entre regiões para VMs baseadas no Azure que lida com a criptografia que o kernal 16.04 não suporta. Então eu trabalhei em torno disso:

Mudei meu nó de armazenamento de GRS (Geograficamente Redundant Storage) para LRS (Locally Redundant Storage), que me levou de duas regiões (Leste dos EUA e Central dos EUA) para apenas US Central (o mesmo que meus servidores da web).

Continuamente recebo o erro de montagem 13 ao tentar montar esses compartilhamentos, na mesma região e dentro do Azure. Cada post que eu olhei me leva a acreditar que essa configuração funcionaria.

Para verificar também se este não é um problema de montagem local, tentei em uma montagem 0777 chmod'd, bem como diretórios em meu diretório inicial. Eu percebi que isso não importava.

Minha única outra opção é migrar servidores 16.04 ao vivo para o formato 17.04, o que funcionaria, mas seria muito ruim.

TL; DR: Por que isso não funciona na hierarquia de infraestrutura proposta? Bônus: Existe uma maneira de trabalhar 16.04 externamente ?

    
por Robert Lerner 18.07.2017 / 19:20

2 respostas

0

Até onde eu sei, o Ubuntu 16.04 LTS suporta a funcionalidade de criptografia do SMB 3.0.

Talvez possamos seguir essas etapas para montar o compartilhamento de arquivos do Azure:
1.Instalar cifs-utils package:

sudo apt-get update  #we should update it then install cifs-utils
sudo apt-get install cifs-utils

2.criar uma pasta para o ponto de montagem:

mkdir mymountpoint

3.Use o comando mount para montar o compartilhamento de arquivos do Azure:

sudo mount -t cifs //<storage-account-name>.file.core.windows.net/<share-name> ./mymountpoint -o vers=3.0,username=<storage-account-name>,password=<storage-account-key>,dir_mode=0777,file_mode=0777,serverino

Mais informações sobre como usar o armazenamento de arquivos do Azure com o Linux, consulte link .

=============================================== ============
Atualizar :
Por enquanto, a conta de armazenamento do Azure suporta "Transferência segura necessária", esse recurso usado para SMB 2.1, SMB 3.0 sem criptografia e alguns tipos de clientes do Linux SMB.

Por padrão, o ubuntu 16.04 suporta a funcionalidade de criptografia do SMB 3.0. por isso, devemos desativar a transferência segura necessária e montá-la diretamente.

O Ubuntu 16.04LTS pode suportar apenas senha criptografada para SMB - assim as credenciais para acessar o Armazenamento de Arquivos do Azure são criptografadas, mas os dados em si são enviados como texto não criptografado .

When you are using the Azure Files service, any connection without encryption fails when "Secure transfer required" is enabled. This includes scenarios using SMB 2.1, SMB 3.0 without encryption, and some flavors of the Linux SMB client. By default, the "Secure transfer required" option is disabled.

Sobre o armazenamento de arquivos do Azure com o Linux, consulte este link .

Mais informações sobre Require secure transfer , consulte este link .

    
por 19.07.2017 / 09:57
0

Eu tenho o mesmo problema nos servidores de produção. Decidimos atualizar o Ubuntu 16.04 LTS para o Ubuntu 16.10 (verifiquei que a montagem com transferência segura ativada funciona). Eu sei que isso não é uma solução fácil, mas apenas isso funcionou para mim.

No lado positivo, a atualização de 16.04 para 16.10 é "mais segura" do que de 16.04 para 17.04;)

    
por 22.07.2017 / 16:14