Todos os produtos
Search
Central de documentação

File Storage NAS:Montar um sistema de arquivos SMB no Linux como usuário do AD

Última atualização: Jun 27, 2026

Este tópico descreve como montar um sistema de arquivos SMB em um cliente Linux como usuário de domínio do AD. Também explica como acessar o sistema de arquivos e gerenciar Listas de Controle de Acesso (ACLs) dos arquivos e diretórios após a montagem.

Pré-requisitos

Contexto

Antes de adicionar o ponto de montagem de um sistema de arquivos SMB a um domínio do AD, você só pode montar e usar o sistema de arquivos como usuário anônimo. Após adicionar o ponto de montagem ao domínio do AD, é possível escolher se deseja continuar permitindo o acesso de usuários anônimos.

  • Se você continuar a permitir o acesso anônimo, os clientes poderão usar a autenticação Kerberos para acessar o sistema de arquivos com uma identidade de domínio ou usar a autenticação NTLM para acessá-lo como membro do grupo Everyone.

  • Caso o acesso anônimo não seja permitido, apenas clientes Linux que utilizam o protocolo de autenticação Kerberos poderão montar o sistema de arquivos como usuário de domínio do AD.

O procedimento a seguir usa Ubuntu e CentOS como exemplos para demonstrar como montar e acessar um sistema de arquivos SMB como usuário de domínio do AD.

