Dell Unity: Arquivos ou pastas na exportação NFS não podem ser acessados após o upgrade do Unity para a versão 5.5

Summary: O usuário Linux pode não conseguir acessar alguns arquivos ou pastas na exportação do Network File System (NFS) após o upgrade do Unity para a versão 5.5. (Corrigível pelo usuário)

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

  • Os usuários podem notar que alguns arquivos não podem ser acessados ou pastas não podem ser listadas após o upgrade do Unity para a versão 5.5, 
  • O problema só ocorre nas seguintes condições: 
    • O client monta a exportação NFS usando NFSv4.2, o acesso é válido se o client monta a exportação NFS usando NFSv3, NFSv4.0 ou 4.1.  
    • O SELinux está ativado no client Linux. 

Aqui está um exemplo:

  • O test_user do usuário não pode listar o conteúdo do ponto de montagem NFS /mnt ao montar usando o NFSv4.2. 
[test_user@RHEL4 ~]$ mount -v | grep -i mnt
10.xx.xx.48:/test on /mnt type nfs4 (rw,relatime,seclabel,vers=4.2,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.227.xxx.129,local_lock=none,addr=10.60.15.48)

[test_user@RHEL4 ~]$ ls -al /mnt
ls: cannot open directory '/mnt': Permission denied
  • O test_user do usuário pode listar a mesma pasta após o cliente remontar a exportação NFS usando o NFSv4.1.
[test_user@RHEL4 ~]$ mount -v | grep -i mnt
10.xx.xx.48:/test on /mnt type nfs4 (rw,relatime,vers=4.1,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.227.xxx.129,local_lock=none,addr=10.60.15.48)


[test_user@RHEL4 ~]$ ls -al /mnt
total 16
drwxrwxrwx.  6 root root 8192 Jun 18 03:21 .
dr-xr-xr-x. 20 root root  271 Jun  8 19:07 ..
dr-xr-xr-x.  2 root bin   152 Apr 14 03:56 .etc
drwxr-xr-x.  2 root root  152 Jun 18 03:20 folder
drwxr-xr-x.  2 root root 8192 Apr 14 03:56 lost+found

Cause

  • A partir do UnityOS 5.5, o Unity adicionou suporte para NFSv4.2. O suporte ao protocolo NFSv4.2 oferece segurança e desempenho adicionais, além de suporte a atributos NFS de arquivos sobressalentes e rotulagem NFS.
  • O recurso Rótulo de segurança no NFSV4.2 permite que rótulos de segurança (como contextos SELinux) sejam armazenados e aplicados em compartilhamentos NFS. Por padrão, esse recurso está ativado no servidor NAS do Unity. 
  • Quando o SELinux está ativado em um client Linux, ele atribui um rótulo de segurança a todos os objetos dos sistemas, inclusive arquivos, pastas, processos, portas e dispositivos. 
  • O contexto de segurança padrão que o SELinux atribui aos arquivos na exportação NFS montados usando NFS v3, v4.0 ou v4.1 é system_u:object_r:nfs_t:s0.
[root@rhel8 test]# ls -alZ testv4.1
-rw-r--r--. 1 root root system_u:object_r:nfs_t:s0 0 Jun  1 21:47 testv4.1
  • Quando o client monta a exportação NFS usando o NFS v4.2, o contexto de segurança padrão dos arquivos NFS é alterado para unconfined_u:object_r:default_t:s0.
[root@rhel8 test]# ls -alZ testv4.2
-rw-r--r--. 1 root root unconfined_u:object_r:default_t:s0 0 Jun  1  2025 testv4.2
  • A alteração do contexto de segurança, especialmente o tipo de segurança de nfs_t para default_t pode causar alguns problemas de acesso, pois o SELinux determina a permissão de acesso com base nas regras de política que calculam o tipo de segurança do usuário ou processo e arquivos ou pastas.

Resolution

Há várias soluções temporárias. O usuário deve escolher uma solução com base em suas prioridades: segurança, simplicidade ou requisitos de recursos. 

  • Monte novamente a exportação NFS usando NFSv4.1, NFSv4.0 ou NFSv3 do client
mount -o vers=4.1 <nas server IP>:/<export> /<localmountpoint>
  • Monte a exportação NFS usando o NFSv4.2, mas especifique a configuração de segurança
mount -o context=system_u:object_r:nfs_t:s0 <nas server IP>:/<export> /<localmountpoint>
  • Faça downgrade da versão NFSv4 de suporte máximo no Unity de v4.2 para v4.1. 

Dell Unity: Após o upgrade para o Unity OE versão 5.5, os clients NFSv4 não podem acessar os dados

  • Desabilitar a etiqueta de segurança no Unity

Dell Unity: Como desativar a etiqueta de segurança por NFS no Unity OE 5.5 (corrigível pelo usuário)

  • Altere o tipo de segurança dos arquivos na exportação NFS para os arquivos apropriados com base no requisito. 
chcon <user>:<role>:<type>:<level> <file/folders>

For example, change the file type to nfs_t. 

