Serje RHCSA: Użu ta' ACLs (Listi ta' Kontroll ta' Aċċess) u Immuntar ta' Samba/Ishma NFS - Parti 7


Fl-aħħar artiklu (serje RHCSA Parti 6) bdejna nispjegaw kif twaqqaf u tikkonfigura l-ħażna tas-sistema lokali billi tuża parted u ssm.

Iddiskutejna wkoll kif toħloq u mmunta volumi kodifikati b'password waqt il-boot tas-sistema. Barra minn hekk, wissijnak biex tevita li twettaq operazzjonijiet kritiċi ta 'ġestjoni tal-ħażna fuq sistemi ta' fajls immuntati. B'dan f'moħħna issa se nirrevedu l-formati tas-sistema tal-fajls l-aktar użati fir-Red Hat Enterprise Linux 7 u mbagħad nipproċedu biex ikopru s-suġġetti tal-immuntar, l-użu, u ż-żarmar kemm manwalment kif ukoll awtomatikament tas-sistemi tal-fajls tan-netwerk (CIFS u NFS), flimkien mal-implimentazzjoni ta’ listi ta’ kontroll ta’ aċċess għas-sistema tiegħek.

Qabel ma tkompli, jekk jogħġbok kun żgur li għandek server Samba u server NFS disponibbli (innota li NFSv2 m'għadux appoġġjat f'RHEL 7).

Matul din il-gwida se nużaw magna bl-IP 192.168.0.10 biż-żewġ servizzi jaħdmu fiha bħala server, u kaxxa RHEL 7 bħala klijent bl-indirizz IP 192.168.0.18. Aktar tard fl-artikolu aħna ngħidulek liema pakketti għandek bżonn tinstalla fuq il-klijent.

Formati tas-Sistema tal-Fajls f'RHEL 7

Ibda b'RHEL 7, XFS ġie introdott bħala s-sistema ta 'fajls default għall-arkitetturi kollha minħabba l-prestazzjoni għolja u l-iskalabbiltà tagħha. Bħalissa jappoġġa daqs massimu ta 'sistema ta' fajls ta '500 TB skont l-aħħar testijiet imwettqa minn Red Hat u l-imsieħba tagħha għal hardware mainstream.

Barra minn hekk, XFS jippermetti user_xattr (attributi estiżi tal-utent) u acl (listi ta' kontroll tal-aċċess POSIX) bħala għażliet ta' muntaġġ awtomatiċi, b'differenza ext3 jew ext4 (ext2 huwa meqjus bħala deprecated minn RHEL 7 ), li jfisser li m'għandekx bżonn tispeċifika dawk l-għażliet b'mod espliċitu jew fuq il-linja tal-kmand jew f'/etc/fstab meta timmonta sistema ta' fajls XFS (jekk trid tiddiżattiva tali għażliet f'dan l-aħħar każ, trid tuża espliċitament < b>no_acl u no_user_xattr).

Żomm f'moħħok li l-attributi tal-utent estiżi jistgħu jiġu assenjati lil fajls u direttorji għall-ħażna ta 'informazzjoni addizzjonali arbitrarja bħat-tip mime, sett ta' karattri jew kodifikazzjoni ta 'fajl, filwaqt li l-permessi tal-aċċess għall-attributi tal-utent huma definiti mill-bits tal-permess tal-fajl regolari.

Peress li kull amministratur tas-sistema, kemm Bidu jew espert, huwa familjari sew mal-permessi ta 'aċċess regolari fuq fajls u direttorji, li jispeċifikaw ċerti privileġġi (aqra, tikteb, u tesegwixxi) għas-sid, il-grupp, u \id-dinja (l-oħrajn kollha) Madankollu, tħossok liberu li tirreferi għall-Parti 3 tas-serje RHCSA jekk ikollok bżonn li jġedded il-memorja tiegħek ftit.

Madankollu, peress li s-sett standard ugo/rwx ma jippermettix li jiġu kkonfigurati permessi differenti għal utenti differenti, ACLs ġew introdotti sabiex jiddefinixxu drittijiet ta 'aċċess aktar dettaljati għal fajls u direttorji minn dawk speċifikati minn permessi regolari.

Fil-fatt, il-permessi definiti mill-ACL huma superset tal-permessi speċifikati mill-bits tal-permess tal-fajl. Ejja naraw kif dan kollu jittraduċi jiġi applikat fid-dinja reali.

