Dell Unity: Du får ikke tilgang til filer eller mapper i NFS-eksport etter Unity-oppgradering til 5.5
Summary: Linux-brukeren får kanskje ikke tilgang til enkelte filer eller mapper i NFS-eksport (Network File System) etter Unity-oppgradering til 5.5. (Kan rettes opp av bruker)
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
- Brukere kan legge merke til at noen filer ikke kan nås eller mapper ikke kan oppføres etter Unity-oppgradering til 5.5,
- Problemet skjer bare under følgende forhold:
- Klient monterer NFS-eksporten ved hjelp av NFSv4.2, tilgangen er god hvis klienten monterer NFS-eksporten ved hjelp av NFSv3, NFSv4.0 eller 4.1.
- SELinux er aktivert på Linux-klienten.
Her er et eksempel:
- Brukeren test_user kan ikke føre opp innholdet i NFS mountpoint
/mntved montering ved bruk av 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
- Brukeren test_user kan vise den samme mappen etter at klienten har montert NFS-eksporten på nytt ved hjelp av 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
- Fra og med UnityOS 5.5 la Unity til støtte for NFSv4.2. NFSv4.2-protokollstøtte gir ekstra sikkerhet og ytelse, og NFS-attributtstøtte for reservefiler og NFS-merking.
- Sikkerhetsetikettfunksjonen i NFSV4.2 gjør det mulig å lagre og håndheve sikkerhetsetiketter (for eksempel SELinux-kontekster) over NFS-delinger. Denne funksjonen er aktivert på Unity NAS-serveren som standard.
- Når SELinux er aktivert på en Linux-klient, tilordner den en sikkerhetsetikett til hvert objekt i systemene, inkludert filer, mapper, prosesser, porter og enheter.
- Standard sikkerhetskontekst som SELinux tilordner filer i NFS-eksport montert ved hjelp av NFS v3, V4.0 eller v4.1, er
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
- Når klienten monterer NFS-eksporten ved hjelp av NFS v4.2, endres standard sikkerhetskontekst for NFS-filer til
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
- Endringen av sikkerhetskonteksten, spesielt sikkerhetstypen fra nfs_t til default_t, kan forårsake noen tilgangsproblemer ettersom SELinux bestemmer tilgangstillatelsen basert på policyreglene som beregner sikkerhetstypen for brukeren eller prosessen og filer eller mapper.
Resolution
Det finnes flere løsninger. Brukeren bør velge én løsning basert på prioriteringene sine: krav til sikkerhet, enkelhet eller funksjoner.
- Monter NFS-eksporten på nytt ved hjelp av NFSv4.1, NFSv4.0 eller NFSv3 fra klienten
mount -o vers=4.1 <nas server IP>:/<export> /<localmountpoint>
- Monter NFS-eksporten ved hjelp av NFSv4.2, men angi sikkerhetsconext
mount -o context=system_u:object_r:nfs_t:s0 <nas server IP>:/<export> /<localmountpoint>
- Nedgrader NFSv4-versjonen med maksimal støtte på Unity fra v4.2 til v4.1.
Dell Unity: Etter oppgradering til Unity OE versjon 5.5 får ikke NFSv4-klienter tilgang til data
- Deaktiver sikkerhetsetiketten ved Unity
- Endre sikkerhetstypen til filene i NFS-eksport til de riktige basert på kravet.
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
Følgende fremgangsmåte kan følges for å feilsøke tilgangsproblemet med SELinux.
1. Bestem sikkerhetskonteksten til brukeren.
[test_user@RHEL4 ~]$ id -Z user_u:user_r:user_t:s0
- Kontroller at NFS-eksporten er montert ved hjelp av NFSv4.2 og
seclabeler aktivert.
[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)
- Kontroller filsikkerhetskonteksten, og gjenskap problemet
[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
- Se
auditlogfor å bekrefte hvorfor kommandoen mislykkes.
[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
- Når brukeren kjører
lspå/mnt, arver ls-prosessen brukerens sikkerhetstype, bestemmer SELinux-systemet om sikkerhetstypen user_t har lesetillatelse på filtypen default_t. I dette tilfellet erlsKommandoen mislyktes fordi kildesikkerhetstypen user_t ikke har lesetillatelse på filens sikkerhetstype default_t.
Dette kan bekreftes ved å sjekke sikkerhetspolicyreglene.
root@RHEL4 ~]# sesearch -A -s user_t -t default_t -p read [root@RHEL4 ~]#
- Følgende kommando viser alle tillatelsestypene user_t har på 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;
- I ovennevnte utgang tilhører user_t domene, og default_t tilhører base_file_type. Så user_t har bare
getattr, åpne, søketillatelse på katalogen med 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>
- Brukeren kan
cdtil/mntsiden åpent er tillatt.
>allow domain base_file_type:dir { getattr open search }; <<<<
[test_user@RHEL4 ~]$ cd /mnt
[test_user@RHEL4 mnt]$ ls
ls: cannot open directory '.': Permission deniedAffected 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.