Serye sa RHCSA: Paggamit sa mga ACL (Mga Listahan sa Pagkontrol sa Pag-access) ug Pag-mount sa Samba/NFS Shares - Bahin 7


Sa miaging artikulo (serye sa RHCSA Bahin 6) nagsugod kami sa pagpatin-aw kung giunsa ang pag-set up ug pag-configure sa lokal nga pagtipig sa sistema gamit ang parted ug ssm.

Gihisgutan usab namon kung giunsa paghimo ug pag-mount ang mga naka-encrypt nga volume nga adunay password sa panahon sa pag-boot sa system. Dugang pa, gipasidan-an ka namon nga likayan ang paghimo sa kritikal nga mga operasyon sa pagdumala sa pagtipig sa mga naka-mount nga filesystem. Uban niana sa hunahuna atong susihon karon ang labing gigamit nga mga format sa sistema sa file sa Red Hat Enterprise Linux 7 ug dayon ipadayon ang pagtabon sa mga hilisgutan sa pag-mount, paggamit, ug pag-unmount sa mano-mano ug awtomatiko nga mga filesystem sa network (CIFS ug NFS), kauban ang pagpatuman. sa mga lista sa kontrol sa pag-access alang sa imong sistema.

Sa dili pa magpadayon, palihug siguroha nga ikaw adunay usa ka Samba server ug usa ka NFS server nga anaa (timan-i nga ang NFSv2 dili na suportado sa RHEL 7).

Atol niini nga giya mogamit kami og makina nga adunay IP 192.168.0.10 nga adunay duha ka serbisyo nga nagdagan niini isip server, ug usa ka kahon sa RHEL 7 isip kliyente nga adunay IP address 192.168.0.18. Sa ulahi sa artikulo isulti namon kanimo kung unsang mga pakete ang kinahanglan nimo i-install sa kliyente.

Mga Format sa Sistema sa File sa RHEL 7

Sugod sa RHEL 7, ang XFS gipaila-ila isip default file system para sa tanang arkitektura tungod sa taas nga performance ug scalability niini. Kini karon nagsuporta sa usa ka maximum nga filesystem nga gidak-on sa 500 TB sama sa pinakabag-o nga mga pagsulay nga gihimo sa Red Hat ug sa mga kauban niini alang sa mainstream hardware.

Usab, ang XFS makahimo sa user_xattr (extended user attributes) ug acl (POSIX access control lists) isip default mount options, dili sama sa ext3 o ext4 (ext2 gikonsiderar nga wala na gigamit sa RHEL 7 ), nga nagpasabot nga dili nimo kinahanglan nga ipiho ang mga kapilian nga tin-aw bisan sa command line o sa /etc/fstab sa pag-mount sa usa ka XFS filesystem (kung gusto nimo i-disable ang ingon nga mga kapilian sa katapusan nga kaso, kinahanglan nimo nga klaro nga gamiton < b>no_acl ug no_user_xattr).

Hinumdumi nga ang gipalapdan nga mga hiyas sa tiggamit mahimong ma-assign sa mga file ug mga direktoryo alang sa pagtipig sa arbitraryong dugang nga kasayuran sama sa tipo sa mime, set sa karakter o pag-encode sa usa ka file, samtang ang mga pagtugot sa pag-access alang sa mga hiyas sa tiggamit gihubit sa regular nga mga bit sa pagtugot sa file.

Ingon nga ang matag tagdumala sa sistema, bisan bag-o o eksperto, nahibal-an pag-ayo sa mga regular nga pagtugot sa pag-access sa mga file ug direktoryo, nga nagtino sa piho nga mga pribilehiyo (pagbasa, pagsulat, ug pagpatuman) alang sa tag-iya, grupo, ug \sa kalibutan (tanan uban pa) ). Bisan pa, ayaw pagduhaduha sa pag-refer sa Part 3 sa serye sa RHCSA kung kinahanglan nimo nga i-refresh ang imong memorya sa gamay.