Método 1: Montar em um cliente ingressado no domínio

  1. Faça logon no cliente Linux.

  2. Ingresse o cliente Linux no domínio do AD.

    • Ubuntu

      1. Instale os pacotes de configuração do AD.

        sudo apt-get update
        sudo apt-get -y install realmd libnss-sss libpam-sss sssd sssd-tools adcli samba-common-bin oddjob oddjob-mkhomedir packagekit krb5-user
      2. Defina o nome do host para o cliente Linux no domínio do AD.

        sudo hostnamectl set-hostname myubuntu.example-company.com

        No comando, substitua example-company.com pelo nome do seu domínio do AD.

        Após concluir a configuração, execute o comando hostnamectl para verificar o nome do host do cliente.

        user1@myubuntu:/home$ sudo hostnamectl set-hostname myubuntu.example-company.com
        user1@myubuntu:/home$ hostnamectl
           Static hostname: myubuntu.example-company.com
                 Icon name: computer-vm
                   Chassis: vm
                Machine ID: 20210623112404781463487467590001
                   Boot ID: 0702ff766c504355a16f9b27e467a6f6
            Virtualization: kvm
          Operating System: Ubuntu 20.04.2 LTS
                    Kernel: Linux 5.4.0-77-generic
              Architecture: x86-64
        user1@myubuntu:/home$
      3. Configure o dns.

        1. Execute os comandos a seguir para interromper as atualizações automáticas de dns.

          sudo systemctl disable systemd-resolved
          sudo systemctl stop systemd-resolved
        2. Adicione o endereço ip do servidor AD ao arquivo /etc/resolv.conf.

          # Generated by NetworkManager
          search example-company.com
          nameserver 172.19.0.61
        3. Execute o comando ping para testar a conectividade com o nome do servidor AD.

          user1@myubuntu:/home$ ping example-company.com
          PING example-company.com (172.19.0.61) 56(84) bytes of data.
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=1 ttl=128 time=0.274 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=2 ttl=128 time=0.289 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=3 ttl=128 time=0.270 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=4 ttl=128 time=0.273 ms
          ^C
          --- example-company.com ping statistics ---
          4 packets transmitted, 4 received, 0% packet loss, time 3073ms
          rtt min/avg/max/mdev = 0.270/0.276/0.289/0.007 ms
      4. Descubra o domínio do AD.

        realm discover <AD domain>
        user1@myubuntu:/home$ realm discover example-company.com
        example-company.com
          type: kerberos
          realm-name: EXAMPLE-COMPANY.COM
          domain-name: example-company.com
          configured: kerberos-member
          server-software: active-directory
          client-software: sssd
          required-package: sssd-tools
          required-package: sssd
          required-package: libnss-sss
          required-package: libpam-sss
          required-package: adcli
          required-package: samba-common-bin
          login-formats: %U@example-company.com
          login-policy: allow-realm-logins
      5. Ingresse o cliente Linux no domínio do AD.

        sudo kinit Administrator@EXAMPLE-COMPANY.COM
        sudo realm join -U Administrator example-company.com

        Execute o comando realm list. Se a saída for semelhante à seguinte, o cliente Linux ingressou no domínio do AD.

        user1@myubuntu:/home$ realm list
        example-company.com
          type: kerberos
          realm-name: EXAMPLE-COMPANY.COM
          domain-name: example-company.com
          configured: kerberos-member
          server-software: active-directory
          client-software: sssd
          required-package: sssd-tools
          required-package: sssd
          required-package: libnss-sss
          required-package: libpam-sss
          required-package: adcli
          required-package: samba-common-bin
          login-formats: %U@example-company.com
          login-policy: allow-realm-logins
      6. Configure a criação automática de diretório home para logon de usuário de domínio do AD.

        1. Configure o diretório home.

          sudo bash -c "cat > /usr/share/pam-configs/mkhomedir" <<EOF
          Name: activate mkhomedir
          Default: yes
          Priority: 900
          Session-Type: Additional
          Session:
                  required                        pam_mkhomedir.so umask=0022 skel=/etc/skel
          EOF
        2. Execute o comando a seguir para aplicar a configuração.

          pam-auth-update
        3. Após a execução do comando, use as teclas de seta e a barra de espaço para garantir que a opção activate mkhomedir esteja selecionada (marcada com um asterisco (*)). Em seguida, pressione a tecla Tab para navegar até Ok e pressione Enter.

          Pluggable Authentication Modules (PAM) determine how authentication, authorization, and password changing are handled on the
          system, as well as allowing configuration of additional actions to take when starting user sessions.
          Some PAM module packages provide profiles that can be used to automatically adjust the behavior of all PAM-using applications
          on the system.  Please indicate which of these behaviors you wish to enable.
          PAM profiles to enable:
              [*] Pwquality password strength checking
              [*] activate mkhomedir
              [*] Unix authentication
              [*] SSS authentication
              [*] Register user sessions in the systemd control group hierarchy
              [*] Inheritable Capabilities Management
                              <Ok>                        <Cancel>
      7. Configure o serviço sssd do Linux.

        1. No arquivo de configuração /etc/sssd/sssd.conf, adicione a linha krb5_ccname_template=FILE:%d/krb5cc_%U.

          [sssd]
          domains = example-company.com
          config_file_version = 2
          services = nss, pam
          [domain/example-company.com]
          default_shell = /bin/bash
          krb5_store_password_if_offline = True
          cache_credentials = True
          krb5_realm = EXAMPLE-COMPANY.COM
          realmd_tags = manages-system joined-with-adcli
          id_provider = ad
          fallback_homedir = /home/%u@%d
          ad_domain = example-company.com
          use_fully_qualified_names = True
          ldap_id_mapping = True
          access_provider = ad
          krb5_ccname_template=FILE:%d/krb5cc_%U
        2. Execute os comandos a seguir para reiniciar o serviço sssd e verificar seu status.

          sudo systemctl restart sssd
          sudo systemctl status sssd

          Uma saída semelhante à seguinte indica que o serviço sssd foi configurado com sucesso.

          root@iZrj90myfgaf70i4jqsmr9Z:~# systemctl status sssd
          ● sssd.service - System Security Services Daemon
             Loaded: loaded (/lib/systemd/system/sssd.service; enabled; vendor preset: enabled)
             Active: active (running) since Fri 2021-03-12 14:00:21 CST; 3s ago
           Main PID: 21279 (sssd)
              Tasks: 4 (limit: 9315)
             Memory: 42.2M
             CGroup: /system.slice/sssd.service
                     ├─21279 /usr/sbin/sssd -i --logger=files
                     ├─21300 /usr/libexec/sssd/sssd_be --domain example.com --uid 0 --gid 0 --logger=files
                     ├─21301 /usr/libexec/sssd/sssd_nss --uid 0 --gid 0 --logger=files
                     └─21302 /usr/libexec/sssd/sssd_pam --uid 0 --gid 0 --logger=files
    • CentOS

      1. Instale os pacotes de configuração do AD.

        sudo yum update
        sudo yum install sssd realmd oddjob oddjob-mkhomedir adcli samba-common samba-common-tools krb5-workstation openldap-clients policycoreutils-python-utils -y
      2. Defina o nome do host para o cliente Linux no domínio do AD.

        sudo hostnamectl set-hostname mycentos.example-company.com

        No comando, substitua example-company.com pelo nome do seu domínio do AD.

        Após concluir a configuração, execute o comando hostnamectl para verificar o nome do host do cliente.

        [user1@mycentos root]$ sudo hostnamectl set-hostname mycentos.example-company.com
        [user1@mycentos root]$ hostnamectl
           Static hostname: mycentos.example-company.com
                 Icon name: computer-vm
                   Chassis: vm
                Machine ID: 20210623110808105647395700239158
                   Boot ID: e8fded82c87f4fe783e3c75263c854d9
            Virtualization: kvm
          Operating System: CentOS Linux 8
               CPE OS Name: cpe:/o:centos:centos:8
                    Kernel: Linux 4.18.0-305.12.1.el8_4.x86_64
              Architecture: x86-64
      3. Configure o dns.

        Grave o endereço ip do servidor AD no arquivo /etc/resolv.conf e exclua o servidor dns padrão. Execute o comando ping no nome do servidor AD para verificar a conectividade.

        [user1@mycentos root]$ ping example-company.com
        PING example-company.com (172.19.0.61) 56(84) bytes of data.
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=1 ttl=128 time=0.221 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=2 ttl=128 time=0.334 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=3 ttl=128 time=0.314 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=4 ttl=128 time=0.323 ms
        ^C
        --- example-company.com ping statistics ---
        4 packets transmitted, 4 received, 0% packet loss, time 3044ms
        rtt min/avg/max/mdev = 0.221/0.298/0.334/0.045 ms
      4. Configure o Kerberos.

        Adicione as linhas a seguir ao arquivo de configuração /etc/krb5.conf.

            default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
        # To opt out of the system crypto-policies configuration of krb5, remove the
        # symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated.
        includedir /etc/krb5.conf.d/
        [logging]
            default = FILE:/var/log/krb5libs.log
            kdc = FILE:/var/log/krb5kdc.log
            admin_server = FILE:/var/log/kadmind.log
        [libdefaults]
            dns_lookup_realm = false
            ticket_lifetime = 24h
            renew_lifetime = 7d
            forwardable = true
            rdns = false
            pkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crt
            spake_preauth_groups = edwards25519
        #    default_realm = EXAMPLE.COM
            default_ccache_name = KEYRING:persistent:%{uid}
            default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
        [realms]
        # EXAMPLE.COM = {
        #     kdc = kerberos.example.com
        #     admin_server = kerberos.example.com
        # }
        [domain_realm]
        # .example.com = EXAMPLE.COM
        # example.com = EXAMPLE.COM
      5. Descubra o domínio do AD.

        realm discover example-company.com
        [user1@mycentos root]$ realm discover example-company.com
        example-company.com
          type: kerberos
          realm-name: EXAMPLE-COMPANY.COM
          domain-name: example-company.com
          configured: no
          server-software: active-directory
          client-software: sssd
          required-package: oddjob
          required-package: oddjob-mkhomedir
          required-package: sssd
          required-package: adcli
          required-package: samba-common-tools
      6. Ingresse o cliente Linux no domínio do AD.

        sudo realm join -U Administrator example-company.com

        Execute o comando realm list. Se a saída for semelhante à seguinte, o cliente Linux ingressou no domínio do AD.

        [user1@mycentos root]$ realm list
        example-company.com
          type: kerberos
          realm-name: EXAMPLE-COMPANY.COM
          domain-name: example-company.com
          configured: kerberos-member
          server-software: active-directory
          client-software: sssd
          required-package: oddjob
          required-package: oddjob-mkhomedir
          required-package: sssd
          required-package: adcli
          required-package: samba-common-tools
          login-formats: %U@example-company.com
          login-policy: allow-realm-logins
  3. Execute o comando id para verificar o status de um usuário de domínio do AD.

    id testuser@example-company.com

    Uma saída semelhante à seguinte indica que o usuário de domínio do AD foi identificado corretamente.

    [user1@mycentos root]$ id usera1@example-company.com
    uid=371801107(usera1@example-company.com) gid=371800513(domain users@example-company.com) groups=371800513(domain users@example-company.com)
  4. Conceda permissões de logon aos usuários de domínio do AD.

    • Conceda permissão de logon a um usuário específico.

      sudo realm permit usera1@example-company.com
      sudo realm permit userb1@example-company.com userb2@example-company.com 
    • Conceda permissão de logon a um grupo específico.

      sudo realm permit -g 'Security Users'
      sudo realm permit -g 'Domain Users' 'Domain Admins'
    • Conceda permissão de logon a todos os usuários.

      sudo realm permit --all
    • Negue permissão de logon a todos os usuários.

      sudo realm deny --all
  5. Adicione permissões de sudo para um usuário de domínio do AD.

    Execute o comando a seguir para abrir o arquivo de configuração do sudo e adicione as permissões de sudo conforme necessário.

    sudo vim /etc/sudoers.d/domain_admins
    • Adicione permissões de sudo para um usuário específico.

      usera1@example-company.com     ALL=(ALL)   ALL
      userb2@example-company.com     ALL=(ALL)   ALL
    • Adicione permissões de sudo para um grupo específico.

      %admingroupc1@example-company.com     ALL=(ALL)   ALL
    • Adicione permissões de sudo para um grupo cujo nome contém várias palavras.

      %domain\ admins@example-company.com       ALL=(ALL)       ALL
  6. Configure o logon SSH.

    1. Abra o arquivo de configuração /etc/ssh/sshd_config e modifique a configuração de logon da seguinte forma:

      PasswordAuthentication yes
    2. Execute o comando correspondente ao seu sistema operacional para reiniciar o serviço SSHD.

      • CentOS

        service sshd restart
      • Ubuntu

        service ssh restart
  7. Faça logon no cliente Linux como usuário de domínio do AD.

    ssh localhost -l usera1@example-company.com

    Uma saída semelhante à seguinte indica que você fez logon com sucesso no cliente Linux como usuário de domínio do AD.

    [user1@mycentos root]$ ssh localhost -l usera1@example-company.com
    The authenticity of host 'localhost (127.0.0.1)' can't be established.
    ECDSA key fingerprint is SHA256:t/sEr63muG4UvBiAODXW9cHuMDBUlWUXO3cQ4xxmN78.
    Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
    Warning: Permanently added 'localhost' (ECDSA) to the list of known hosts.
    usera1@example-company.com@localhost's password:
    Welcome to Alibaba Cloud Elastic Compute Service !
    Activate the web console with: systemctl enable --now cockpit.socket
  8. Monte o sistema de arquivos SMB.

    1. Instale as ferramentas de montagem necessárias.

      • Ubuntu

        sudo apt-get install keyutils cifs-utils
      • CentOS

        sudo yum install keyutils cifs-utils
    2. Consulte as informações de usuário e ticket.

      Execute os comandos id e klist para visualizar o UID, GID e informações de ticket do usuário atual.

      [usera1@example-company.com@mycentos ~]$ klist
      Ticket cache: KCM:371801107:64031
      Default principal: usera1@EXAMPLE-COMPANY.COM
      Valid starting       Expires              Service principal
      08/31/2021 07:56:42  08/31/2021 17:56:42  krbtgt/EXAMPLE-COMPANY.COM@EXAMPLE-COMPANY.COM
              renew until 09/07/2021 07:56:42
      [usera1@example-company.com@mycentos ~]$ id
      uid=371801107(usera1@example-company.com) gid=371800513(domain users@example-company.com) groups=371800513(domain users@example-company.com),371801110(groupa@example-company.com)
    3. Execute o comando a seguir para montar o sistema de arquivos.

      sudo mount -t cifs //205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare /mnt -o vers=2.1,sec=krb5,cruid=371801107,uid=371801107,gid=371800513  --verbose

      Substitua 205dee4****-uub48.us-west-1.nas.aliyuncs.com pelo endereço do ponto de montagem do seu sistema de arquivos.

      Nota

      Se você selecionou Enable Encryption in Transit no console NAS, será necessário usar a opção vers=3,0 para montar o sistema de arquivos.

  9. Configure a montagem automática.

    Para montar o sistema de arquivos automaticamente após a reinicialização do cliente Linux, configure a montagem automática.

    1. No arquivo de configuração /etc/auto.master, adicione a seguinte linha:

      /share    /etc/auto.cifs    --timeout=30 --ghost
    2. Modifique o arquivo de configuração /etc/auto.cifs conforme mostrado no exemplo a seguir:

      * -fstype=cifs,vers=2.1,sec=krb5,cruid=${UID},uid=${UID},gid=${GID},file_mode=0700,dir_mode=0700 ://205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare/&

      A lista a seguir descreve os parâmetros principais. Substitua os valores pelas suas informações reais.

      • cruid e uid: O ID do usuário local usera1.

      • gid: O ID de grupo do usuário local usera1.

      • 205dee4****-uub48.us-west-1.nas.aliyuncs.com: O endereço do ponto de montagem.

        No console NAS, acesse a página File System List. Localize seu sistema de arquivos e clique em no ícone **image..png**. Na lista resultante, localize a coluna Mount Target e passe o mouse sobre o ícone **挂载点地址.png** para obter o endereço do ponto de montagem.

    3. Reinicie o serviço autofs.

      systemctl restart autofs.service
    4. Verifique a configuração de montagem automática.

      Por exemplo, crie o diretório //205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare/usera1 e conceda permissões totais ao usuário usera1.

      Após fazer logon como usuário de domínio do AD, execute o comando ls /share/usera1. Se o conteúdo do diretório usera1 no sistema de arquivos SMB for exibido, a montagem automática estará configurada corretamente.

