Otu esi edobe ndepụta njikwa nnweta (ACLs) na oke diski maka ndị ọrụ na otu


Ndepụta njikwa ohere (nke a makwaara dị ka ACLs) bụ akụkụ nke kernel Linux na-enye ohere ịkọwapụta ikike ịnweta ohere maka faịlụ na akwụkwọ ndekọ aha karịa nke akọwapụtara site na ikike ugo/rwx oge niile.

Dịka ọmụmaatụ, ikikere ugo/rwx ọkọlọtọ anaghị enye ohere ịtọ ikike dị iche iche maka ndị ọrụ ma ọ bụ otu dị iche iche. Site na ACL nke a dị mfe ime, dịka anyị ga-ahụ n'isiokwu a.

Lelee ndakọrịta sistemụ faịlụ yana ACL

Iji hụ na sistemụ faịlụ gị na-akwado ACL ugbu a, ị kwesịrị ịlele na etinyere ya site na iji nhọrọ acl. Iji mee nke ahụ, anyị ga-eji tune2fs maka sistemụ faịlụ ext2/3/4 dị ka egosiri n'okpuru. Dochie/dev/sda1 na ngwaọrụ ma ọ bụ sistemụ faịlụ ịchọrọ ịlele:

# tune2fs -l /dev/sda1 | grep "Default mount options:"

Mara: Site na XFS, a na-akwado ndepụta njikwa nnweta site na igbe ahụ.

Na sistemụ faịlụ ext4 na-esote, anyị nwere ike ịhụ na enyerela ACL maka/dev/xvda2:

# tune2fs -l /dev/xvda2 | grep "Default mount options:"

Ọ bụrụ na iwu ahụ dị n'elu anaghị egosi na ejirila nkwado maka ACL kwadoro usoro faịlụ ahụ, ọ ga-abụ na nhọrọ noacl dị na /etc/fstab.

N'okwu ahụ, wepụ ya, wepụ ya na sistemụ faịlụ, wee bulie ya ọzọ, ma ọ bụ malitegharịa usoro gị mgbe ịchekwaa mgbanwe na /etc/fstab.

Na-ewebata ACL na Linux

Iji gosi ka ACL si arụ ọrụ, anyị ga-eji otu akpọrọ ndị mmepe wee tinye ndị ọrụ walterwhite na saulgoodman (ee, abụ m onye na-agbaji ihe ọjọọ!) na ya.:

# groupadd developers
# useradd walterwhite
# useradd saulgoodman
# usermod -a -G developers walterwhite
# usermod -a -G developers saulgoodman

Tupu anyị aga n'ihu, ka anyị nyochaa na agbakwunyela ndị ọrụ abụọ ahụ na otu ndị mmepe:

# id walterwhite
# id saulgoodman

Ka anyị mepụta ndekọ a na-akpọ ule na /mnt, na faịlụ aha ya bụ acl.txt n'ime (/mnt/test/acl.txt).

Mgbe ahụ anyị ga-edobe onye nwe otu ahụ na ndị nrụpụta wee gbanwee ikike ugo/rwx ndabara ya ugboro ugboro ka ọ bụrụ 770 (si otú a na-enye ikike ịgụ, dee na mebie ikike enyere ma onye nwe ya na onye nwe otu faịlụ ahụ):

# mkdir /mnt/test
# touch /mnt/test/acl.txt
# chgrp -R developers /mnt/test
# chmod -R 770 /mnt/test

Dị ka a tụrụ anya, ị nwere ike idegara /mnt/test/acl.txt dị ka walterwhite ma ọ bụ saulgoodman:

# su - walterwhite
# echo "My name is Walter White" > /mnt/test/acl.txt
# exit
# su - saulgoodman
# echo "My name is Saul Goodman" >> /mnt/test/acl.txt
# exit

Dị nnọọ mma. Agbanyeghị, anyị ga-ahụ nsogbu n'oge na-adịghị anya mgbe anyị kwesịrị inye ohere ide /mnt/test/acl.txt maka onye ọrụ ọzọ na-anọghị na otu ndị mmepe.

Ikikere ugo/rwx ọkọlọtọ ga-achọ ka agbakwunye onye ọrụ ọhụrụ na otu ndị nrụpụta, mana nke ahụ ga-enye ya otu ikike maka ihe niile nke otu ahụ nwere. Nke ahụ bụ kpọmkwem ebe ACL na-abịa aka.

Ịtọlite ACL na Linux

Enwere ụdị ACL abụọ: ịnweta ACL bụ (nke etinyere na faịlụ ma ọ bụ ndekọ), yana ndabara (nhọrọ) ACL, nke enwere ike itinye naanị na ndekọ.

