Dell Unity: heeft geen toegang tot bestanden of mappen in NFS-export na upgrade naar Unity OE 5.5

Samenvatting: Linux-gebruiker heeft mogelijk geen toegang tot sommige bestanden of mappen in Network File System (NFS)-export na een upgrade naar Unity OE 5.5.

Dit artikel is van toepassing op Dit artikel is niet van toepassing op Dit artikel is niet gebonden aan een specifiek product. Niet alle productversies worden in dit artikel vermeld.

Symptomen

  • Gebruikers kunnen merken dat sommige bestanden niet kunnen worden geopend of mappen niet kunnen worden weergegeven na een Unity upgrade naar Operating Environment (OE) 5.5
  • Het probleem doet zich alleen voor onder de volgende omstandigheden: 
    • Client koppelt de NFS-export met behulp van NFSv4.2, is de toegang goed als de client de NFS-export koppelt met behulp van NFSv3Of NFSv4.0Of NFSv 4.1.  
    • SELinux is ingeschakeld op de Linux-client. 

Hier is een voorbeeld:

  • Gebruiker test_user kan de inhoud van NFS-koppelpunt niet weergeven /mnt Bij montage met behulp van 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
  • Gebruiker test_user kan dezelfde map weergeven nadat de client de NFS-export opnieuw heeft gekoppeld met behulp van 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

Oorzaak

  • Unity toegevoegde ondersteuning voor NFSv4.2 vanaf Unity OE 5.5. NFSv4.2 protocolsupport zorgt voor extra beveiliging en prestaties, en ondersteuning voor NFS-kenmerken van reservebestanden en NFS-labeling.
  • De beveiligingslabelfunctie in NFSV4.2 Hiermee kunt u beveiligingslabels (zoals SELinux contexten) om te worden opgeslagen en afgedwongen via NFS-shares. Deze functie is standaard ingeschakeld op de Unity NAS-server. 
  • Wanneer SELinux is ingeschakeld op een Linux-client, wijst het een beveiligingslabel toe aan elk object in de systemen, inclusief bestanden, mappen, processen, poorten en apparaten. 
  • De standaardbeveiligingscontext die SELinux wijst toe aan bestanden in NFS-export die is gekoppeld met behulp van NFS v3, V4.0Of v4.1 Is 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
  • Wanneer de client de NFS-export koppelt met behulp van NFS v4.2, wordt de standaardbeveiligingscontext van NFS-bestanden gewijzigd in 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
  • De verandering van de beveiligingscontext, met name het beveiligingstype van nfs_t Aan default_t kan toegangsproblemen veroorzaken, aangezien SELinux Bepaalt de toegangsmachtiging op basis van de beleidsregels die het beveiligingstype van de gebruiker of het proces en bestanden of mappen berekenen.

Oplossing

    Gebruikers moeten één oplossing kiezen op basis van hun prioriteiten: beveiliging, eenvoud of functievereisten. 
     

    • Koppel de NFS-export opnieuw met behulp van NFSv4.1, NFSv4.0, or NFSv3 Van klant:
    mount -o vers=4.1 <nas server IP>:/<export> /<localmountpoint>
    • De NFS-export koppelen met behulp van NFSv4.2 maar specificeer de beveiligingscontext:
    mount -o context=system_u:object_r:nfs_t:s0 <nas server IP>:/<export> /<localmountpoint>
    • Wijzig het beveiligingstype van de bestanden in NFS-export naar de juiste bestanden op basis van de vereiste:
    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
    

    Extra informatie

    De volgende procedure kan worden gevolgd om problemen met SELinux Probleem met toegang. 

    1. Bepaal de beveiligingscontext van de gebruiker:

    [test_user@RHEL4 ~]$ id -Z
    user_u:user_r:user_t:s0
    
    1. Controleer of de NFS-export wordt gekoppeld met behulp van NFSv4.2 als seclabel is ingeschakeld:
    [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. Controleer de beveiligingscontext van het bestand en reproduceer het probleem:
    [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. Controleer op auditlog Ga als volgt te werk om te bevestigen waarom de opdracht mislukt:
    [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. Wanneer de gebruiker ls op de /mntDe ls proces neemt het beveiligingstype van de gebruiker over, de SELinux Het systeem bepaalt of het beveiligingstype user_t Heeft leesrechten op het bestandstype default_t. In dit geval is de ls Opdracht mislukt omdat het type bronbeveiliging user_t Heeft geen leesrechten op het beveiligingstype van het bestand default_t

    Dit kan worden bevestigd door de regels van het beveiligingsbeleid te controleren:

    root@RHEL4 ~]# sesearch -A -s user_t -t default_t -p read
    [root@RHEL4 ~]#
    1. De volgende opdracht bevat alle machtigingstypen user_t heeft op type 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. In de bovenstaande uitvoer, user_t behoort tot het domein, en default_t behoort tot base_file_type.
      Dus user_t heeft alleen getattr, open, zoekrechten op de map met default_t Type.
    [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. De gebruiker kan cd Aan /mnt aangezien open is toegestaan. 
    >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

    Getroffen producten

    Dell EMC Unity, Dell Unity Operating Environment (OE)
    Artikeleigenschappen
    Artikelnummer: 000334013
    Artikeltype: Solution
    Laatst aangepast: 17 apr. 2026
    Versie:  4
    Vind antwoorden op uw vragen via andere Dell gebruikers
    Support Services
    Controleer of uw apparaat wordt gedekt door Support Services.