Apan, tungod kay ang standard ugo/rwx set wala magtugot sa pag-configure sa lain-laing mga permiso alang sa lain-laing mga tiggamit, ang mga ACL gipaila aron sa pagpasabot sa mas detalyado nga mga katungod sa pag-access alang sa mga file ug mga direktoryo kay sa mga gipiho sa regular nga mga permiso.

Sa pagkatinuod, ang ACL-defined permissions kay superset sa mga permiso nga gipiho sa file permission bits. Atong tan-awon kon sa unsang paagi kining tanan nga paghubad gipadapat sa tinuod nga kalibotan.

1. Adunay duha ka matang sa ACLs: access ACLs, nga mahimong magamit sa bisan hain sa usa ka piho nga file o sa usa ka direktoryo), ug default ACLs, nga magamit lamang sa usa ka direktoryo. Kung ang mga file nga anaa niini walay ACL set, sila makapanunod sa default ACL sa ilang ginikanan nga direktoryo.

2. Sa pagsugod, ang mga ACL mahimong ma-configure kada user, kada grupo, o kada user nga wala sa tag-iya nga grupo sa usa ka file.

3. Ang mga ACL gitakda (ug gitangtang) gamit ang setfacl, nga adunay mga -m o -x nga mga kapilian, matag usa.

Pananglitan, maghimo kita og grupo nga ginganlag tecmint ug idugang ang mga user nga johndoe ug davenull niini:

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

Ug atong pamatud-an nga ang duha ka tiggamit nahisakop sa supplementary group tecmint:

# id johndoe
# id davenull

Maghimo na kita ug direktoryo nga gitawag ug playground sulod sa /mnt, ug usa ka file nga ginganlag testfile.txt sa sulod. Atong ibutang ang tag-iya sa grupo sa tecmint ug usbon ang default ugo/rwx permiso niini ngadto sa 770 (pagbasa, pagsulat, ug pagpatuman sa mga permiso nga gihatag sa tag-iya ug sa tag-iya sa grupo sa file):

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

Dayon ibalhin ang user ngadto sa johndoe ug davenull, sa maong han-ay, ug pagsulat sa file:

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

Sa ingon nga layo sa ingon nga maayo. Karon ipasulat ang user gacanepa sa file - ug ang operasyon sa pagsulat mapakyas, nga gipaabut.

Apan unsa man kon gikinahanglan gayud nato ang user nga gacanepa (nga dili miyembro sa grupo nga tecmint) nga adunay mga permiso sa pagsulat sa /mnt/playground/testfile.txt? Ang unang butang nga mosantop sa imong hunahuna mao ang pagdugang nianang user account sa grupo nga tecmint. Apan kana maghatag kaniya og mga permiso sa pagsulat sa TANAN nga mga file kung ang write bit gitakda alang sa grupo, ug dili namo gusto kana. Gusto lang namo nga makasuwat siya sa /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

Hatagan nato og access ang user gacanepa sa pagbasa ug pagsulat sa /mnt/playground/testfile.txt.

Pagdagan ingon gamut,

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

ug malampuson ka nga nakadugang ug ACL nga nagtugot sa gacanepa sa pagsulat sa test file. Unya switch sa user gacanepa ug pagsulay sa pagsulat sa file pag-usab:

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

Aron makita ang mga ACL alang sa usa ka piho nga file o direktoryo, gamita ang getfacl:

# getfacl /mnt/playground/testfile.txt

Aron mabutang ang default nga ACL sa usa ka direktoryo (nga ang mga sulud niini mapanunod gawas kung ma-overwrite kung dili), idugang ang d: sa wala pa ang lagda ug itakda ang usa ka direktoryo imbes usa ka ngalan sa file:

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

Ang ACL sa ibabaw magtugot sa mga tiggamit nga wala sa tag-iya nga grupo nga adunay access sa pagbasa sa umaabot nga mga sulud sa direktoryo sa /mnt/playground. Timan-i ang kalainan sa output sa getfacl /mnt/playground sa wala pa ug pagkahuman sa pagbag-o:

Ang Kapitulo 20 sa opisyal nga RHEL 7 Storage Administration Guide naghatag og dugang nga mga pananglitan sa ACL, ug girekomenda ko nga imong tan-awon kini ug gamiton kini isip reperensiya.