الأذونات في نظام لينكس: نظام الأمان والسيطرة على الوصول
يعد نظام التشغيل لينكس من الأنظمة القوية التي تعتمد بشكل أساسي على مبدأ الأمان والتوزيع العادل للموارد بين المستخدمين. أحد أبرز جوانب الأمان في لينكس يتمثل في “الأذونات” التي يتم تحديدها على الملفات والمجلدات لتحديد من يمكنه الوصول إليها وكيفية التفاعل معها. في هذا المقال، سنتناول بالتفصيل كيفية عمل الأذونات في لينكس وكيفية التعامل معها لضمان الأمان في النظام.
1. تعريف الأذونات في لينكس
الأذونات (Permissions) هي مجموعة من القواعد التي تحدد من يمكنه الوصول إلى الملفات والمجلدات في نظام لينكس. يمكن أن تكون الأذونات على مستوى ثلاث فئات أساسية: المستخدم، المجموعة، والعامة. هذه الأذونات تحكم طريقة تفاعل المستخدمين مع الملفات والمجلدات، مما يساهم في الحفاظ على خصوصية وأمان البيانات.
2. بنية الأذونات في لينكس
تتمثل الأذونات في نظام لينكس في ثلاث فئات رئيسية من المستخدمين، وهي:
-
المستخدم (User): هو صاحب الملف أو المجلد، أي الشخص الذي قام بإنشائه. يكون لديه أعلى مستوى من الأذونات على الملف.
-
المجموعة (Group): هي مجموعة من المستخدمين الذين يشتركون في حقوق الوصول إلى الملف أو المجلد. يمكن للمستخدمين داخل هذه المجموعة أن يشاركوا الأذونات المتعلقة بالملفات.
-
العامة (Others): يشمل ذلك جميع المستخدمين الآخرين الذين ليس لديهم علاقة مباشرة مع الملف أو المجلد.
الأذونات الأساسية التي يمكن منحها أو منعها هي:
-
قراءة (Read): يسمح للمستخدم بقراءة محتوى الملف.
-
كتابة (Write): يسمح للمستخدم بتعديل محتوى الملف أو المجلد.
-
تنفيذ (Execute): يسمح للمستخدم بتنفيذ الملف كبرنامج.
3. تنسيق الأذونات في لينكس
في نظام لينكس، يتم عرض الأذونات باستخدام سلسلة من 10 رموز، وهي جزء من المعلومات التي تظهر عند استخدام أمر ls -l لعرض تفاصيل الملفات. الشكل العام لعرض الأذونات يكون كما يلي:
diff-rwxr-xr-x 1 root root 4096 Jan 1 10:00 example.txt
-
الرمز الأول (-): يشير إلى نوع الملف، سواء كان ملفًا عاديًا (
-)، مجلدًا (d)، رابطًا رمزيًا (l)، أو نوع آخر من الملفات. -
الرموز التالية (rwxr-xr-x): تُظهر الأذونات الممنوحة للمالك (المستخدم)، والمجموعة، والعامة. في هذا المثال:
-
rwx: يشير إلى أن المالك يمكنه قراءة (r)، الكتابة (w)، وتنفيذ (x) الملف. -
r-x: يشير إلى أن أعضاء المجموعة يمكنهم قراءة (r) الملف وتنفيذه (x)، لكن لا يمكنهم الكتابة. -
r-x: يشير إلى أن المستخدمين الآخرين يمكنهم أيضًا قراءة (r) وتنفيذ (x) الملف، ولكن لا يمكنهم الكتابة.
-
4. الأوامر الخاصة بالأذونات في لينكس
هناك العديد من الأوامر التي يمكن استخدامها لتحديد وتعديل الأذونات في لينكس، وهي تشمل:
-
ls -l: عرض الأذونات الحالية للملفات والمجلدات. -
chmod: أمر لتغيير الأذونات على ملف أو مجلد. على سبيل المثال، يمكن تعديل الأذونات باستخدام الرموز (r, w, x) أو باستخدام الأرقام. -
chown: لتغيير ملكية الملف (أي تغيير المالك والمجموعة). -
chgrp: لتغيير مجموعة الملف.
استخدام chmod مع الأرقام
يمكن استخدام الأوامر الرقمية لتعيين الأذونات على الملفات باستخدام الأرقام التالية:
-
4: قراءة (Read)
-
2: كتابة (Write)
-
1: تنفيذ (Execute)
يتم جمع هذه القيم لتحديد الأذونات الممنوحة. على سبيل المثال:
-
7 (4+2+1): قراءة وكتابة وتنفيذ.
-
6 (4+2): قراءة وكتابة.
-
5 (4+1): قراءة وتنفيذ.
-
4: قراءة فقط.
على سبيل المثال، لتعيين الأذونات 755 (أي المالك يمكنه القراءة والكتابة والتنفيذ، بينما المجموعة والعامة يمكنهم القراءة والتنفيذ فقط)، يمكن استخدام الأمر:
bashchmod 755 example.txt
استخدام chmod مع الرموز
يمكن أيضًا استخدام الرموز لتغيير الأذونات، حيث يمكن إضافة أو إزالة أذونات من المستخدمين المحددين باستخدام الرموز + (إضافة إذن) و - (إزالة إذن). على سبيل المثال:
-
لإضافة إذن الكتابة للمجموعة:
bashchmod g+w example.txt -
لإزالة إذن التنفيذ من العامة:
bashchmod o-x example.txt
5. الأذونات في المجلدات
تختلف الأذونات قليلاً عندما يتعلق الأمر بالمجلدات في نظام لينكس. في حين أن الأذونات على الملفات تحدد ما إذا كان يمكن قراءتها، تعديلها، أو تنفيذها، فإن الأذونات على المجلدات تحدد ما إذا كان يمكن الدخول إليها، أو إضافة ملفات إليها، أو تعديل محتوياتها. الأذونات الأساسية للمجلدات هي:
-
قراءة (r): يسمح للمستخدم برؤية محتويات المجلد.
-
كتابة (w): يسمح للمستخدم بإضافة أو حذف الملفات داخل المجلد.
-
تنفيذ (x): يسمح للمستخدم بالدخول إلى المجلد واستخدامه كدليل للتنقل.
6. الأذونات المتقدمة: ACL (قوائم التحكم في الوصول)
في حين أن الأذونات التقليدية في لينكس توفر مستوى معقولًا من الأمان، فإن نظام ACL (قوائم التحكم في الوصول) يوفر مزيدًا من المرونة في تخصيص الأذونات. من خلال ACL، يمكن منح أذونات محددة لمستخدمين معينين أو مجموعات معينة، مما يسمح بمرونة أكبر من الأذونات التقليدية.
على سبيل المثال، يمكن لمستخدم معين أن يكون لديه إذن للقراءة فقط على ملف معين، بينما يكون لمستخدم آخر إذن للكتابة فقط.
7. أهمية الأذونات في الأمان
تعتبر الأذونات من أهم أدوات الأمان في نظام لينكس، حيث تساعد في ضمان أن المستخدمين المناسبين فقط هم الذين يمكنهم الوصول إلى الملفات والمجلدات الحساسة. بشكل عام، فإن فهم كيفية استخدام الأذونات وإدارتها بشكل صحيح أمر ضروري لحماية النظام من الوصول غير المصرح به.
8. أفضل الممارسات لإدارة الأذونات في لينكس
-
التقيد بالمبدأ الأدنى: يجب منح الأذونات الضرورية فقط للمستخدمين أو المجموعات. لا ينبغي أبدًا منح أذونات واسعة مثل
777(جميع الأذونات للجميع) إلا في حالات استثنائية. -
استخدام المجموعات بفعالية: يمكن أن تساعد المجموعات في إدارة الأذونات بسهولة أكبر، حيث يمكن تعيين الأذونات للمجموعات بدلاً من تعيينها للمستخدمين الفرديين.
-
مراجعة الأذونات بانتظام: من المهم مراجعة الأذونات بشكل دوري للتأكد من أن الأذونات المناسبة تم منحها فقط.
9. استنتاج
تعد الأذونات في نظام لينكس من الأجزاء الأساسية التي تساهم في أمان النظام وحمايته من الوصول غير المصرح به. من خلال فهم كيفية إدارة الأذونات وتطبيق أفضل الممارسات، يمكن للمستخدمين والمسؤولين ضمان أن ملفاتهم ومجلداتهم آمنة وتحت السيطرة.

