Dell Unity: Po upgradu platformy Unity na verzi 5.5 nelze přistupovat k souborům nebo složkám při exportu NFS

Summary: Uživatel systému Linux nemusí mít po upgradu na verzi 5.5 přístup k některým souborům nebo složkám v exportu NFS (Network File System). (oprava uživatelem)

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

  • Uživatelé si mohou všimnout, že po upgradu na verzi 5.5 nelze získat přístup k některým souborům nebo nelze zobrazit seznam složek. 
  • K problému dochází pouze za následujících podmínek: 
    • Klient připojí export NFS pomocí NFSv4.2, přístup je dobrý, pokud klient připojí export NFS pomocí NFSv3, nebo NFSv4.0 nebo 4.1.  
    • SELinux je povolen na linuxovém klientovi. 

Zde je příklad:

  • Uživatel test_user nemůže vypsat obsah přípojného bodu NFS. /mnt při připojování pomocí 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
  • Uživatel test_user může vypsat stejnou složku po opětovném připojení exportu NFS pomocí systému 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

  • Počínaje systémem UnityOS 5.5 byla do řešení Unity přidána podpora pro systém NFSv4.2. Podpora protokolu NFSv4.2 přináší další zabezpečení a výkon a podporu atributů NFS pro náhradní soubory a značení NFS.
  • Funkce popisku zabezpečení v NFSV4.2 umožňuje ukládání a vynucování popisků zabezpečení (například kontextů SELinux) přes sdílené složky NFS. Ve výchozím nastavení je tato funkce na serveru NAS Unity povolena. 
  • Když je SELinux povolen na linuxovém klientovi, přiřadí bezpečnostní štítek každému objektu v systémech včetně souborů, složek, procesů, portů a zařízení. 
  • Výchozí kontext zabezpečení, který SELinux přiřazuje souborům v exportu NFS připojeném pomocí NFS v3, V4.0 nebo v4.1, je 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
  • Když klient připojí export systému souborů NFS pomocí systému NFS verze 4.2, výchozí kontext zabezpečení souborů NFS se změní na 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
  • Změna kontextu zabezpečení, zejména typu zabezpečení z nfs_t na default_t, může způsobit určité problémy s přístupem, protože SELinux určuje přístupová oprávnění na základě pravidel zásad, která vypočítávají typ zabezpečení uživatele nebo procesu a souborů nebo složek.

Resolution

Existuje několik alternativních řešení. Uživatel by si měl vybrat jedno řešení na základě svých priorit: zabezpečení, jednoduchost nebo požadavky na funkce. 

  • Opětovné připojení exportu NFS pomocí systému NFSv4.1, NFSv4.0 nebo NFSv3 z klienta
mount -o vers=4.1 <nas server IP>:/<export> /<localmountpoint>
  • Připojení exportu NFS pomocí NFSv4.2, ale určení zabezpečenídalší
mount -o context=system_u:object_r:nfs_t:s0 <nas server IP>:/<export> /<localmountpoint>
  • Downgrade maximální verze podpory NFSv4 v Unity z verze 4.2 na verzi v4.1. 

Dell Unity: Po upgradu na prostředí Unity OE verze 5.5 nemají klienti NFSv4 přístup k datům

  • Zakázání popisku zabezpečení v poli Unity

Dell Unity: Jak zakázat bezpečnostní štítek přes NFS v Unity OE 5.5 (oprava uživatelem)

  • Změňte typ zabezpečení souborů v exportu NFS na vhodné na základě požadavku. 
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

Při řešení problému s přístupem SELinux lze postupovat podle následujícího postupu. 

1. Určete kontext zabezpečení uživatele.

[test_user@RHEL4 ~]$ id -Z
user_u:user_r:user_t:s0
  1. Ujistěte se, že je export NFS připojen pomocí systému NFSv4.2 a seclabel je povoleno. 
[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. Kontrola kontextu zabezpečení souborů a reprodukce problému
[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. Zkontrolujte, zda na adrese auditlog , abyste potvrdili, proč se příkaz nezdařil.
[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. Když uživatel spustí ls Na kartě /mnt, proces ls zdědí typ zabezpečení uživatele, systém SELinux určí, zda user_t typu zabezpečení má oprávnění ke čtení na default_t typu souboru. V tomto případě ls Příkaz se nezdařil, protože typ zabezpečení zdroje user_t nemá oprávnění ke čtení u default_t typu zabezpečení souboru. 

To lze potvrdit kontrolou pravidel bezpečnostní politiky.

root@RHEL4 ~]# sesearch -A -s user_t -t default_t -p read
[root@RHEL4 ~]#
  1. Následující příkaz vypíše všechna oprávnění, která typ user_t má u typu 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. Ve výše uvedeném výstupu patří user_t do domény a default_t patří do base_file_type. Takže user_t pouze getattr, otevřete, prohledejte adresář s default_t typu.
[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. Uživatel může cd na /mnt protože otevřeno je povoleno. 
>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.