Android

Como instalar e configurar o samba no centos 7

Cómo instalar y configurar Samba en CentOS 7 [Parte 1]

Cómo instalar y configurar Samba en CentOS 7 [Parte 1]

Índice:

Anonim

O Samba é uma reimplementação gratuita e de código aberto do protocolo de compartilhamento de arquivos de rede SMB / CIFS que permite aos usuários finais acessar arquivos, impressoras e outros recursos compartilhados.

Neste tutorial, mostraremos como instalar o Samba no CentOS 7 e configurá-lo como um servidor independente para fornecer compartilhamento de arquivos em diferentes sistemas operacionais em uma rede.

Criaremos os seguintes compartilhamentos e usuários do Samba.

Comercial:

  • sadmin - Um usuário administrativo com acesso de leitura e gravação a todos os compartilhamentos. josh - Um usuário comum com seu próprio compartilhamento de arquivo privado.

Ações:

  • usuários - Esse compartilhamento estará acessível com permissões de leitura / gravação por todos os usuários. josh - Esse compartilhamento estará acessível com permissões de leitura / gravação apenas pelos usuários josh e sadmin.

Os compartilhamentos de arquivos estarão acessíveis em todos os dispositivos da sua rede. Mais adiante neste tutorial, também forneceremos instruções detalhadas sobre como conectar-se ao servidor Samba a partir de clientes Linux, Windows e macOS.

Pré-requisitos

Antes de começar, verifique se está conectado ao seu sistema CentOS 7 como um usuário com privilégios de sudo.

Instalando o Samba no CentOS

O Samba está disponível nos repositórios padrão do CentOS. Para instalá-lo no seu sistema CentOS, execute o seguinte comando:

sudo yum install samba samba-client

Quando a instalação estiver concluída, inicie os serviços Samba e permita que eles iniciem automaticamente na inicialização do sistema:

sudo systemctl start smb.service sudo systemctl start nmb.service

sudo systemctl enable smb.service sudo systemctl enable nmb.service

O serviço smbd fornece serviços de compartilhamento e impressão de arquivos e escuta nas portas TCP 139 e 445. O serviço nmbd fornece serviços de nomeação NetBIOS sobre IP para clientes e escuta na porta UDP 137.

Configurando o firewall

Agora que o Samba está instalado e em execução na sua máquina CentOS, você precisará configurar seu firewall e abrir as portas necessárias. Para fazer isso, execute os seguintes comandos:

firewall-cmd --permanent --zone=public --add-service=samba firewall-cmd --zone=public --add-service=samba

Criando usuários do Samba e estrutura de diretórios

Para facilitar a manutenção e a flexibilidade, em vez de usar os diretórios pessoais padrão ( /home/user ), todos os diretórios e dados do Samba estarão localizados no diretório /samba .

Comece criando o diretório /samba :

sudo mkdir /samba

Crie um novo grupo chamado sambashare . Mais tarde, adicionaremos todos os usuários do Samba a este grupo.

sudo groupadd sambashare

Defina a propriedade do grupo de diretórios /samba como sambashare :

sudo chgrp sambashare /samba

O Samba usa usuários do Linux e sistema de permissão de grupo, mas possui seu próprio mecanismo de autenticação separado da autenticação padrão do Linux. Criaremos os usuários usando a ferramenta padrão useradd Linux e, em seguida, definiremos a senha do usuário com o utilitário smbpasswd .

Como mencionamos na introdução, criaremos um usuário comum que terá acesso ao seu compartilhamento de arquivos privado e uma conta administrativa com acesso de leitura e gravação a todos os compartilhamentos no servidor Samba.

Criando usuários do Samba

Para criar um novo usuário chamado josh , use o seguinte comando:

sudo useradd -M -d /samba/josh -s /usr/sbin/nologin -G sambashare josh

As opções useradd têm os seguintes significados:

  • -M -não cria o diretório inicial do usuário. Criaremos este diretório manualmente. -d /samba/josh - define o diretório inicial do usuário como /samba/josh . -s /usr/sbin/nologin - desativa o acesso ao shell para este usuário. -G sambashare - adicione o usuário ao grupo sambashare .

Crie o diretório inicial do usuário e configure a propriedade do diretório para o usuário josh e group sambashare :

sudo mkdir /samba/josh sudo chown josh:sambashare /samba/josh

O comando a seguir adicionará o bit setgid ao diretório /samba/josh , para que os arquivos recém-criados neste diretório herdem o grupo do diretório pai. Dessa forma, não importa qual usuário crie um novo arquivo, o arquivo terá o proprietário do grupo de sambashare . Por exemplo, se você não definir as permissões do diretório para 2770 e o usuário sadmin criar um novo arquivo, o usuário josh não poderá ler / gravar neste arquivo.

sudo chmod 2770 /samba/josh

Inclua a conta de usuário josh no banco de dados Samba, configurando a senha do usuário:

sudo smbpasswd -a josh

Você será solicitado a inserir e confirmar a senha do usuário.

New SMB password: Retype new SMB password: Added user josh.

Depois que a senha for definida, ative a conta Samba digitando:

sudo smbpasswd -e josh

Enabled user josh.

Para criar outro usuário, repita o mesmo processo que ao criar o usuário josh .

