DEV Community

Emre Karabulut for Açıklab

Posted on • Updated on

Access Control (ACL) (ubuntu 18.04)

Getfacl ; Dosyaların ACL bilgisine erişmek için kullanılır.

Setfacl ; Dosyaların ACL bilgisini girmek için kullanılır.

İki tip ACL bilgisi vardır. Eğer önceden ayarlanmış ise default olan ACL vardır, bir de normal ACL vardır.

Normal ACL hem dosya hem de dizinler için kullanılabilir.

Default ACL sadece dizinler üstünde kullanılabilir.

Öncelikle getfacl ve setfacl programları gibi çeşitli ACL yardımcı programlarını içeren acl paketimizi kuruyoruz.

sudo su apt install acl

Daha sonra bölümleri bağlama işlemini otomatikleştirmek için gerekli bilgileri içeren Fstab dosyamıza giriyoruz.

nano /etc/fstab

Fstab içinde listelenen bölümler, önyükleme işlemi sırasında otomatik olarak bağlanacak şekilde yapılandırılabilir.

Alt Text

Dosya sistemini önyükleme sırasında kontrol etmeyi ve ağ paylaşımlarını devre dışı bırakmak için "0" kullanırız.

device name mount point fs-type options dump-freq pass-num

/dev/sda1    /storage    ext3    defaults,   acl    0 0

Sistemi restart etmeden ACL’ yi aktif etmek için;

sudo mount -o remount /storage

Eğer bütün ACL bilgilerini yok etmek ve kullanmak istemiyorsanız;

–remove-all (-b) seçeneği ile o dosya üstünde tekrar normal Linux izin ve sahiplik seviyesine inebilirsiniz.

setfacl –remove-all /myfs/acl_ornek

Örnek Kullanım

emre Kullanıcısı için( r ) okuma değeri verildi.

sudo setfacl -m u:emre:r /home/test.txt

“ test.txt “ dosyasının acl bilgilerine erişildi.

sudo getfacl /home/test.txt

user::rwx
user:emre:r--
group::---
mask::r--
other::---

emre kullanıcısı ile erişmeyi deneyelim;

cat /home/test.txt 

user: emre: r-- ==>( Sadece read yani okuma izni verilmiş. )

Başka bir kullanıcı ile denendiğinde;

ubuntu@emre: cat /home/test

ubuntu :: --- ==> “Permission denied” izin yetkisi reddedildi uyarısı alır.“

Geçerli ACL (ler) i değiştir.

-m modify the current ACL(s) of file(s)

Dosyaların ACL'lerinden girişleri kaldır.

-x mremove entries from the ACL(s) of file(s)

Tüm genişletilmiş ACL girişlerini kaldır.

-b remove all extended ACL entries

Alt dizinlere yineleme.

-R recurse into subdirectories

İşlemleri varsayılan ACL'ye uygulanır.

-d operations apply to the default ACL

Varsayılan ACL'yi kaldır.

-k remove the default ACL

Dosya geri yükleme ACL'leri (getfacl -R'nin tersi)

--restore=file restore ACLs (inverse of `getfacl -R')

Açık Kaynak Yazılımları

Top comments (0)