- التمييز التقني بين تعديل أذونات الوصول باستخدام chmod وتغيير ملكية الموارد باستخدام chown.
- نظام تمثيل الأذونات القائم على الترميز الثماني والرمزي للمستخدمين والمجموعات وغيرهم.
- تطبيق استراتيجيات أمنية قائمة على مبدأ أقل الامتيازات لمنع الثغرات الأمنية في الخوادم.
إذا سبق لك إدارة خادم VPS خاص بك أو جهاز مخصص، فستدرك أن نظام لينكس مصمم أساسًا للشبكات. ولذلك، تُعدّ الحماية أمرًا بالغ الأهمية ، إذ أن التحكم في من يمكنه قراءة الملفات أو تعديلها أو تشغيلها هو ما يمنع معلوماتك من الوقوع في الأيدي الخطأ أو من تعطل النظام بالكامل بفعل عملية خبيثة.
للتنقل في هذه البيئة بسهولة، لا يكفي مجرد معرفة كيفية تنفيذ الأوامر؛ بل يجب فهم منطق ملكية الملفات. في لينكس، كل مورد ينتمي إلى مستخدم ومجموعة ، وهنا تبرز أهمية أدوات تعديل هذه الصلاحيات، مما يسمح لنا بتأمين النظام دون تعطيل تطبيقاتنا.
فهم بنية التصاريح
عند تشغيل أمر ls -l في الطرفية، سترى سلسلة من الأحرف تبدو كشفرة سرية، شيء من هذا القبيل -rwxr-xr--لا تقلق، الأمر أبسط مما يبدو. الشخصية الأولى تخبرنا ما نوع العنصر الموجود أمامنا؟يشير الواصلة إلى ملف عادي، و'd' إلى مجلد (دليل)، و'l' إلى رابط رمزي. وهناك أيضًا أحرف أقل شيوعًا مثل 's' للمقابس أو 'p' للأنابيب.
تُقسّم الأحرف التسعة التالية إلى ثلاث مجموعات متساوية، كل مجموعة تضم ثلاثة أحرف. المجموعة الأولى خاصة بمالك الملف (منشئه)، والثانية خاصة بمجموعة المالكين ، والثالثة خاصة بباقي مستخدمي النظام. يمكن أن تحتوي كل مجموعة من ثلاثة أحرف على الأحرف 'r' (للقراءة)، و'w' (للكتابة)، و'x' (للتنفيذ)، أو شرطة (-) إذا لم يُمنح هذا الإذن.
ماذا يعني كل تصريح حقاً؟
- القراءة (ر): في الملف، يسمح لك بفتحه والاطلاع على محتوياته. أما إذا كنا نتحدث عن مجلد، فهذا يعني أنه يمكنك قم بإدراج الملفات والمجلدات الفرعية تحتوي.
- الكتابة (w): يمنحك هذا الخيار القدرة على تعديل محتويات الملف أو حتى حذفه. وفي حالة المجلدات، فإنه يسمح لك بـ إنشاء أو حذف أو إعادة تسمية العناصر الموجودة بداخله.
- التنفيذ (x): بالنسبة للملفات، هذا ما يسمح بتشغيل البرامج النصية أو البرامج النصية. أما في المجلدات، فهذا الإذن ضروري لأنه يسمح لك بـ... الوصول إلى الدليل باستخدام الأمر
cd.
أمر chmod: ضبط صلاحيات الوصول
القيادة chmod (وضع التغيير) هو أداتنا لتعديل هذه الصلاحيات. هناك طريقتان لاستخدامه: الطريقة الرمزية، وهي أكثر سهولة في الاستخدام، والطريقة الثمانية، وهي المفضلة لدى المسؤولين لأنها أسرع.
في الوضع الرمزينستخدم الأحرف للإشارة إلى من يتأثر بالتغيير (u للمستخدم، g للمجموعة، o للآخرين، a للجميع) ورموزًا مثل "+" لإضافة صلاحيات أو "-" لإزالتها. على سبيل المثال، إذا كنت تريد أن تتمكن المجموعة من الكتابة إلى ملف، فستستخدم chmod g+w archivo.txtإنها طريقة مرنة للغاية لـ قم بتعديل الأذونات حسب الحاجة دون تغيير بقية الإعدادات.
El الوضع الثماني يستخدم هذا النظام أرقامًا مبنية على النظام الثنائي. لكل إذن قيمة: القراءة 4، والكتابة 2، والتنفيذ 1. بجمع هذه القيم نحصل على رقم من 0 إلى 7. على سبيل المثال، القيمة 7 (4+2+1) تعني الوصول الكامل، بينما 5 (4+0+1) تعني القراءة والتنفيذ. وبالتالي، فإن أمرًا مثل chmod 755 carpeta منح السيطرة الكاملة للمالك ومنح صلاحية القراءة/التنفيذ للمجموعة وللآخرين فقط.
إدارة العقار بواسطة chown و chgrp
أحيانًا، حتى مع صحة الأذونات، قد لا يعمل الملف لأن مالكه ليس الشخص المناسب. وهنا يأتي دور [الأداة/التطبيق المناسب]. chown (تغيير المالك). يسمح هذا الأمر تغيير المستخدم والمجموعة من يملك الملف. الصيغة الأكثر شيوعًا هي chown usuario:grupo archivo.
من الشائع جدًا على خوادم الويب أن تكون الملفات تابعة لمستخدم الخادم (مثل www-data في Apache أو Nginx) حتى يتمكن الموقع من الكتابة إلى مجلدات معينة. إذا كنت بحاجة إلى تطبيق هذا التغيير على مجلد وكل ما بداخله، فيجب عليك استخدام الخيار التكراري -Rعلى سبيل المثال، الجري chown -R www-data:www-data /var/www/html.
إدارة المستخدمين والمجموعات في النظام
لكي يكون كل ما سبق منطقيًا، نحتاج أولًا إلى تحديد هوية هؤلاء المستخدمين. في نظام لينكس، أوامر مثل useradd o adduser لإنشاء حسابات، و passwd لتعيين مفتاح لهم. تُخزَّن جميع هذه المعلومات في ملفات بالغة الأهمية مثل / الخ / باسود (تفاصيل الحساب) و / الخ / الظل (كلمات مرور مشفرة).
تُعد المجموعات ضرورية لتجنب الاضطرار إلى تعيين الأذونات واحدًا تلو الآخر. groupadd أنشأنا المجموعة ومع usermod -aG نضيف المستخدمين إليه. وبهذه الطريقة، يمكننا أن نقدم تصاريح جماعية لفريق عمل في مجلد محدد دون المساس بأمان بقية النظام.
العرق والامتيازات المرتفعة
لا يُنصح بالعمل كمسؤول النظام (root) دائمًا، لأن أي خطأ قد يؤدي إلى مسح النظام بأكمله. ولذلك، نستخدم sudoمما يسمح لنا بتنفيذ الأوامر بصلاحيات المستخدم المتميز. ويمكن العثور على إعدادات تحديد الصلاحيات في الملف. / الخ / sudoersوالتي يجب تعديلها دائمًا باستخدام الأمر visudo إلى استكشاف أخطاء sudo وإصلاحها في لينكس وتجنب أخطاء بناء الجملة التي قد تؤدي إلى استبعادنا من النظام.
الأمن وأفضل الممارسات على الخوادم
من الأخطاء الشائعة التي يقع فيها العديد من المبتدئين منح صلاحيات 777 لمجلد ما عند وجود مشكلة. هذا يُسهّل على أي مُهاجم الوصول إلى النظام. من الأفضل اتباع مبدأ أقل الصلاحيات : منح الحد الأدنى من الصلاحيات اللازمة لإنجاز المهمة فقط.
كقاعدة عامة، يجب أن تكون أذونات الملفات 644 (المالك يكتب، والآخرون يمكنهم القراءة فقط) والمجلدات 755. بالنسبة للملفات الحساسة للغاية، مثل مفاتيح SSH أو ملفات التكوين المحمية بكلمة مرور (.env)، فإن الإذن 600 هو الإعداد الصحيح، مما يضمن عدم تمكن أي شخص آخر غير المالك من قراءة المحتويات.
إذا واجهت خطأ 403 المزعج على موقعك الإلكتروني، فمن المرجح أن يكون السبب مشكلة في ملكية الملفات أو صلاحيات الوصول. قبل إجراء أي تغييرات جذرية، تأكد من أن خادم الويب يملك الملفات وأن المجلدات مُفعّلة بصلاحية التنفيذ للسماح بالوصول إليها.
تُعدّ الإدارة السليمة للمستخدمين والمجموعات والصلاحيات باستخدام أدوات مثل chmod وchown خط الدفاع الأول لأي خادم لينكس. بدءًا من استخدام قناع umask لتحديد الصلاحيات الافتراضية، مرورًا بإدارة الدلائل المتكررة والتحكم الصارم في صلاحيات المستخدم ذي صلاحيات sudo، يُسهم كل تعديل في إنشاء بيئة مستقرة ومرنة ضد الاختراقات المحتملة، مما يضمن تعايش عمليات النظام والمستخدمين دون المساس بسلامة البيانات.
كاتب شغوف بعالم البايت والتكنولوجيا بشكل عام. أحب مشاركة معرفتي من خلال الكتابة، وهذا ما سأفعله في هذه المدونة، لأعرض لك كل الأشياء الأكثر إثارة للاهتمام حول الأدوات الذكية والبرامج والأجهزة والاتجاهات التكنولوجية والمزيد. هدفي هو مساعدتك على التنقل في العالم الرقمي بطريقة بسيطة ومسلية.