Em seguida, vamos criar um usuário e um grupo sadmin . Todos os membros deste grupo terão permissões administrativas. Posteriormente, se você quiser conceder permissões administrativas para outro usuário, adicione-o ao grupo sadmin .

Crie o usuário administrativo digitando:

sudo useradd -M -d /samba/users -s /usr/sbin/nologin -G sambashare sadmin

O comando acima também criará um grupo sadmin e adicionará o usuário aos grupos sambashare e sambashare .

Defina uma senha e habilite o usuário:

sudo smbpasswd -a sadmin sudo smbpasswd -e sadmin

Em seguida, crie o diretório de compartilhamento Users :

sudo mkdir /samba/users

Defina a propriedade do diretório como usuário sadmin e group sambashare :

sudo chown sadmin:sambashare /samba/users

Este diretório estará acessível por todos os usuários autenticados. O comando a seguir configura o acesso de gravação / leitura aos membros do grupo sambashare no diretório /samba/users :

sudo chmod 2770 /samba/users

Configurando compartilhamentos Samba

Abra o arquivo de configuração do Samba e acrescente as seções:

sudo nano /etc/samba/smb.conf /etc/samba/smb.conf

path = /samba/users browseable = yes read only = no force create mode = 0660 force directory mode = 2770 valid users = @sambashare @sadmin path = /samba/josh browseable = no read only = no force create mode = 0660 force directory mode = 2770 valid users = josh @sadmin

As opções têm os seguintes significados:

  • e - Os nomes dos compartilhamentos que você usará ao fazer login. path - O caminho para o compartilhamento. browseable - se o compartilhamento deve ser listado na lista de compartilhamentos disponíveis. Ao definir como no outro usuário, não será possível ver o compartilhamento. read only - se os usuários especificados na lista de valid users podem gravar neste compartilhamento. force create mode - Define as permissões para os arquivos recém-criados neste compartilhamento. force directory mode - Define as permissões para os diretórios recém-criados neste compartilhamento. valid users - Uma lista de usuários e grupos que têm permissão para acessar o compartilhamento. Os grupos são prefixados com o símbolo @ .

Para obter mais informações sobre as opções disponíveis, consulte a página de documentação do arquivo de configuração do Samba.

Depois de concluído, reinicie os serviços do Samba com:

sudo systemctl restart smb.service sudo systemctl restart nmb.service

Nas seções a seguir, mostraremos como conectar-se a um compartilhamento Samba de clientes Linux, macOS e Windows.

Conectando a um compartilhamento Samba do Linux

Os usuários do Linux podem acessar o compartilhamento samba na linha de comando, usando o gerenciador de arquivos ou montar o compartilhamento Samba.

Usando o cliente smbclient

smbclient é uma ferramenta que permite acessar o Samba a partir da linha de comando. O pacote smbclient não está pré-instalado na maioria das distribuições Linux, portanto, você precisará instalá-lo com o gerenciador de pacotes de distribuição.

Para instalar o smbclient no Ubuntu e Debian, execute:

sudo apt install smbclient

Para instalar o smbclient no CentOS e no Fedora, execute:

sudo yum install samba-client

A sintaxe para acessar um compartilhamento Samba é a seguinte:

mbclient //samba_hostname_or_server_ip/share_name -U username

Por exemplo, para conectar-se a um compartilhamento chamado josh em um servidor Samba com endereço IP 192.168.121.118 como usuário josh você executaria:

smbclient //192.168.121.118/josh -U josh

Você será solicitado a inserir a senha do usuário.

Enter WORKGROUP\josh's password:

Depois de inserir a senha, você será conectado à interface da linha de comando do Samba.

Try "help" to get a list of possible commands. smb: \>

Montando o compartilhamento Samba

Para montar um compartilhamento Samba no Linux primeiro, você precisa instalar o pacote cifs-utils .

No Ubuntu e Debian, execute:

sudo apt install cifs-utils

No CentOS e no Fedora, execute:

sudo yum install cifs-utils

Em seguida, crie um ponto de montagem:

sudo mkdir /mnt/smbmount

Monte o compartilhamento usando o seguinte comando:

sudo mount -t cifs -o username=username //samba_hostname_or_server_ip/sharename /mnt/smbmount

Por exemplo, para montar um compartilhamento chamado josh em um servidor Samba com endereço IP 192.168.121.118 como usuário josh no ponto de montagem /mnt/smbmount você executaria:

sudo mount -t cifs -o username=josh //192.168.121.118/josh /mnt/smbmount

Você será solicitado a inserir a senha do usuário.

Password for josh@//192.168.121.118/josh: ********

Usando GUI

Arquivos, o gerenciador de arquivos padrão no Gnome tem uma opção embutida para acessar os compartilhamentos do Samba.

  1. Abra Arquivos e clique em "Outros locais" na barra lateral. Em "Conectar ao servidor", digite o endereço do compartilhamento Samba no seguinte formato smb://samba_hostname_or_server_ip/sharename Clique em "Connect" e a seguinte tela será exibida:

Conclusão

Neste tutorial, você aprendeu como instalar um servidor Samba no CentOS 7 e criar diferentes tipos de usuários e compartilhados. Também mostramos como se conectar ao servidor Samba a partir de dispositivos Linux, macOS e Windows.

samba centos