ID-AZ-001 - Como Configurar um File Share SMB em VM Linux com Azure Files
ID: KB-AZ-001
Responsável: Thiago Amaral, TI
Status: Publicado
Última Atualização: 16/09/2025
Propósito
Auxiliar o time de Suporte TI Nível 1 na criação e configuração de um compartilhamento de arquivos (file share) em uma máquina virtual Azure, utilizando o protocolo SMB e um Azure File Share como backend.
Aplica-se a
Time de Suporte TI Nível 1: Time no espaço de atendimento da Fictor.
Instruções
1. Pré-requisitos: Instalação de Dependências
Antes de iniciar, conecte-se à máquina virtual e instale os pacotes necessários para Samba e para a montagem de compartilhamentos CIFS.
sudo apt update
sudo apt install samba cifs-utils smbclient acl -yO procedimento é dividido em duas seções, uma para o compartilhamento Consignado e outra para o BCBR.
2. Configuração do Share "Recursos Consig"
2.1. Montar o Azure File Share (Consignado)
Crie e execute um script para montar o compartilhamento do Azure na VM de forma persistente.
Crie o arquivo de script:
touch consig-fileserver.shCole o seguinte conteúdo no arquivo `consig-fileserver.sh`:
#!/usr/bin/env bash # Cria o ponto de montagem sudo mkdir -p /mnt/consig-fileserver # Cria o diretório e o arquivo de credenciais de forma segura if [ ! -d "/etc/smbcredentials" ]; then sudo mkdir /etc/smbcredentials fi if [ ! -f "/etc/smbcredentials/consigblob.cred" ]; then sudo bash -c 'echo "username=consigblob" >> /etc/smbcredentials/consigblob.cred' sudo bash -c 'echo "password=4C+BLoxFz8TRkOFQQnudwggXSuP2v1pey9MfxI82OsLavu1j/dBetLZ+tsh4keQLLaiC07xyIWLl+AStYvGqbg==" >> /etc/smbcredentials/consigblob.cred' sudo chmod 600 /etc/smbcredentials/consigblob.cred fi # Adiciona a entrada ao fstab para montagem automática no boot sudo bash -c 'echo "//consigblob.file.core.windows.net/consig-fileserver /mnt/consig-fileserver cifs nofail,credentials=/etc/smbcredentials/consigblob.cred,dir_mode=0777,file_mode=0777,serverino,nosharesock,actimeo=30" >> /etc/fstab' # Monta o compartilhamento imediatamente sudo mount -t cifs //consigblob.file.core.windows.net/consig-fileserver /mnt/consig-fileserver -o credentials=/etc/smbcredentials/consigblob.cred,dir_mode=0777,file_mode=0777,serverino,nosharesock,actimeo=30 echo "Montagem do consig-fileserver concluída."Torne o script executável e rode-o:
sudo chmod +x consig-fileserver.sh ./consig-fileserver.sh
2.2. Configurar o Compartilhamento no Samba
Adicione a definição do novo compartilhamento no arquivo de configuração do Samba.
Abra o arquivo
/etc/samba/smb.confem um editor de texto.Cole o bloco abaixo no final do arquivo:
[Recursos Consig] path = /mnt/consig-fileserver browseable = yes writable = yes read only = no guest ok = no valid users = @smbusers force group = smbusers create mask = 0775 directory mask = 0775
2.3. Ajustar Permissões do Sistema
Ajuste as permissões no ponto de montagem para garantir que o grupo smbusers tenha o acesso correto.
(Nota: O uso de ACLs pode ser explorado para permissões mais granulares no futuro).
# Ajuste o grupo proprietário do diretório
sudo chown -R root:smbusers /mnt/consig-fileserver
# Garante que o grupo possa ler/executar na raiz do share
sudo chmod 775 /mnt/consig-fileserver
# Permite que o grupo crie/modifique arquivos nas subpastas
sudo chmod 775 /mnt/consig-fileserver/Decretos
sudo chmod 775 /mnt/consig-fileserver/Clientes
sudo chmod 775 /mnt/consig-fileserver/"CCB e Termos"
sudo chmod 775 /mnt/consig-fileserver/Faturas2.4. Criar Usuários para o Samba (Consignado)
Crie o grupo e os usuários que terão acesso a este compartilhamento.
Crie o grupo definido no
smb.conf:sudo groupadd smbusersAdicione um novo usuário no sistema (ex: `sambauser`):
sudo useradd sambauser -s /sbin/nologinAssocie o usuário ao grupo do Samba:
sudo usermod -aG smbusers sambauserDefina uma senha para o usuário no Samba (esta senha é diferente da senha do sistema):
sudo smbpasswd -a sambauser
3. Configuração do Share "BCBR"
3.1. Montar o Azure File Share (BCBR)
Crie o arquivo de script:
touch bcbr-fileserver.shCole o seguinte conteúdo no arquivo
bcbr-fileserver.sh:#!/usr/bin/env bash sudo mkdir -p /mnt/bcbr-fileserver if [ ! -d "/etc/smbcredentials" ]; then sudo mkdir /etc/smbcredentials fi if [ ! -f "/etc/smbcredentials/consigblob.cred" ]; then sudo bash -c 'echo "username=consigblob" >> /etc/smbcredentials/consigblob.cred' sudo bash -c 'echo "password=4C+BLoxFz8TRkOFQQnudwggXSuP2v1pey9MfxI82OsLavu1j/dBetLZ+tsh4keQLLaiC07xyIWLl+AStYvGqbg==" >> /etc/smbcredentials/consigblob.cred' sudo chmod 600 /etc/smbcredentials/consigblob.cred fi sudo bash -c 'echo "//consigblob.file.core.windows.net/bcbr-fileserver /mnt/bcbr-fileserver cifs nofail,credentials=/etc/smbcredentials/consigblob.cred,dir_mode=0777,file_mode=0777,serverino,nosharesock,actimeo=30" >> /etc/fstab' sudo mount -t cifs //consigblob.file.core.windows.net/bcbr-fileserver /mnt/bcbr-fileserver -o credentials=/etc/smbcredentials/consigblob.cred,dir_mode=0777,file_mode=0777,serverino,nosharesock,actimeo=30 echo "Montagem do bcbr-fileserver concluída."Torne o script executável e rode-o:
sudo chmod +x bcbr-fileserver.sh ./bcbr-fileserver.sh
3.2. Configurar o Compartilhamento no Samba
Abra o arquivo
/etc/samba/smb.conf.Cole o bloco abaixo no final do arquivo:
[BCBR] path = /mnt/bcbr-fileserver browseable = yes writable = yes read only = no guest ok = no valid users = @sambabcbr force group = sambabcbr create mask = 0775 directory mask = 0775
3.3. Ajustar Permissões do Sistema
sudo chown -R :sambabcbr /mnt/bcbr-fileserver
sudo chmod -R 0775 /mnt/bcbr-fileserver3.4. Criar Usuários para o Samba (BCBR)
Crie o grupo específico para este share:
sudo groupadd sambabcbrAdicione um novo usuário no sistema (ex:
user.bcbr):sudo useradd user.bcbr -s /sbin/nologinAssocie o usuário ao grupo:
sudo usermod -aG sambabcbr sambauserbcbrCrie a senha do Samba para o usuário:
sudo smbpasswd -a sambauserbcbr
4. Finalização e Verificação
Após realizar as configurações, reinicie e habilite os serviços do Samba para aplicar as mudanças:
sudo systemctl restart smbd sudo systemctl restart nmbd sudo systemctl enable smbd sudo systemctl enable nmbdVerifique a conexão e os compartilhamentos disponíveis no servidor usando o IP da máquina:
# smbclient -U <nome_do_usuario_samba> -L //191.234.206.135 smbclient -U sambauser -L //191.234.206.135
5. Informações Complementares de Rede
Para acesso externo (via internet), a porta TCP 445 deve estar liberada no Network Security Group (NSG) da VM no Azure.
IP Público:
191.234.206.135IP Privado (para uso em VPN):
10.2.0.4Todas credenciais de usuários estão no Sharepoint privado do Consignado em
TI > 12_Administrativo.
Resultado Esperado
Um bucket público será criado e poderá ser acessado.
Solução de Problemas
N/A
Artigos Relacionados
N/A
Anexos
N/A
Referências
N/A
Histórico De Versão
16/09/2025
1.0
Thiago Thalisson
Confecção do documento.
Last updated