Ọ bụrụ na faịlụ n'ime ndekọ ebe edobere ACL ndabara enweghị ACL nke ha, ha na-eketa ACL ndabara nke akwụkwọ ndekọ aha nne na nna ha.

Ka anyị nye onye ọrụ gacanepa ịgụ na dee ohere /mnt/test/acl.txt. Tupu ime nke ahụ, ka anyị lelee ntọala ACL dị ugbu a na ndekọ ahụ yana:

# getfacl /mnt/test/acl.txt

Mgbe ahụ gbanwee ACL na faịlụ ahụ, jiri u: sochiri aha njirimara yana :rw iji gosi ikike ịgụ/dee:

# setfacl -m u:gacanepa:rw /mnt/test/acl.txt

Ma gbaa getfacl na faịlụ ahụ ọzọ iji tụnyere. Foto a na-egosi \Mbupu na \E mechara:

# getfacl /mnt/test/acl.txt

Na-esote, anyị ga-achọ inye ndị ọzọ mebie ikike na /mnt/nyocha ndekọ:

# chmod +x /mnt/test

Buru n'uche na iji nweta ọdịnaya nke ndekọ aha, onye ọrụ oge niile kwesịrị ime ikike na ndekọ ahụ.

Onye ọrụ gacanepa kwesiri inwe ike ide na faịlụ a ugbu a. Banye na akaụntụ onye ọrụ ahụ wee mebie iwu a iji kwado:

# echo "My name is Gabriel Cánepa" >> /mnt/test/acl.txt

Ka ịtọọ ACL ndabara na ndekọ (nke ọdịnaya ya ga-eketa ma ọ bụrụ na edeghị ya ọzọ), tinye d: tupu iwu ahụ wee kọwaa ndekọ aha kama aha faịlụ:

# setfacl -m d:o:r /mnt/test
# getfacl /mnt/test/

ACL dị n'elu ga-ekwe ka ndị ọrụ na-anọghị na ndị nwe ya nwee ike ịgụta ọdịnaya n'ọdịnihu nke /mnt/nyocha ndekọ. Rịba ama ọdịiche dị na mmepụta nke getfacl /mnt/ule tupu na mgbe mgbanwe gasịrị:

Iji wepu otu ACL, dochie -m n'iwu ndị dị n'elu na -x. Ọmụmaatụ,

# setfacl -x d:o /mnt/test

N'aka nke ọzọ, ị nwekwara ike iji nhọrọ -b wepụ ACL nile n'otu nzọụkwụ:

# setfacl -b /mnt/test