[root@RHEL4 /]# ls -alZ /mnt/nfsv4.2
-rw-r--r--. 1 root root system_u:object_r:default_t:s0 0 Jun 17 00:53 /mnt/nfsv4.2
[root@RHEL4 /]# chcon -t nfs_t /mnt/nfsv4.2
[root@RHEL4 /]# ls -alZ /mnt/nfsv4.2
-rw-r--r--. 1 root root system_u:object_r:nfs_t:s0 0 Jun 17 00:53 /mnt/nfsv4.2

Additional Information

O procedimento a seguir pode ser seguido para solucionar o problema de acesso ao SELinux. 

1. Determine o contexto de segurança do usuário.

[test_user@RHEL4 ~]$ id -Z
user_u:user_r:user_t:s0
  1. Confirme se a exportação NFS está montada usando NFSv4.2 e seclabel está habilitado. 
[test_user@RHEL4 ~]$ mount -v | grep mnt
10.xx.xx.48:/test on /mnt type nfs4 (rw,relatime,seclabel,vers=4.2,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=10.227.xxx.129,local_lock=none,addr=10.xx.xx.48)
  1. Verifique o contexto de segurança do arquivo e reproduza o problema
[test_user@RHEL4 ~]$ ls -aldZ /mnt
drwxrwxrwx. 6 root root system_u:object_r:default_t:s0 8192 Jun 17 07:44 /mnt

[test_user@RHEL4 ~]$ ls -al /mnt
ls: cannot open directory '/mnt': Permission denied
  1. Verifique em auditlog para confirmar por que o comando falha.
[root@RHEL4 ~]# ausearch -m avc -ts recent | tail
----
time->Tue Jun 17 18:30:59 2025
type=PROCTITLE msg=audit(1750xxxx59.577:8407): proctitle=6C73002D2D636F6C6F723Dxxxxx46F002D616C002F6D6E74
type=SYSCALL msg=audit(1750203059.577:8407): arch=c000003e syscall=257 success=no exit=-13 a0=ffffff9c a1=5563f160ca70 a2=90800 a3=0 items=0 ppid=104637 pid=104661 auid=10086 uid=10086 gid=10086 euid=10086 suid=10086 fsuid=10086 egid=10086 sgid=10086 fsgid=10086 tty=pts1 ses=246 comm="ls" exe="/usr/bin/ls" subj=user_u:user_r:user_t:s0 key=(null)
type=AVC msg=audit(1750xxxx59.577:8407): avc:  denied  { read } for  pid=104661 comm="ls" name="/" dev="0:47" ino=2 scontext=user_u:user_r:user_t:s0 tcontext=system_u:object_r:default_t:s0 tclass=dir permissive=0
  1. Quando o usuário executa ls sobre o /mnt, o processo ls herda o tipo de segurança do usuário, o sistema SELinux determina se o tipo de segurança user_t tem permissão de leitura no tipo de arquivo default_t. Nesse caso, o ls O comando falhou porque o tipo de segurança de origem user_t não tem permissão de leitura no tipo de segurança do arquivo default_t. 

Isso pode ser confirmado verificando as regras da política de segurança.

root@RHEL4 ~]# sesearch -A -s user_t -t default_t -p read
[root@RHEL4 ~]#
  1. O comando a seguir lista todas as permissões que o tipo user_t tem no tipo default_t.
[root@RHEL4 ~]# sesearch -A -s user_t -t default_t
allow domain base_file_type:dir { getattr open search };  
allow domain file_type:blk_file map; [ domain_can_mmap_files ]:True
allow domain file_type:chr_file map; [ domain_can_mmap_files ]:True
allow domain file_type:file map; [ domain_can_mmap_files ]:True
allow domain file_type:lnk_file map; [ domain_can_mmap_files ]:True
allow user_usertype file_type:filesystem getattr;
  1. Na saída acima, user_t pertence ao domínio e default_t pertence a base_file_type. Então, user_t só tem getattr, abrir, permissão de pesquisa no diretório com default_t tipo.
[root@RHEL4 mnt]# seinfo -t default_t -x

Types: 1
   type default_t, base_file_type, file_type, mountpoint, non_auth_file_type, non_security_file_type;


[root@RHEL4 mnt]# seinfo -t user_t -x | grep domain
   type user_t, application_domain_type, nsswitch_domain, corenet_unlabeled_type, domain, kernel_system_state_reader, netlabel_peer_type, privfd, process_user_target, scsi_generic_read, scsi_generic_write, syslog_client_type, pcmcia_typeattr_1, user_usertype, login_userdomain, userdomain, unpriv_userdomain, userdom_home_reader_type, userdom_filetrans_type, xdmhomewriter, x_userdomain, x_domain, dridomain, xdrawable_type, xcolormap_type;
/pre>
  1. O usuário pode cd para /mnt desde que aberto é permitido. 
>allow domain base_file_type:dir { getattr open search };   <<<<

[test_user@RHEL4 ~]$ cd /mnt
[test_user@RHEL4 mnt]$ ls
ls: cannot open directory '.': Permission denied

Affected Products

Dell EMC Unity, Dell Unity Operating Environment (OE)
Article Properties
Article Number: 000334013
Article Type: Solution
Last Modified: 25 Jun 2025
Version:  2
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.