1. Hemm żewġ tipi ta 'ACLs: ACLs ta' aċċess, li jistgħu jiġu applikati jew għal fajl speċifiku jew direttorju), u ACLs default, li jistgħu jiġu applikati biss għal direttorju. Jekk il-fajls li jinsabu fihom m'għandhomx sett ACL, huma jirtu l-ACL default tad-direttorju prinċipali tagħhom.

2. Biex tibda, ACLs jistgħu jiġu kkonfigurati għal kull utent, għal kull grupp, jew għal kull utent mhux fil-grupp proprjetarju ta 'fajl.

3. ACLs huma stabbiliti (u mneħħija) bl-użu setfacl, jew bl-għażliet -m jew -x, rispettivament.

Pereżempju, ejjew noħolqu grupp imsejjaħ tecmint u żid l-utenti johndoe u davenull miegħu:

# groupadd tecmint
# useradd johndoe
# useradd davenull
# usermod -a -G tecmint johndoe
# usermod -a -G tecmint davenull

U ejja nivverifikaw li ż-żewġ utenti jappartjenu għal grupp supplimentari tecmint:

# id johndoe
# id davenull

Ejja issa noħolqu direttorju msejjaħ playground fi ħdan/mnt, u fajl bl-isem testfile.txt ġewwa. Se nissettjaw lis-sid tal-grupp biex tecmint u nibdlu l-permessi default ugo/rwx tiegħu għal 770 (permessi ta' aqra, tikteb u tesegwixxi mogħtija kemm lis-sid kif ukoll lis-sid tal-grupp tal-fajl):

# mkdir /mnt/playground
# touch /mnt/playground/testfile.txt
# chmod 770 /mnt/playground/testfile.txt

Imbagħad aqleb l-utent għal johndoe u davenull, f'dik l-ordni, u ikteb fil-fajl:

echo "My name is John Doe" > /mnt/playground/testfile.txt
echo "My name is Dave Null" >> /mnt/playground/testfile.txt

S'issa tajjeb. Issa ejja nħallu lill-utent gacanepa jikteb fil-fajl - u l-operazzjoni tal-kitba tfalli, li kien mistenni.

Imma x'jiġri jekk fil-fatt neħtieġu l-utent gacanepa (li mhuwiex membru tal-grupp tecmint) biex ikollu permessi ta' kitba fuq /mnt/playground/testfile.txt? L-ewwel ħaġa li tista' tiġi f'moħħok hija li żżid dak il-kont tal-utent mal-grupp tecmint. Iżda dan jagħtih il-permessi tal-kitba fuq il-fajls KOLLHA fejn il-bit tal-kitba huwa ssettjat għall-grupp, u ma rridux dan. Irridu biss li jkun jista’ jikteb fuq /mnt/playground/testfile.txt.

# touch /mnt/playground/testfile.txt
# chown :tecmint /mnt/playground/testfile.txt
# chmod 777 /mnt/playground/testfile.txt
# su johndoe
$ echo "My name is John Doe" > /mnt/playground/testfile.txt
$ su davenull
$ echo "My name is Dave Null" >> /mnt/playground/testfile.txt
$ su gacanepa
$ echo "My name is Gabriel Canepa" >> /mnt/playground/testfile.txt

Ejja nagħtu lill-utent gacanepa aċċess għall-qari u l-kitba għal /mnt/playground/testfile.txt.

Mexxi bħala għerq,

# setfacl -R -m u:gacanepa:rwx /mnt/playground

u tkun b'suċċess żiedet ACL li jippermetti lil gacanepa jikteb fil-fajl tat-test. Imbagħad aqleb għall-utent gacanepa u erġa' pprova tikteb fil-fajl:

$ echo "My name is Gabriel Canepa" >> /mnt/playground/testfile.txt

Biex tara l-ACLs għal fajl jew direttorju speċifiku, uża getfacl:

# getfacl /mnt/playground/testfile.txt

Biex tissettja ACL default għal direttorju (li l-kontenut tiegħu se jiret sakemm ma jinkitebx mod ieħor), żid d: qabel ir-regola u speċifika direttorju minflok isem tal-fajl:

# setfacl -m d:o:r /mnt/playground

L-ACL ta' hawn fuq se jippermetti lill-utenti li mhumiex fil-grupp tas-sidien li jkollhom aċċess għall-qari għall-kontenut futur tad-direttorju /mnt/playground. Innota d-differenza fl-output ta’ getfacl /mnt/playground qabel u wara l-bidla:

Il-Kapitolu 20 fil-Gwida uffiċjali għall-Amministrazzjoni tal-Ħażna RHEL 7 jipprovdi aktar eżempji ta 'ACL, u nirrakkomanda ħafna li tagħti ħarsa lejha u jkollokha handy bħala referenza.