Maka ozi ndị ọzọ na ọmụmaatụ maka iji ACLs, biko rụtụ aka na isi nke 10, ngalaba 2, nke openSUSE Security Guide (dịkwa maka nbudata n'efu na ụdị PDF).

Tọọ oke Linux Disk na ndị ọrụ na sistemụ faịlụ

Oghere nchekwa bụ ihe ọzọ a ga-ejirịrị nke ọma wee nyochaa ya. Iji mee nke ahụ, enwere ike ịtọ oke na sistemụ faịlụ, maka ndị ọrụ n'otu n'otu ma ọ bụ maka otu.

Ya mere, a na-etinye oke n'iji diski a na-enye onye ọrụ ma ọ bụ otu otu, ma ị nwere ike ijide n'aka na diski gị agaghị ejupụta n'ikike site n'aka onye na-akpachapụ anya (ma ọ bụ onye na-adịghị mma).

Ihe mbụ ị ga-eme iji mee ka quotas dị na sistemụ faịlụ bụ ịkwanye ya na usrquota ma ọ bụ grpquota (maka onye ọrụ na quotas otu, n'otu n'otu) nhọrọ na /etc/fstab.

Dịka ọmụmaatụ, ka anyị mee ka quotas dabere na onye ọrụ na /dev/vg00/vol_backups na oke dabere na otu na /dev/vg00/vol_projects.

Rịba ama na a na-eji UUID chọpụta usoro faịlụ ọ bụla.

UUID=f6d1eba2-9aed-40ea-99ac-75f4be05c05a /home/projects ext4 defaults,grpquota 0 0
UUID=e1929239-5087-44b1-9396-53e09db6eb9e /home/backups ext4 defaults,usrquota 0 0

Wepu ma bugharịa sistemụ faịlụ abụọ a:

# umount /home/projects
# umount /home/backups
# mount -o remount /home/projects
# mount -o remount /home/backups 

Wee lelee na nhọrọ usrquota na grpquota dị na mmepụta nke ugwu (lee nke akọwapụtara n'okpuru):

# mount | grep vg00

N'ikpeazụ, gbasoo iwu ndị a ka ịmalite ma mee ka oke:

# quotacheck -avugc
# quotaon -vu /home/backups
# quotaon -vg /home/projects

Nke ahụ kwuru, ka anyị kenye ugbu a oke na aha njirimara na otu anyị kwuru na mbụ. Ị nwere ike mechaa gbanyụọ oke oke na oke oke.

Ịtọ ntọala Linux Disk Quots

Ka anyị bido site n'itinye ACL na/ụlọ/nkwado ndabere maka onye ọrụ gacanepa, nke ga-enye ya ịgụ, dee na mebie ikike na ndekọ ahụ:

# setfacl -m u:gacanepa:rwx /home/backups/

Mgbe ahụ,

# edquota -u gacanepa

Anyị ga-eme ka njedebe dị nro = 900 na njedebe siri ike = 1000 blocks (1024 bytes/block * 1000 blocks = 1024000 bytes = 1 MB) nke ohere diski.

Anyị nwekwara ike idowe oke nke 20 na 25 dị ka oke nro na ike siri ike na ọnụọgụ faịlụ nke onye ọrụ a nwere ike ịmepụta.

Iwu a dị n'elu ga-eji faịlụ nwa oge malite onye editọ ederede ($EDITOR) ebe anyị nwere ike ịtọ oke a kpọtụrụ aha na mbụ:

Ntọala ndị a ga-eme ka egosi onye ọrụ gacanepa ịdọ aka ná ntị mgbe o ruru 900-block ma ọ bụ 20-inode ókè maka oge amara nke 7 ụbọchị.

Ọ bụrụ na ekpochapụghị ọnọdụ oke oke site na mgbe ahụ (dịka ọmụmaatụ, site na iwepu faịlụ), njedebe dị nro ga-abụ njedebe siri ike na onye ọrụ a ga-egbochi iji ohere nchekwa ma ọ bụ ịmepụta ọtụtụ faịlụ.

Iji nwalee, ka onye ọrụ gacanepa nwaa imepụta faịlụ 2 MB efu aha ya bụ test1 n'ime/ụlọ/ndabere:

# dd if=/dev/zero of=/home/backups/test1 bs=2M count=1
# ls -lh /home/backups/test1

Dịka ị na-ahụ, faịlụ arụ ọrụ ide na-ada ada n'ihi oke diski agafeela. Ebe ọ bụ na naanị 1000 KB mbụ ka edere na diski, ihe ga-esi na nke a pụta ga-abụ faịlụ rụrụ arụ.

N'otu aka ahụ, ị nwere ike ịmepụta ACL maka otu ndị mmepe iji nye ndị otu ahụ rwx ohere na /home/projects:

# setfacl -m g:developers:rwx /home/projects/

Ma tinye oke oke na:

# edquota -g developers

Dịka anyị mere onye ọrụ gacanepa na mbụ.

Enwere ike ịkọwa oge amara maka ọnụọgụ sekọnd, nkeji, awa, ụbọchị, izu ma ọ bụ ọnwa ọ bụla site n'ime ya.

# edquota -t

na imelite ụkpụrụ n'okpuru oge amara Block na oge amara Inode.

N'adịghị ka igbochi ma ọ bụ ojiji inode (nke edobere na onye ọrụ ma ọ bụ otu-ndabere), edobere oge amara n'usoro.

Iji kọọ oke, ị nwere ike iji quota -u [onye ọrụ] ma ọ bụ quota -g [otu] maka ndepụta ngwa ngwa ma ọ bụ repquota -v [/path/to /filesystem] maka nkọwa zuru ezu (okwu ọnụ) yana akụkọ a haziri nke ọma.

N'ezie, ị ga-achọ iji onye ọrụ kpọmkwem dochie [onye ọrụ], [otu] , na [/path/to/filesystem] aha otu na sistemụ faịlụ ịchọrọ ịlele.

Nchịkọta

N'ime edemede a, anyị akọwala otu esi edobe Ndepụta Njikwa Access na oke diski maka ndị ọrụ na otu. Iji ha abụọ, ị ga-enwe ike ijikwa ikike na ojiji diski nke ọma.

Ọ bụrụ na ịchọrọ ịmatakwu gbasara oke oke, ị nwere ike zoo aka na Quota Mini-HowTo na Linux Documentation Project.

Ọ baghị uru ikwu, ị nwekwara ike ịtụkwasị anyị obi ịza ajụjụ. Naanị nyefee ha site na iji ụdị nkọwa dị n'okpuru ebe a na anyị ga-enwe obi ụtọ karịa ilele anya.