Observação:

Usar e Ativar ACLs no Oracle Linux

Introdução

As ACLs (Listas de Controle de Acesso) fornecem controle de acesso a diretórios e arquivos. As ACLs podem definir permissões de leitura, gravação e execução para o proprietário, grupo e todos os outros usuários do sistema.

Uma ACL consiste em um conjunto de regras que especificam como um usuário ou grupo pode acessar arquivos e diretórios ativados pela ACL. Uma entrada ACL regular especifica informações de acesso para um único arquivo ou diretório. Uma entrada ACL padrão é definida somente em diretórios e especifica as informações de acesso padrão para qualquer arquivo dentro do diretório que não tenha uma ACL de acesso.

Ao definir uma ACL padrão em um diretório, seus subdiretórios herdam os mesmos direitos automaticamente. As ACLs podem ser usadas com os sistemas de arquivos btrfs, ext3, ext4, OCFS2 e XFS, bem como sistemas de arquivos NFS montados.

Objetivos

Requisitos

Um sistema com um disco disponível e uma instalação totalmente corrigida do Oracle Linux.

Configurar Ambiente de Laboratório

Observação: ao usar o ambiente de laboratório gratuito, consulte Conceitos Básicos do Oracle Linux Lab para obter conexão e outras instruções de uso.

  1. Se ainda não estiver conectado, abra um terminal e conecte-se via ssh à instância ol-node01.

    ssh oracle@<ip_address_of_instance>
    
  2. Verifique se os volumes em blocos existem.

    sudo lsblk -f
    

    A saída do ambiente de laboratório gratuito mostra dois dispositivos de bloco: sda, que contém o SO base e sdb, que este laboratório usa. O uso da opção -f exibe o tipo de sistema de arquivos (FSTYPE) e o identificador exclusivo universalmente dos blocos (UUID).

Montar o Sistema de Arquivos com Suporte a ACL

  1. Crie um diretório de ponto de montagem.

    sudo mkdir /test
    
  2. Verifique se o suporte a ACL existe.

    Os sistemas de arquivos do Oracle Linux, como ext4, btrfs e xfs, ativam a opção de montagem acl como padrão. Em um sistema de arquivos ext4, como /dev/sdb1, verifique-o com tune2fs.

    sudo tune2fs -l /dev/sdb1 | grep -i acl
    

    Exemplo de Saída:

    [oracle@ol-node01 ~]$ sudo tune2fs -l /dev/sdb1 | grep -i acl
    Default mount options:    user_xattr acl
    
  3. Monte o disco com suporte para ACL.

    Se o sistema de arquivos não tiver a opção de montagem acl ativada por padrão, passe -o acl ao usar o comando mount. Como o /dev/sdb1 usa ext4, essa opção já está ativada por padrão.

    sudo mount -t ext4 /dev/sdb1 /test
    

    Para tornar esse ponto de montagem persistente entre reinicializações, adicione-o ao arquivo fstab.

    MYUUID=$(sudo blkid | grep UUID= | grep sdb1 | awk '{ print $2 }')
    echo "$MYUUID /test ext4 defaults 0 0" | sudo tee -a /etc/fstab > /dev/null
    
  4. Verifique se a montagem do sistema de arquivos existe.

    df -T | grep sdb1
    

    A saída mostra que o sistema de arquivos ext4 /dev/sdb1 existe no ponto de montagem /test.

Usar a Funcionalidade ACL

  1. Tente criar um arquivo sob o novo ponto de montagem.

    touch /test/file1
    

    Exemplo de Saída:

    touch: cannot touch '/test/file1': Permission denied
    

    O comando falha porque o usuário oracle não tem permissão para criar arquivos no diretório /test.

  2. Obtenha as informações de ACL do diretório.

    sudo getfacl /test
    

    Exemplo de Saída:

    [oracle@ol-node01 ~]$ sudo getfacl /test
    getfacl: Removing leading '/' from absolute path names
    # file: test
    # owner: root
    # group: root
    user::rwx
    group::r-x
    other::r-x
    
  3. Adicione uma regra ACL ao diretório.

    sudo setfacl -m u:oracle:rwx /test
    

    A regra concede permissões read, write e execute ao usuário oracle.

  4. Verifique as informações de ACL atualizadas do diretório.

    sudo getfacl /test
    

    Exemplo de Saída:

    getfacl: Removing leading '/' from absolute path names
    # file: test
    # owner: root
    # group: root
    user::rwx
    user:oracle:rwx
    group::r-x
    mask::rwx
    other::r-x
    

    A saída mostra a linha user:oracle:rwx recém-adicionada.

  5. Mostre o formato longo de listagem apenas do diretório.

    ls -ld /test
    

    Exemplo de Saída:

    drwxrwxr-x+ 3 root root 4096 Jul 13 20:48 /test
    

    As permissões mostradas na saída incluem um sinal de mais (+) indicando a inclusão de uma ACL.

  6. Tente criar o arquivo novamente.

    touch /test/file1
    

    O comando deverá ter sucesso desta vez.

  7. Confirme a criação do arquivo.

    ls -l /test
    

Verifique as páginas man getfacl ou man setfacl para obter opções e exemplos adicionais.

Para Obter Mais Informações

Consulte outros recursos relacionados:

Mais Recursos de Aprendizagem

Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal YouTube do Oracle Learning. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.

Para obter a documentação do produto, visite o Oracle Help Center.