همه چیز درباره لیست کنترل دسترسی لینوکس (ACL)

همه چیز درباره لیست کنترل دسترسی لینوکس (ACL)

acl لینوکس
acl لینوکس
acl لینوکس
acl لینوکس

Linux Access Control List

مجوزهای استاندارد لینوکس برای اکثر موارد رضایت بخش هستند، اما محدودیت دارند.

مجوز محدود کردن دسترسی به یک فایل به مالک فایل، عضویت در یک گروه واحد یا هرکدام دیگر محدود می شود.

ممکن است برای این فرایند (یک برنامه در حال اجرا) برای عضو بودن از گروه مالکیت پرونده مناسب نباشد و حتی مجبور به مجوز برای همه باشد.

ACL ها اجازه می دهد مجوزهای ریز را به یک فایل اختصاص دهند.

کاربران نامگذاری شده یا گروه های نامگذاری شده،

و همچنین کاربران و گروه های شناسایی شده توسط UID یا GUID،

می توانند مجوز ها، علاوه بر صاحب پرونده استاندارد، مالک گروه، و سایر پرونده ها، مجوز ها را اعطا کنند.

همان پرچمهای مجوز اعمال میشوند: r-read، w-write، x-execute.

صاحب پرونده می تواند ACL ها را بر روی فایل ها یا دایرکتوری های خاص تنظیم کند.

فایل های جدید و زیر پوشه ها می توانند به طور خودکار تنظیمات ACL را از ACL های پیش فرض دایرکتوری والدین، اگر آنها تنظیم شده است، به ارث برده اند.

شبیه به قوانین دسترسی به فایل های عادی، سلسله مراتب پوشه دامین نیاز به حداقل مجوز مجوز دیگری برای فعال کردن کاربران نامیده شده و گروه های نامگذاری برای دسترسی دارند.

دو نوع ACL وجود دارد: دسترسی ACL ها و ACL های پیش فرض.

ACL دسترسی یک لیست کنترل دسترسی برای یک فایل یا دایرکتوری خاص است.

ACL پیش فرض فقط می تواند با یک دایرکتوری مرتبط باشد؛

اگر یک فایل در داخل دایرکتوری دسترسی ACL ندارد، از قوانین ACL پیش فرض برای دایرکتوری استفاده می کند.

ACL های پیش فرض اختیاری هستند.

 

گزینه سیستم فایل سیستم

سیستم فایل باید با پشتیبانی ACL فعال شود.

سیستم فایل XFS دارای پشتیبانی ACL ساخته شده است.

نسخه جدید سیستم فایل ext4 دارای گزینه acl به طور پیش فرض فعال شده است،

اما نسخه قبلی سیستم فایل ext4 ممکن است نیاز به گزینه ACL همراه با درخواست mount یا سوپر بلوک باشد.

 

مشاهده و تفسیر مجوز ACL

دستور ls -l تنها جزئیات تنظیمات ACL را نمایش می دهد.

$  ls -l test

-rw-rw-r– + 1 someone someone 0 Dec 15 23:53 test

“+” در انتهای رشته مجوز 10 کاراکتر نشان می دهد که تنظیمات ACL مرتبط با این فایل وجود دارد

. پرچم های کاربر، گروه و دیگر “rwx” را به عنوان تعریف کنید

کاربران: تنظیمات کاربر ACL را نشان می دهد، که همان تنظیمات فایل کاربر استاندارد است؛ rwx

گروه: تنظیمات ماسک فعلی ACL را نشان می دهد، نه تنظیمات گروه مالک؛ RW

دیگران: سایر تنظیمات ACL را نشان می دهد، که همان تنظیمات دیگر فایل های استاندارد است؛ هیچ دسترسی.

acl لینوکس
acl لینوکس

تنظیم ACL

ACL را می توان با استفاده از دستور setfacl اصلاح کرد.

برای افزودن مجوز برای یک کاربر (کاربر نام کاربری یا شناسه) است:

$  setfacl -m “u:user:permissions” <file/dir>

برای اضافه کردن مجوز برای یک گروه (گروه یا نام گروه یا شناسه) است:

$  setfacl -m “g:group:permissions” <file/dir>

مشاهده فایل ACL ها

برای نشان دادن مجوزها، از استفاده کنید

$  getfacl filename

برای تنظیم همه مجوزها برای کاربر هری به فایل با نام “test”، از دستور زیر استفاده کنید.

$  setfacl -m “u:harry:rwx” test

مجوزها را بررسی کنید

 

$ getfacl test

# file: test

# owner: someone

# group: someone

user:harry:rwx

group::rw-

other::r–

برای تغییر مجوزها برای کاربر هری از دستور زیر استفاده کنید.

 

# setfacl -m “u:harry:r-x” test

مجوزها را بررسی کنید

$ getfacl test

# file: test

# owner: someone

# group: someone

user:harry:r-x

group::rw-

other::r–

اگر شما نیاز به کمک بیشتر دارید، لطفا با بخش پشتیبانی کامیت سرور تماس بگیرید.