الصلاحيات والملكية: من يقرأ ومن يكتب ومن يُنفّذ؟
نموذج الصلاحيات في Linux: قراءة وكتابة وتنفيذ
في الأنظمة الصناعية، الصلاحيات هي خط الدفاع الأول لحماية إعدادات SCADA وملفات التحكم من التعديل غير المصرح به.
| الرمز | الصلاحية | على ملف | على مجلد |
|---|---|---|---|
r |
قراءة | عرض المحتوى | عرض قائمة الملفات |
w |
كتابة | تعديل المحتوى | إنشاء أو حذف ملفات |
x |
تنفيذ | تشغيل كبرنامج | الدخول للمجلد بـ cd |
الفئات الثلاث: المالك (Owner)، المجموعة (Group)، الآخرون (Others).
قراءة الصلاحيات: ls -l
ls -l /etc/scada/modbus.conf
# -rw-r----- 1 scada operators 2048 Apr 15 08:00 modbus.conf
تفكيك سلسلة الصلاحيات -rw-r-----:
- rw- r-- ---
| | | |
نوع مالك مجموعة آخرون
-: ملف عادي (dلمجلد،lلرابط رمزي)rw-: المالك يقرأ ويكتبr--: المجموعة تقرأ فقط---: الآخرون لا صلاحيات
تغيير الصلاحيات: chmod بالأرقام والحروف
كل صلاحية لها قيمة: r=4، w=2، x=1. تُجمع القيم لكل فئة.
chmod 750 monitor.sh # rwx للمالك، r-x للمجموعة، --- للآخرين
chmod 640 scada.conf # rw- للمالك، r-- للمجموعة، --- للآخرين
chmod 600 secret.key # rw- للمالك فقط
القيم الشائعة
| القيمة | الصلاحيات | الاستخدام |
|---|---|---|
750 |
rwxr-x--- |
برامج الفريق |
640 |
rw-r----- |
إعدادات حساسة |
600 |
rw------- |
مفاتيح SSH |
755 |
rwxr-xr-x |
برامج عامة |
الطريقة الحرفية
chmod u+x script.sh # إضافة تنفيذ للمالك
chmod g-w config.toml # إزالة كتابة المجموعة
chmod o-rwx secret.key # إزالة كل صلاحيات الآخرين
chmod -R g+rX /data/shared/ # إضافة قراءة ودخول مجلدات تكرارياً
تغيير الملكية: chown و chgrp
sudo chown scada modbus.conf # تغيير المالك
sudo chown scada:operators modbus.conf # المالك والمجموعة معاً
sudo chown -R scada:operators /data/ # تكراري لمجلد كامل
sudo chgrp operators /var/log/scada/ # تغيير المجموعة فقط
groups # مجموعات المستخدم الحالي
id operator # معلومات كاملة عن مستخدم
الصلاحيات الخاصة: SUID و SGID و Sticky Bit
SUID — يُنفَّذ البرنامج بصلاحيات مالكه
chmod u+s /usr/local/bin/sensor_reset # تفعيل SUID
# حرف s في مكان x المالك: -rwsr-xr-x
SGID — الملفات الجديدة ترث مجموعة المجلد
chmod g+s /data/shared/ # تفعيل على مجلد
chmod 2775 /data/shared/ # بالأرقام
Sticky Bit — فقط مالك الملف يمكنه حذفه
chmod +t /data/shared/ # تفعيل
# حرف t في النهاية: drwxrwxrwt
مثال عملي: تأمين ملفات إعدادات SCADA على الخادم
# إنشاء مجموعة المشغلين
sudo groupadd scada_operators
# تعيين الملكية
sudo chown root:scada_operators /etc/scada/ -R
# ملفات الإعدادات: المالك يقرأ ويكتب، المجموعة تقرأ فقط
sudo chmod 640 /etc/scada/*.conf
# المجلد: SGID لوراثة المجموعة
sudo chmod 2750 /etc/scada/
# مفاتيح وشهادات: المالك فقط
sudo chmod 600 /etc/scada/certs/*.key
# التحقق
ls -la /etc/scada/
# اختبار الصلاحيات
sudo -u operator cat /etc/scada/modbus.conf # يجب أن ينجح (قراءة)
sudo -u nobody cat /etc/scada/modbus.conf # يجب أن يفشل
الخلاصة
تعلمت في هذا الدرس نظام صلاحيات Linux لحماية ملفات التشغيل الصناعي. فهم الصلاحيات وتطبيقها ضروري لتأمين أنظمة SCADA. القاعدة الذهبية: امنح أقل صلاحيات ممكنة تكفي لأداء المهمة المطلوبة.