Método 2: Montar em um cliente não ingressado no domínio

  1. Faça logon no cliente Linux.

  2. Conecte-se ao servidor AD.

    • Ubuntu

      1. Instale os pacotes de configuração do AD.

        sudo apt-get -y install keyutils cifs-utils krb5-user
      2. Configure o dns.

        1. Execute os comandos a seguir para interromper as atualizações automáticas de dns.

          sudo systemctl disable systemd-resolved
          sudo systemctl stop systemd-resolved
        2. Adicione o endereço ip do servidor AD ao arquivo /etc/resolv.conf.

          # Generated by NetworkManager
          search example-company.com
          nameserver 172.19.0.61
        3. Execute o comando ping para testar a conectividade com o nome do servidor AD.

          user1@myubuntu:/home$ ping example-company.com
          PING example-company.com (172.19.0.61) 56(84) bytes of data.
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=1 ttl=128 time=0.274 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=2 ttl=128 time=0.289 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=3 ttl=128 time=0.270 ms
          64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=4 ttl=128 time=0.273 ms
          ^C
          --- example-company.com ping statistics ---
          4 packets transmitted, 4 received, 0% packet loss, time 3073ms
          rtt min/avg/max/mdev = 0.270/0.276/0.289/0.007 ms
    • CentOS

      1. Instale os pacotes de configuração do AD.

        sudo yum install keyutils cifs-utils krb5-workstation
      2. Configure o dns.

        Grave o endereço ip do servidor AD no arquivo /etc/resolv.conf e exclua o servidor dns padrão. Execute o comando ping no nome do servidor AD para verificar a conectividade.

        [user1@mycentos root]$ ping example-company.com
        PING example-company.com (172.19.0.61) 56(84) bytes of data.
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=1 ttl=128 time=0.221 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=2 ttl=128 time=0.334 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=3 ttl=128 time=0.314 ms
        64 bytes from 172.19.0.61 (172.19.0.61): icmp_seq=4 ttl=128 time=0.323 ms
        ^C
        --- example-company.com ping statistics ---
        4 packets transmitted, 4 received, 0% packet loss, time 3044ms
        rtt min/avg/max/mdev = 0.221/0.298/0.334/0.045 ms
      3. Configure o Kerberos.

        Adicione as linhas a seguir ao arquivo de configuração /etc/krb5.conf.

            default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
        # To opt out of the system crypto-policies configuration of krb5, remove the
        # symlink at /etc/krb5.conf.d/crypto-policies which will not be recreated.
        includedir /etc/krb5.conf.d/
        [logging]
            default = FILE:/var/log/krb5libs.log
            kdc = FILE:/var/log/krb5kdc.log
            admin_server = FILE:/var/log/kadmind.log
        [libdefaults]
            dns_lookup_realm = false
            ticket_lifetime = 24h
            renew_lifetime = 7d
            forwardable = true
            rdns = false
            pkinit_anchors = FILE:/etc/pki/tls/certs/ca-bundle.crt
            spake_preauth_groups = edwards25519
        #    default_realm = EXAMPLE.COM
            default_ccache_name = KEYRING:persistent:%{uid}
            default_tgs_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            default_tkt_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
            permitted_enctypes = aes256-cts-hmac-sha1-96 rc4-hmac des-cbc-crc des-cbc-md5
        [realms]
        # EXAMPLE.COM = {
        #     kdc = kerberos.example.com
        #     admin_server = kerberos.example.com
        # }
        [domain_realm]
        # .example.com = EXAMPLE.COM
        # example.com = EXAMPLE.COM
  3. Use uma conta de usuário local para obter e armazenar em cache as informações de ticket Kerberos.

    1. Crie um novo usuário local e registre o UID e GID do usuário.

      useradd usera1
      su - usera1
      id
      [root@iZrj9gqbtl7kefeqxxx ~]# useradd usera1
      [root@iZrj9gqbtl7kefeqxxx ~]# su - usera1
      [usera1@iZrj9gqbtl7kefeqxxx ~]$ id
      uid=1004(usera1) gid=1004(usera1) groups=1004(usera1)
    2. Como o novo usuário local, obtenha um ticket Kerberos para o usuário do AD.

      kinit administrator@EXAMPLE-COMPANY.COM
      klist
      user1@iZrj9gqbtl7xxx          :~$ kinit administrator@EXAMPLE-COMPANY.COM
      Password for administrator@EXAMPLE-COMPANY.COM:
      user1@iZrj9gqbtl7xxx          :~$ klist
      Ticket cache: FILE:/tmp/krb5cc_1000
      Default principal: administrator@EXAMPLE-COMPANY.COM
      Valid starting       Expires              Service principal
      09/08/2021 05:47:53  09/08/2021 15:47:53  krbtgt/EXAMPLE-COMPANY.COM@EXAMPLE-COMPANY.COM
              renew until 09/09/2021 05:47:49
      user1@iZrj9gqbtl7xxx          :~$
  4. Monte o sistema de arquivos SMB.

    1. Instale as ferramentas de montagem necessárias.

      • Ubuntu

        sudo apt-get install keyutils cifs-utils
      • CentOS

        sudo yum install keyutils cifs-utils
    2. Execute o comando a seguir para montar o sistema de arquivos.

      sudo mount -t cifs //205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare /mnt -o vers=2.1,sec=krb5,cruid=1004,uid=1004,gid=1004  --verbose

      Substitua 205dee4****-uub48.us-west-1.nas.aliyuncs.com pelo endereço do ponto de montagem do seu sistema de arquivos.

      Nota

      Se você selecionou Enable Encryption in Transit no console NAS, será necessário usar a opção vers=3,0 para montar o sistema de arquivos.

  5. Configure a montagem automática.

    Para montar o sistema de arquivos automaticamente após a reinicialização do cliente Linux, configure a montagem automática.

    1. No arquivo de configuração /etc/auto.master, adicione a seguinte linha:

      /share    /etc/auto.cifs    --timeout=30 --ghost
    2. Modifique o arquivo de configuração /etc/auto.cifs conforme mostrado no exemplo a seguir:

      * -fstype=cifs,vers=2.1,sec=krb5,cruid=${UID},uid=${UID},gid=${GID},file_mode=0700,dir_mode=0700 ://205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare/&

      A lista a seguir descreve os parâmetros principais. Substitua os valores pelas suas informações reais.

      • cruid e uid: O ID do usuário local usera1.

      • gid: O ID de grupo do usuário local usera1.

      • 205dee4****-uub48.us-west-1.nas.aliyuncs.com: O endereço do ponto de montagem.

        No console NAS, acesse a página File System List. Localize seu sistema de arquivos e clique em no ícone **image..png**. Na lista resultante, localize a coluna Mount Target e passe o mouse sobre o ícone **挂载点地址.png** para obter o endereço do ponto de montagem.

    3. Reinicie o serviço autofs.

      systemctl restart autofs.service
    4. Verifique a configuração de montagem automática.

      Por exemplo, crie o diretório //205dee4****-uub48.us-west-1.nas.aliyuncs.com/myshare/usera1 e conceda permissões totais ao usuário usera1.

      Após fazer logon como usuário de domínio do AD, execute o comando ls /share/usera1. Se o conteúdo do diretório usera1 no sistema de arquivos SMB for exibido, a montagem automática estará configurada corretamente.

