| 
			
			 
			
				14-10-2011, 03:06 AM
				
			
			
			
		 | 
	| 
		
		
			
			| عضو |  | 
					تاريخ التسجيل: Aug 2011 
						مشاركة: 39
					 
                    
					
                    مستوى تقييم العضوية: 0      |  | 
	| 
				 التعامل مع بعض مشاكل الـ SElinux 
                              بعد التحية الكريمة للجميع، أود تقديم ذلك الموضوع البسيط الذى قمت  فيه بالبدأ بمقدمة عن الـ SElinux، ثم قمت بعد ذلك بإستعراض طريقة اكتشاف  مشاكلها والبحث فى إيجاد حلاً لها، فأود أن أكون قد وُفقت فى ذلك بإذن الله  تعالى، وأن يجعله الله فى ميزان حسناتنا جميعًا، والآن لكى لا أطيل عليكم  دعونا نُبحر فى تلك التقنية الرائعة.
 قبل أن أشرع فى ذلك النقاش أحب أن أتقدم بجزيل الشكر للمهندس/صبري صالح على إطلاقه للكتاب (SElinux Arabic Guide) الأكثر من رائع والوحيد الذى رأيته باللغة العربية فى ذلك المجال.
 
 تم تطوير تلك التقنية الرائعة التى أضافة عالمًا جديدًا من الحماية على أنظمة اللينكس من وكالة الأمن القومىة  بهدف محاولة فصل الخدمات، العمليات والمستخدمين عن الملفات، وبذلك من  حددوث الثغرات التى قد تؤدى إلى ترقية الصلاحيات (Escalating privileges)،  فقاموا بتطوير نظام عُرف بإسم Mach للقيام بتلك اللمهمة، وبعد نجاح ذلك  النظام قرروا إضافة ذلك النظام إلى نظام تشغيل مفتوح المصدر فكان نظام  اللينكس.
 
 أما بالنسبة لمشاكل الـ SElinux فقد تنجم عن بعض الأشياء منها :
 
 1- عدم تفعيل بعض قيم الـ  Boolean options الخاصة بالخدمات.
 2- حدوث خطأ (سواء من تغير أو فقد) فى جمل الحماية (Security context) أثناء عملية نقل الملفات من مكان إلى آخر.
 وغيرها من الأسباب الأخرى.
 
 لذلك يتطلب علينا معرفة السجلات التى تقوم بتسجيل الأخطاء (يهمنا أخطاء الـ  Selinux)، حتى نتمكن من مراجعتها ومعرفة سبب حدوثها، وهما ذلك
 
 
	ولعمل تنقيح لتلك السجلات (حتى نقوم بعرض الأماكن المطلوبة فقط والخاصة بـ SElinux errors)، نقوم بإستخدام أداة التنقيح grep هكذا،كود:  /var/log/messages
/var/log/audit/audit.log 
 
	وعند عثورك على خدمة مثلاً قد تنم منعها من التشغيل نتيجة خطأ فى الـ  SElinux، سوف تجد لكل خدمة مُعرف خاص بها، ويمكنك استخدام أمر sealert، فى  جمع المزيد من المعلومات حول تلك الخدمة.كود: grep "SElinux is preventing" /var/log/messages
grep "denied" /var/log/audit/audit.log 
 
	*ملاحظة*كود: sealert –l 0621a8c3-b182-49cf-9116-c78a9dd52199 لم أقم بشرح تلك التقنية من البداية إلى النهاية لأنها قد تم شرحها بالتفصيل وبطريقة أكثر من رائعة فى كتاب SElinux Arabic Guide، كما ذكرت أعلاه، لذلك أنصح الجميع ممكن يريدوا التوسع فى ذلك بقرائته.
 
 المصادر
 
 1- SElinux Arabic Guide
 2- Hands on Guide to the RedHat Exams RHCSA and RHCE CertGuide
 
 
 
 
 
 
			
			
			
			
			
			
			
			
            
            
                
           	
			
			
		 |