Gerenciamento de ACLs SMB com cifsacl

Use os comandos getcifsacl e setcifsacl para gerenciar ACLs do sistema de arquivos SMB.

getcifsacl usera1/
usera1@example-company.com@myubuntu:/mnt$ getcifsacl usera1/
REVISION:0x1
CONTROL:0x8404
OWNER:S-1-5-21-2849381876-3817135681-4198507328-1107
GROUP:S-1-5-21-2849381876-3817135681-4198507328-513
ACL:S-1-5-21-2849381876-3817135681-4198507328-1107:ALLOWED/I/FULL
ACL:S-1-3-0:ALLOWED/OI|CI|IO|I/FULL
ACL:S-1-5-18:ALLOWED/OI|CI|I/FULL
ACL:S-1-5-32-544:ALLOWED/OI|CI|I/FULL
ACL:S-1-5-21-3076751034-3769290925-1520581464-512:ALLOWED/OI|CI|I/FULL
sudo setcifsacl -a "ACL:S-1-5-21-3076751034-3769290925-1520581464-513:ALLOWED/OI|CI|I/FULL" usera1/
usera1@example-company.com@myubuntu:/mnt$ sudo setcifsacl -a "ACL:S-1-5-21-3076751034-3769290925-1520581464-513:ALLOWED/OI|CI|I/FULL" usera1/
usera1@example-company.com@myubuntu:/mnt$ getcifsacl usera1
REVISION:0x1
CONTROL:0x8004
OWNER:S-1-5-21-2849381876-3817135681-4198507328-1107
GROUP:S-1-5-21-2849381876-3817135681-4198507328-513
ACL:S-1-5-21-2849381876-3817135681-4198507328-1107:ALLOWED/I/FULL
ACL:S-1-3-0:ALLOWED/OI|CI|IO|I/FULL
ACL:S-1-5-18:ALLOWED/OI|CI|I/FULL
ACL:S-1-5-32-544:ALLOWED/OI|CI|I/FULL
ACL:S-1-5-21-3076751034-3769290925-1520581464-512:ALLOWED/OI|CI|I/FULL
ACL:S-1-5-21-3076751034-3769290925-1520581464-513:ALLOWED/OI|CI|I/FULL
usera1@example-company.com@myubuntu:/mnt$