<?xml version="1.0"?>
<rss version="2.0"><channel><title>DevOps: &#x62D;&#x645;&#x627;&#x64A;&#x629;</title><link>https://academy.hsoub.com/devops/security/?d=4</link><description>DevOps: &#x62D;&#x645;&#x627;&#x64A;&#x629;</description><language>ar</language><item><title>&#x645;&#x627; &#x647;&#x648; &#x627;&#x644;&#x623;&#x645;&#x646; &#x627;&#x644;&#x633;&#x64A;&#x628;&#x631;&#x627;&#x646;&#x64A; &#x648;&#x645;&#x627; &#x623;&#x647;&#x645;&#x64A;&#x62A;&#x647;&#x61F;</title><link>https://academy.hsoub.com/devops/security/%D9%85%D8%A7-%D9%87%D9%88-%D8%A7%D9%84%D8%A3%D9%85%D9%86-%D8%A7%D9%84%D8%B3%D9%8A%D8%A8%D8%B1%D8%A7%D9%86%D9%8A-%D9%88%D9%85%D8%A7-%D8%A3%D9%87%D9%85%D9%8A%D8%AA%D9%87%D8%9F-r664/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2022_11/637fc43f8a06f_Artboard1.png.205e8d71da3215b01c5e73596f6170e9.png" /></p>

<p>
	شاع في السنوات الماضية مع تطوّر التقنية في حياتنا ودخولها لكل جوانبها مصطلح الأمن السيبراني Cybersecurity، كما أن الطلب تزايد عليه بالنظر إلى أنّ أي مؤسسة تستخدم تقنيات الحاسوب بحاجة لحماية بنيتها التحتية ضدّ الهجمات الخبيثة والمخترقين.
</p>

<p>
	تُشير بعض الإحصاءات التي أجرتها الجمعية الدولية للضمان الاجتماعي ISSA عام 2021 آنذاك إلى أن 57 بالمئة من المؤسسات تعاني من نقص بخصوص مختصّي الأمن السيبراني، وإن دلّت هذه الأرقام على شيء فهي تدلّ على نموّ هذا المجال وتزايد الطلب عليه.
</p>

<p>
	فما هو اختصاص الأمن السيبراني؟ وما هي مهام مختص الأمن السيبراني؟ وكيف يمكنك البدء بتعلم هذا المجال؟ هذا ما سنناقشه ضمن هذا المقال.
</p>

<h2>
	تاريخ الأمن السيبراني
</h2>

<p>
	كانت الحاجة للأمن السيبراني واضحة منذ ظهور <a href="https://academy.hsoub.com/devops/networking/%D8%A2%D9%84%D9%8A%D8%A9-%D8%B9%D9%85%D9%84-%D8%B4%D8%A8%D9%83%D8%A9-%D8%A7%D9%84%D8%A5%D9%86%D8%AA%D8%B1%D9%86%D8%AA-r571/" rel="">شبكة الإنترنت</a> وانتشارها في ثمانينيات القرن الماضي، إذ شهدنا ظهور مصطلحات متعلقة بهذا المجال مثل الفايروس Virus ومضاد الفيروسات Anti-virus وغيرها، إلا أن التهديدات السيبرانية لم تكن بالتعقيد والصعوبة التي هي عليه الآن.
</p>

<p>
	أولى ظهور لبرمجية خبيثة malware كان في عام 1971 باسم كريبر <a href="https://en.wikipedia.org/wiki/Creeper_and_Reaper" rel="external nofollow">Creeper</a> إذ كان برنامجًا تجريبيًا كُتب بواسطة بوب توماس في شركة BBN، تلاه بعد ذلك ظهور أول مضاد فيروسات في عام 1972 باسم ريبر Reaper الذي أنشئ بواسطة راي توملنسون بهدف القضاء على البرمجية الخبيثة كريبر.
</p>

<p>
	مع وصول شبكة الإنترنت إلى كافة بقاع العالم ومع التحول الرقمي الحاصل في كافة قطاعات الحياة اليوم أهمها قطاعات البنى التحتية المدنية من أنظمة تحكم وأنظمة الطاقة والاتصالات والمياه وقطاع الصحة والقطاعات المالية والمصرفية وقطاع النقل والطيران وغيرها، بدأت الهجمات السيبرانية تأخذ بعدًا آخر، فتخيل ماذا سيحصل إن حصل هجوم سيبراني على أحد تلك الخدمات المهمة المفصلية أو تخيل حصول هجوم سيبراني على أحد أنظمة إدارة السدود أو الطاقة في بلد ما، هذا لا يقاس مع حصول هجمات على أفراد التي تكون دائرة الضرر فيها صغيرة جدًا، إذ ممكن أن تؤدي إلى شلل في الحياة وهنالك الكثير من أمثلة تلك الهجمات لا يسع المقال لذكرها هنا.
</p>

<p>
	أذكر مرة أنه حصل خلل في التراسل الشبكي في أنظمة إحدى المباني الخدمية مما أوقف العمل بشكل كامل في ذلك المبنى لتتراكم أعداد الناس وتشكل طوابير طويلة منتظرين عودة النظام للعمل أو ستتوقف معاملاتهم بالكامل، وأذكر مرة حصل خلل في نظام شبكة محطات الوقود لتخرج مجموعة كبيرة من المحطات عن العمل في المدينة وتصطف طوابير من السيارات منتظرة عودة الخدمة للعمل، وهذان مثالان عن عطل غير مقصود فما بالك لو كان مقصودًا وناجمًا عن هجوم سيبراني منظم؟ تخيل ماذا سيحصل، لذا كانت أهمية الأمن السيبراني بأهمية الحاجة إليه والضرر الحاصل دونه.
</p>

<h2>
	ما هو الأمن السيبراني؟
</h2>

<p>
	يُعرف الأمن السيبراني Cybersecurity بأنه عملية تأمين وحماية الأنظمة الرقمية والشبكات الإلكترونية وكل ما يتعلق بالأجهزة الرقمية وتكنولوجيا المعلومات الرقمية ضدّ أي هجمات رقمية أو تسمى هجمات سيبرانية Cyber Attacks.
</p>

<p>
	تستهدف الهجمات السيبرانية تخريب أو تعطيل أو سرقة شبكة أو نظام حاسوبي، أو دخولًا غير مصرّح به إليهما، وقد يكون الهدف من هذه الهجمات الوصول إلى بيانات ما لتعديلها أو تخريبها، أو ابتزاز الفرد أو المؤسسة مقابل هذه البيانات، أو أن تكون ذات هدف تخريبي تهدف لإيقاف عمل المؤسسة.
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="112795" href="https://academy.hsoub.com/uploads/monthly_2022_11/637fc42ec08c4_--Cybersecurity.jpeg.f6be52c9380c224f53066057d2ebcf18.jpeg" rel=""><img alt="تمثل الأمن السيبراني" class="ipsImage ipsImage_thumbnailed" data-fileid="112795" data-unique="3n2a8qf8b" src="https://academy.hsoub.com/uploads/monthly_2022_11/637fc42ec08c4_--Cybersecurity.jpeg.f6be52c9380c224f53066057d2ebcf18.jpeg" style="width: 800px; height: auto;"></a>
</p>

<p>
	تأتي هنا مهمّة الأمن السيبراني ألا وهي وقف هذه الهجمات السيبرانية عن طريق الكشف عن الفيروسات الرقمية وتعطيلها وتأمين وسائل اتصال مشفّرة وآمنة تضمن تبادل البيانات الحساسة دون خطر تسريبها أو قدرة الوصول إليها من المخترقين. يستخدم مختصّ الأمن السيبراني لتحقيق ذلك مجموعة من الأدوات والتقنيات مثل <a href="https://academy.hsoub.com/devops/security/firewalls/%D9%85%D8%A7-%D9%87%D9%88-%D8%A7%D9%84%D8%AC%D8%AF%D8%A7%D8%B1-%D8%A7%D9%84%D9%86%D8%A7%D8%B1%D9%8A-%D9%88%D9%83%D9%8A%D9%81-%D9%8A%D8%B9%D9%85%D9%84%D8%9F-r114/" rel="">جدران الحماية (النارية) Firewalls</a> وأنظمة كشف التسلل Intrusion Detection Systems أو اختصارًا IDS، بالإضافة إلى إجراء اختبارات الأمان وتعريف حدود واضحة (صلاحيات المستخدم، أماكن تخزين البيانات الحساسة، …إلخ).
</p>

<h2>
	فوائد الأمن السيبراني
</h2>

<p>
	يستند الأمن السيبراني على ثلاث مبادئ وهي الخصوصية Confidentiality والسلامة Integrity والتوفر Availability، ويرمز إلى هذه المبادئ بشكل كامل بالاختصار CIA:
</p>

<ul>
<li>
		<strong>الخصوصية</strong>: ضمان الوصول إلى الأنظمة والبيانات فقط للأشخاص المُصرَّح بهم، بإجراء عمليات التعديل البيانات واستعادتها والاطّلاع عليها.
	</li>
	<li>
		<strong>السلامة</strong>: ويُقصد بها سلامة البيانات وهي ضمان أن البيانات يمكن الاعتماد عليها بشكل دقيق وصحيح، دون أن تُغيَّر من قبل أطراف أخرى غير مصرّح لها بالتغيير (وهو ما يضمنه المبدأ السابق).
	</li>
	<li>
		<strong>التوفر</strong>: ضمان أن الأطراف المُصرّح لها بالوصول إلى البيانات تستطيع الوصول إليها بأي وقت دون مشاكل وبشكل مستمرّ، وهذا يتطلب المحافظة على سلامة التجهيزات (العتاد الصلب) وسلامة البنية التحتية والنظام الذي يحتوي على البيانات ويعرضها.
	</li>
</ul>
<p>
	التطبيق الصحيح للمبادئ الثلاث السابقة يضمن لنا حماية بياناتنا الشخصية ويوفّر بيئة عمل مريحة وآمنة في المؤسسات التي تعتمد على التقنيات والأنظمة الحاسوبية، مما ينعكس بالإيجاب على سمعة المؤسسة وأدائها. أضِف إلى ذلك تفادي الخسارات في حال وقوع هجوم سيبراني على المؤسسة، سواءً أكانت ماديّة (تعطّل بنى تحتية أو سرقة بيانات أو ابتزاز) أو معنويّة (خسارة المؤسسة سمعتها وثقة جمهورها).
</p>

<p>
	إذ تُشير <a href="https://cybersecurityventures.com/annual-cybercrime-report-2020/" rel="external nofollow">إحصاءات</a> أجرتها مجلة Cybercrime المختصة بمجال الأمن السيبراني في عام 2021 إلى أن الجرائم السيبرانية تسببت بخسائر قيمتها 6 تريليون دولار أمريكي، دعونا نقارن هذا الرقم لفهم ضخامته، إذ أنه سيأتي ثالثًا إذا أردنا وضعه ضمن الناتج المحلي الإجمالي لدول العالم بعد الولايات المتحدة الأمريكية والصين! ومن المقدّر أن تزداد الخسائر باستمرار بحلول عام 2025 إلى 10.5 تريليون دولار أمريكي.
</p>

<p>
	دعنا لا ننسى أيضًا مهمة مميزة للأمن السيبراني ألا وهي استرداد البيانات واسترجاعها إن حصلت عملية اختراق أو تخريب، إذ تُعدّ مهمة استعادة البيانات بسرعة من أهم مهام مختص الأمن السيبراني. وجود فريق أمن سيبراني مختص لصدّ الهجمات والتعرّف عليها أمر لا غنى عنه، خصوصًا في القطاعات الحساسة مثل المؤسسات الحكومية والبنوك وشركات الطيران.
</p>

<p>
	لكن هل تحتاج جميع المؤسسات إلى الأمن السيبراني بقدر متساوٍ من الأهمية؟ في الحقيقة لا، فأهمية الأمن السيبراني بالنسبة لمدوّنة أو موقع شخصي ليست بقدرٍ مساوٍ لشركة طيران أو مؤسسة مصرفيّة. ألا أن هنالك قواعد عامّة يجب اتّباعها بغض النظر عن غرض المؤسسة وطبيعة نشاطها كإدارة البيانات الحساسة وحمايتها مثل كلمات المرور والمحافظة على آخر إصدار مستقر من العتاد البرمجي المُستخدم وأخذ نُسخ احتياطية من البيانات بشكل دوري.
</p>

<h2>
	ما هو الفرق بين أمن المعلومات والأمن السيبراني؟
</h2>

<p>
	قد تتساءل <a href="https://academy.hsoub.com/questions/20078-%D9%85%D8%A7-%D8%A7%D9%84%D9%81%D8%B1%D9%82-%D8%A8%D9%8A%D9%86-%D8%A7%D9%84%D8%A7%D9%85%D9%86-%D8%A7%D9%84%D8%B3%D9%8A%D8%A8%D8%B1%D8%A7%D9%86%D9%8A-%D9%88%D8%A7%D9%85%D9%86-%D8%A7%D9%84%D9%85%D8%B9%D9%84%D9%88%D9%85%D8%A7%D8%AA/" rel="">ما الفرق بين أمن المعلومات والأمن السيبراني</a>؟ إذ كثيرًا ما يُطرح هذا السؤال وهو ما سنجيب عليه في هذه الفقرة.
</p>

<p>
	يهتمّ الأمن السيبراني كما ذكرنا سابقًا بحماية الأنظمة والأجهزة الحاسوبيّة، ويتضمن ذلك <a href="https://academy.hsoub.com/devops/networking/%D8%A3%D9%85%D8%AB%D9%84%D8%A9-%D8%B9%D9%86-%D8%A3%D9%86%D8%B8%D9%85%D8%A9-%D8%A3%D9%85%D9%86-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A7%D8%AA-%D8%A7%D9%84%D8%AD%D8%A7%D8%B3%D9%88%D8%A8%D9%8A%D8%A9-r542/" rel="">أمن الشبكات</a> والتطبيقات و<a href="https://academy.hsoub.com/devops/cloud-computing/%D9%85%D9%81%D9%87%D9%88%D9%85-%D8%A7%D9%84%D8%B3%D8%AD%D8%A7%D8%A8%D8%A9-cloud-r624/" rel="">السحابة cloud</a> والبنية التحتية، وذلك بمنع الوصول غير المصرّح له لهذه الأنظمة بهدف التحكم بها أو الحصول على البيانات التي تحتويها.
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="112794" href="https://academy.hsoub.com/uploads/monthly_2022_11/637fc42e41253_---.jpeg.2b86922269c79901c552d987507eb599.jpeg" rel=""><img alt="أمن المعلومات مقابل الأمن السيبراني" class="ipsImage ipsImage_thumbnailed" data-fileid="112794" data-unique="vdec9x7ms" src="https://academy.hsoub.com/uploads/monthly_2022_11/637fc42e41253_---.jpeg.2b86922269c79901c552d987507eb599.jpeg" style="width: 799px; height: auto;"></a>
</p>

<p>
	يركّز مجال أمن المعلومات على المعلومات بذات نفسها وكيفية حمايتها بغض النظر عن الوسيط الذي يحتويها بخلاف الأمن السيبراني (النظام أو العتاد الصلب)، ويُعدّ مجال أمن المعلومات خط الدفاع الثاني في حال التعرض لهجوم سيبراني واختراقه بحيث لا يستفيد المخترق من البيانات حتى وإن كانت بحوزته (إذ أن خط الدفاع الأول هنا هو الأمن السيبراني).
</p>

<h2>
	مصطلحات شائعة في مجال الأمن السيبراني
</h2>

<p>
	نذكر هنا بعض أكثر المصطلحات شيوعًا في مجال الأمن السيبراني ومعناها بشرح مقتضب:
</p>

<ul>
<li>
		<strong>الجريمة السيبرانية Cybercrime</strong>: هي أي هجوم يقوم بها شخص أو مجموعة من الأشخاص ويكون الهدف فيها نظام حاسوبي بهدف التحكم به أو الحصول على بيانات بشكل غير مُصرَّح به، إما بهدف التخريب أو الابتزاز.
	</li>
	<li>
		<strong>شبكة روبوتات Robot Network</strong>: تُعرف اختصارًا باسم Botnet وهي شبكة تتكون من آلاف أو ملايين الأجهزة المتصلة مع بعضها البعض والمصابة ببرمجية خبيثة malware، ويستخدم المخترقون هذه الشبكة لتنفيذ هجماتهم مثل هجمات الحرمان من الخدمة الموزّع DDoS attacks أو إرسال الرسائل المزعجة Spam.
	</li>
	<li>
		** خرق بيانات Data Breach**: هي الحادثة التي يحصل بها المخترق على بيانات ما بعد نجاح هجمة سيبرانية، وعادةً ما تكون هذه البيانات بيانات شخصية حساسة مثل كلمات المرور أو بيانات مصرفية وغيرها.
	</li>
	<li>
		<strong>المخترق ذو القبعة البيضاء White hat وذو القبعة السوداء Black hat</strong>: يُقصد بهذين المصطلحين نيّة كل مخترق من عملية الاختراق إذ أن للمخترق ذو القبعة السوداء نيّة سيئة باستخدام البيانات التي يحصل عليها أو الثغرات الأمنية بالابتزاز المالي أو التخريب بينما يكون هدف المخترق ذو القبعة البيضاء الكشف عن هذه الثغرات وسدّها لحماية النظام بشكل أكبر وغالبًا ما تُدعى هذه الفئة من المخترقين بالمخترقين الأخلاقيين Ethical Hackers.
	</li>
</ul>
<h2>
	أنواع تهديدات الأمن السيبراني
</h2>

<p>
	على الرغم من تطوّر الهجمات السيبرانية مع مرور الوقت وزيادة تعقيدها إلا أن هناك العديد من أنواع التهديدات الشائعة التي يجب أن يكون مختصّ الأمن السيبراني ملمًّا بها وبطريقة تحصين النظام ضدها.
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="112796" href="https://academy.hsoub.com/uploads/monthly_2022_11/637fc42f32e2e_--.png.759e4415c46a44b6b3609bb917b9f3c6.png" rel=""><img alt="تهديدات الأمن السيبراني" class="ipsImage ipsImage_thumbnailed" data-fileid="112796" data-unique="5vlnagist" src="https://academy.hsoub.com/uploads/monthly_2022_11/637fc42f687fc_--.thumb.png.393fce3c3292517fb710b4b949143e5d.png" style="width: 600px; height: auto;"></a>
</p>

<p>
	نذكر من أشهر أنواع تهديدات الأمن السيبراني ما يلي:
</p>

<ul>
<li>
		<strong>التصيّد الاحتيالي Phishing</strong>: هي محاولة المخترق لخداع الضحية الهدف باتخاذ إجراءات غير آمنة وخاطئة، مثل إرسال رابط لصفحة دخول إلى موقع معيّن ومطالبتهم بتسجيل الدخول بحساباتهم في هذا الموقع، إلا أن الصفحة مُستنسخة وعملية التسجيل مزيّفة مما يسمح للمخترق بالحصول على بيانات حساب الضحية.
	</li>
	<li>
		<strong>هجمات الحرمان من الخدمة الموزّعة Distributed Denial of Service</strong>: تُعرَف اختصارًا بهجمات DDoS، وهي هجمات تتمّ عن طريق إغراق خادم النظام بسيل من المعلومات غير اللازمة باستخدام مجموعة من الأجهزة Botnet وذلك بهدف تعطيل الخدمة أو إبطائها، مما يتسبب بحرمان استخدام الخدمة للمستخدم أو حجبها.
	</li>
	<li>
		<strong>البرمجيات الخبيثة malware</strong>: هي برمجية يزرعها المهاجم في النظام الضحية بحيث تُنفّذ مجموعة من الأوامر والمهام غير المصرّح بها على جهاز الضحية، نذكر من هذه البرمجيات برمجيات الفدية ransomware التي تشفّر بيانات جهاز الضحية وتمنعه من الدخول إليها بهدف الحصول على مبلغ مالي، وبرمجيات التجسس spyware التي تراقب نشاط المستخدم على حاسبه بشكل سرّي وتسرق بيانات حساسة مثل كلمات السر.
	</li>
	<li>
		<strong>هجمات كلمة المرور password attacks</strong>: هجوم يحاول فيه المخترق تخمين كلمة المرور لملفات أو نظام، وتتم عملية التخمين عادةً بمساعدة أدوات مخصصة وليس يدويًا. لذا يُنصح على الدوام بالابتعاد عن كلمات السر القصيرة والمُستخدمة بكثرة مثل password123 أو qwerty، والكلمات الموجودة في القاموس دون إضافة رموز وأرقام بينها (لأن هذه الأدوات تجرّب الكلمات الموجودة في القواميس).
	</li>
	<li>
		<strong>هجوم الوسيط man-in-the-middle attack</strong>: هجوم يستطيع المخترق عن طريقه الوصول إلى البيانات المُرسلة بين المُرسل والمُستقبل عن طريق التنصّت إلى الاتصال ما بينهما، وتتضمّن معظم بروتوكولات نقل البيانات نوعًا من التشفير والمصادقة للحماية من هذا النوع من الهجمات مثل شهادة <abbr title="Secure Socket Layer | طبقة المنافذ الآمنة">SSL</abbr> في بروتوكول HTTPS.
	</li>
</ul>
<h2>
	أنواع الأمن السيبراني
</h2>

<p>
	ينقسم مجال الأمن السيبراني إلى عدّة مجالات فرعية أخرى، إذ يختص كل مجال بعيّن بجانب من الفضاء السيبراني. نذكر من هذه المجالات ما يلي:
</p>

<ul>
<li>
		<strong>أمن الشبكات Network Security</strong>: يُعنى هذا المجال بحماية شبكات الحاسوب ويُحقَّق ذلك عن طريق بعض التقنيات مثل منع فقدان البيانات Data Loss Prevention اختصارًا DLP وإدارة الوصول إلى الهوية Identitiy Access Managment اختصارًا IAM وغيرها من التقنيات التي تجعل من الشبكات فضاءً آمنًا لمشاركة البيانات.
	</li>
	<li>
		<strong>أمن الهواتف المحمولة Mobile Security</strong>: عادةً ما يكون لهواتف موظّفي المؤسسة أو طاقمها وصول كامل لنظام المؤسسة وبياناتها، وبالنظر إلى أن الهواتف المحمولة هي الجهاز الأكثر استخدامًا عادةً لكل فرد فهذا يُضيف أهميّة زائدة على هذا المجال، إذ يجب تأمين هذه الأجهزة ضد الهجمات الخبيثة باستخدام مختلف التطبيقات (مثل تطبيقات المراسلة وغيرها).
	</li>
	<li>
		<strong>أمن السحابة Cloud Security</strong>: بدأت كافة المؤسسات بتبني تقنيات السحابة مؤخرًا، مما جعل أمن السحابة مجالًا مهمًا. تتضمن عملية حماية السحابة شروط التحكم بها والوصول إليها وكيفية توزيع بياناتها وهيكلة البنية التحتية ويندرج كل ذلك فيما يدعى باستراتيجية أمن السحابة cloud security strategy.
	</li>
	<li>
		<strong>أمن إنترنت الأشياء IoT Security</strong>: يُقصد <a href="https://academy.hsoub.com/programming/os-embedded-systems/%D9%85%D9%82%D8%AF%D9%85%D8%A9-%D9%81%D9%8A-%D8%A5%D9%86%D8%AA%D8%B1%D9%86%D8%AA-%D8%A7%D9%84%D8%A3%D8%B4%D9%8A%D8%A7%D8%A1-iot-r1514/" rel="">بإنترنت الأشياء</a> مجموعة الأجهزة التي تتواصل مع بعضها البعض وتراقب بيئتها المحيطة باستخدام الحساسات بالإضافة إلى إمكانية التحكم بها عبر الإنترنت. يحمي أمن إنترنت الأشياء هذه الأجهزة من استغلالها من طرف المخترقين عن طريق استخدام ثغرات في الأجهزة بذات نفسها أو وسيط الاتصال فيما بينها.
	</li>
	<li>
		<strong>أمن التطبيقات Application Security</strong>: التطبيقات التي تستخدم اتصال الإنترنت معرّضة لخطر الاختراق كأي نظام آخر يستخدم شبكات الإنترنت. يعمل أمن التطبيقات على حمايتها عن طريق منع التفاعلات الخبيثة مع التطبيقات الأخرى أو الواجهات البرمجية <abbr title="Application Programming Interface | واجهة برمجية">API</abbr>.
	</li>
</ul>
<h2>
	مجالات الأمن السيبراني
</h2>

<p>
	يحتوي مجال الأمن السيبراني على عدّة مسميات وظيفية فرعيّة مخصصة عنه، ولكل من هذه المسميات مهامها المحدّدة ومتطلباتها، نذكر منها أهم مجالات الأمن السيبراني مع شرح بسيط لكل منها.
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" data-fileid="112797" href="https://academy.hsoub.com/uploads/monthly_2022_11/637fc42fd26d3_--.jpg.589ca6b06cfc2760151c7b07880b4b81.jpg" rel=""><img alt="مجالات العمل في الأمن السيبراني" class="ipsImage ipsImage_thumbnailed" data-fileid="112797" data-unique="6q690m36h" src="https://academy.hsoub.com/uploads/monthly_2022_11/637fc42fe0f3d_--.thumb.jpg.59a6ee7a3c834ee0799854c05bc0409a.jpg" style="width: 600px; height: auto;"></a>
</p>

<h3>
	كبير موظفي أمن المعلومات
</h3>

<p>
	كبير موظفي أمن المعلومات Chief Information Security Officer اختصارًا CISO هو موظف ذو خبرة كبيرة مسؤول عن أمان المعلومات ضمن المؤسسة بشكل كامل، وتضمن مهامه تطوير طرق حماية البيانات وصيانتها وإدارة برامج المخاطرة، وعادةً ما يشغل هذا المنصب شخصٌ له باعٌ طويل في مجال أمن المعلومات وعمل في واحدة أو أكثر من وظائف أمن المعلومات بحيث يمتلك على خبرة كافية تمكّنه من قيادة فريق الأمن السيبراني في المؤسسة.
</p>

<h3>
	مهندس الأمن
</h3>

<p>
	تتضمّن مهام مهندس الأمن Security Architect تصميم نظم الأمان المُستخدمة في الدفاع عن المؤسسة من هجمات البرمجيات الخبيثة، إذ يُجري مهندس الأمن اختبارات لكشف الثغرات ونقاط الضعف في النظام بالإضافة لتزويد المعلومات المهمة إلى أعضاء الفريق الأمني الآخرين. يتطلّب هذا العمل خبرة في مجال هندسة المعلومات والشبكات وإدارة المخاطر بالإضافة إلى بروتوكولات الأمن وتشفير المعلومات.
</p>

<h3>
	مهندس الأمن السيبراني
</h3>

<p>
	يعمل مهندس الأمن السيبراني Cybersecurity Engineer على الإجراءات اللازمة التي تمنع نجاح هجوم سيبراني على أنظمة المؤسسة من شبكات وأجهزة، إذ يعمل على تطوير أنظمة دفاع سيبرانية ويعمل بشكل وثيق مع باقي أقسام المؤسسة للحفاظ على أمنها العام.
</p>

<p>
	يتطلّب هذا المنصب فهمًا جيدًا لكيفية عمل الشبكات وإدارة نظم التشغيل وهيكلتها بالإضافة إلى إتقان <a href="https://academy.hsoub.com/programming/c/" rel="">لغة البرمجة C‎</a> (لأن لغة C تتعامل مع الحاسوب بمستوى منخفض مما يمنحك أريحية التعامل مع نظام التشغيل ومكوناته مقارنةً <a href="https://academy.hsoub.com/programming/general/%D9%84%D8%BA%D8%A7%D8%AA-%D8%A7%D9%84%D8%A8%D8%B1%D9%85%D8%AC%D8%A9/#%D8%A3%D9%86%D9%88%D8%A7%D8%B9-%D9%84%D8%BA%D8%A7%D8%AA-%D8%A7%D9%84%D8%A8%D8%B1%D9%85%D8%AC%D8%A92" rel="">بلغات البرمجة عالية المستوى</a> الأخرى مثل جافاسكربت وبايثون).
</p>

<h3>
	محلل البرمجيات الخبيثة
</h3>

<p>
	يعمل محلل البرمجيات الخبيثة Malware Analyst على فحص وتحليل التهديدات السيبرانية مثل الفيروسات وأحصنة طروادة Trojan horses والروبوتات bots لفهم طبيعتها وتطوير أدوات حماية للمدافعة ضدها، بالإضافة إلى توثيق طرق الحماية ضد البرمجيات الخبيثة وتجنبها.
</p>

<p>
	يتطلب هذا المنصب فهمًا لكل من نظام ويندوز ولينكس بالإضافة إلى معرفة بلغة البرمجة C/C++‎، واستخدام بعض الأدوات مثل IDA Pro وRegShot وTCP View.
</p>

<h3>
	مختبر الاختراق أو المخترق الأخلاقي
</h3>

<p>
	يُعرف مختبر الاختراق Penetration Tester بالمخترق الأخلاقي Ethical Hacker أيضًا، وهو مستشار أمني تتمثل مهامه باستغلال الثغرات الأمنية ونقاط الضعف في النظام بطريقة مماثلة لما سيفعله المخترق ذو النية السيئة التخريبية، إلا أن مختبر الاختراق يُطلِع فريق الأمان السيبراني في المؤسسة على الثغرات لتصحيحها، كما أنه يصمّم أدوات الاختراق ويوثّق نتائج الاختبار.
</p>

<h3>
	المحلل الجنائي الرقمي
</h3>

<p>
	يعمل المحلل الجنائي الرقمي Computer Forensics Analyst بعد حدوث هجوم سيبراني، إذ يجمع الأدلة الرقمية ويحاول استعادة البيانات المحذوفة أو المُعدَّل عليها أو المسروقة. يتطلّب هذا العمل معرفة بالشبكات والأمن السيبراني وفهم لقوانين الجرائم السيبرانية بالإضافة إلى مهارات تحليلية والانتباه للتفاصيل الدقيقة.
</p>

<h2>
	كيف أبدأ بتعلم تخصص الأمن السيبراني؟
</h2>

<p>
	إن أردت البدء بتعلم الأمن السيبراني، فهذا يعني أنه عليك أن تبدأ بتعلم بعض المفاهيم والأدوات الأساسية في هذا المجال ألا وهي:
</p>

<ul>
<li>
		<a href="https://academy.hsoub.com/programming/general/%D9%83%D9%8A%D9%81-%D8%AA%D8%AA%D8%B9%D9%84%D9%85-%D8%A7%D9%84%D8%A8%D8%B1%D9%85%D8%AC%D8%A9-%D9%86%D8%B5%D8%A7%D8%A6%D8%AD-%D9%88%D8%A3%D8%AF%D9%88%D8%A7%D8%AA-%D9%84%D8%B1%D8%AD%D9%84%D8%AA%D9%83-%D9%81%D9%8A-%D8%B9%D8%A7%D9%84%D9%85-%D8%A7%D9%84%D8%A8%D8%B1%D9%85%D8%AC%D8%A9-r206/" rel="">تعلم أساسيات البرمجة</a>، وذلك باختيار لغة برمجة معيّنة (يُفضّل البدء <a href="https://academy.hsoub.com/programming/c/" rel="">بلغة C</a> أو <a href="https://academy.hsoub.com/programming/cpp/" rel="">C++</a>‎ إن أردت دخول مجال الأمن السيبراني لأن اللغتين تتعامل مع الحاسوب على مستوى منخفض مما يمنحك أريحية التحكم بنظام التشغيل وأجزاء النظام الأخرى).
	</li>
	<li>
		فهم كيفية عمل أنظمة التشغيل وبنيتها، ننصحُك هنا بقراءة <a href="https://academy.hsoub.com/files/24-%D8%A3%D9%86%D8%B8%D9%85%D8%A9-%D8%A7%D9%84%D8%AA%D8%B4%D8%BA%D9%8A%D9%84-%D9%84%D9%84%D9%85%D8%A8%D8%B1%D9%85%D8%AC%D9%8A%D9%86/" rel="">كتاب أنظمة التشغيل للمبرمجين</a>
	</li>
	<li>
		كيفية عمل قواعد البيانات التي تخزّن بيانات أي نظام حاسوبي وعمليّة تصميمها، يمكنك الاطّلاع على <a href="https://academy.hsoub.com/files/26-%D8%AA%D8%B5%D9%85%D9%8A%D9%85-%D9%82%D9%88%D8%A7%D8%B9%D8%AF-%D8%A7%D9%84%D8%A8%D9%8A%D8%A7%D9%86%D8%A7%D8%AA/" rel="">كتاب تصميم قواعد البيانات</a> للحصول على فهم أوّلي حول هذا الموضوع.
	</li>
	<li>
		إتقان التعامل مع <a href="https://academy.hsoub.com/devops/linux/%D8%A3%D9%87%D9%85-20-%D8%A3%D9%85%D8%B1%D8%A7-%D9%81%D9%8A-%D9%86%D8%B8%D8%A7%D9%85-%D8%A7%D9%84%D8%AA%D8%B4%D8%BA%D9%8A%D9%84-%D9%84%D9%8A%D9%86%D9%83%D8%B3-%D9%84%D8%AC%D9%85%D9%8A%D8%B9-%D8%A7%D9%84%D9%85%D8%B3%D8%AA%D8%AE%D8%AF%D9%85%D9%8A%D9%86-r585/" rel="">سطر الأوامر command line</a> بمختلف أوامره البسيطة والمتقدمة.
	</li>
	<li>
		فهم كيفية عمل <a href="https://academy.hsoub.com/devops/networking/" rel="">الشبكات</a> وكيف تتواصل الأجهزة مع بعضها البعض وتتبادل البيانات باستخدام بروتوكولات الاتصال المختلفة.
	</li>
	<li>
		التعامل مع أحد توزيعات <a href="https://academy.hsoub.com/devops/linux/%D9%85%D8%A7-%D9%87%D9%88-%D9%86%D8%B8%D8%A7%D9%85-%D8%A7%D9%84%D8%AA%D8%B4%D8%BA%D9%8A%D9%84-%D9%84%D9%8A%D9%86%D9%83%D8%B3%D8%9F-r451/" rel="">لينكس</a> الموجهة للأمن السيبراني والاختراقات بتمرّس، ونذكر منها توزيعة ريدهات Redhat لإدارة الخوادم (التي ستمكنك من الحصول على <a href="https://academy.hsoub.com/certificates/redhat/rhcsa/" rel="">شهادة RHCSA</a> وشهادة RHCE) ولينكس كالي Kali Linux، إذ تحتوي هذه التوزيعات على أدوات أساسية للتعامل مع الشبكات ومهام الأمن السيبراني.
	</li>
</ul>
<p>
	ماذا بعد؟ اختر مجالًا لتركّز عليه من المجالات السابقة التي ذكرناها، إذ أنّ مسار التعلم الخاص بك سيختلف بحسب توجهك، وهناك بعض الشهادات التي يجب أن تمتلكها لتزيد من فرصك في الحصول على عمل بحسب المجال الذي تختاره. على سبيل المثال تُعدّ شهادة CEH هامة لمختبر الاختراق -أو المخترق الأخلاقي- وشهادة CHFI هامة للمحلل الجنائي الرقمي.
</p>

<p>
	نرشّح لك أيضًا <a href="https://academy.hsoub.com/files/20-%D8%AF%D9%84%D9%8A%D9%84-%D8%A7%D9%84%D8%A3%D9%85%D8%A7%D9%86-%D8%A7%D9%84%D8%B1%D9%82%D9%85%D9%8A/" rel="">كتاب دليل الأمان الرقمي</a> للاستزادة وتعلّم المزيد بخصوص الأمن السيبراني والاختراق.
</p>

<p>
	المصادر:
</p>

<ul>
<li>
		<a href="https://www.techtarget.com/searchsecurity/definition/cybersecurity" rel="external nofollow">What is Cybersecurity? Everything You Need to Know | TechTarget</a>
	</li>
	<li>
		<a href="https://www.simplilearn.com/top-cybersecurity-terms-you-need-to-know-article" rel="external nofollow">Top 20 Cybersecurity Terms You Need to Know (simplilearn.com)</a>
	</li>
	<li>
		<a href="https://www.comptia.org/content/articles/what-is-cybersecurity" rel="external nofollow">What Is Cybersecurity | Types and Threats Defined | Cybersecurity | CompTIA</a>
	</li>
	<li>
		<a href="https://www.springboard.com/blog/cybersecurity/how-to-learn-cybersecurity/" rel="external nofollow">How To Learn Cybersecurity on Your Own</a>
	</li>
	<li>
		<a href="https://www.simplilearn.com/tutorials/cyber-security-tutorial/cyber-security-for-beginners" rel="external nofollow">A Basic Guide On Cyber Security For Beginners 2022 Edition | Simplilearn</a>
	</li>
	<li>
		<a href="https://www.issa.org/wp-content/uploads/2021/07/ESG-ISSA-Research-Report-Life-of-Cybersecurity-Professionals-Jul-2021.pdf" rel="external nofollow">The Life and Times of Cybersecurity Professionals 2021 - Volume V - ISSA</a>
	</li>
</ul>
<h2>
	اقرأ أيضًا
</h2>

<ul>
<li>
		<a href="https://academy.hsoub.com/devops/networking/%D8%A7%D9%84%D9%87%D8%AC%D9%85%D8%A7%D8%AA-%D8%A7%D9%84%D8%A3%D9%85%D9%86%D9%8A%D8%A9-security-attacks-%D9%81%D9%8A-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A7%D8%AA-%D8%A7%D9%84%D8%AD%D8%A7%D8%B3%D9%88%D8%A8%D9%8A%D8%A9-r540/" rel="">الهجمات الأمنية Security Attacks في الشبكات الحاسوبية</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/certificates/cisco/ccna/%D8%AA%D8%A3%D9%85%D9%8A%D9%86-%D8%A7%D9%84%D8%B4%D8%A8%D9%83%D8%A7%D8%AA-%D8%A7%D9%84%D9%84%D8%A7%D8%B3%D9%84%D9%83%D9%8A%D8%A9-r19/" rel="">تأمين الشبكات اللاسلكية</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/devops/security/%D9%83%D9%8A%D9%81-%D9%86%D8%AE%D9%81%D9%81-%D9%85%D9%86-%D9%87%D8%AC%D9%85%D8%A7%D8%AA-ddos-%D8%B6%D8%AF-%D9%85%D9%88%D9%82%D8%B9%D9%86%D8%A7-%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-cloudflare-r136/" rel="">كيف نخفف من هجمات DDoS ضد موقعنا باستخدام CloudFlare</a>
	</li>
	<li>
		<a href="https://academy.hsoub.com/devops/security/7-%D8%AA%D8%AF%D8%A7%D8%A8%D9%8A%D8%B1-%D8%A3%D9%85%D9%86%D9%8A%D8%A9-%D9%84%D8%AD%D9%85%D8%A7%D9%8A%D8%A9-%D8%AE%D9%88%D8%A7%D8%AF%D9%8A%D9%85%D9%83-r60/" rel="">7 تدابير أمنية لحماية خواديمك</a>
	</li>
</ul>
]]></description><guid isPermaLink="false">664</guid><pubDate>Sat, 26 Nov 2022 14:07:00 +0000</pubDate></item><item><title>&#x623;&#x633;&#x627;&#x633;&#x64A;&#x627;&#x62A; &#x627;&#x644;&#x623;&#x645;&#x646; &#x648;&#x627;&#x644;&#x62D;&#x645;&#x627;&#x64A;&#x629; &#x639;&#x644;&#x649; &#x62E;&#x648;&#x627;&#x62F;&#x64A;&#x645; &#x623;&#x648;&#x628;&#x646;&#x62A;&#x648;: AppArmor</title><link>https://academy.hsoub.com/devops/security/%D8%A3%D8%B3%D8%A7%D8%B3%D9%8A%D8%A7%D8%AA-%D8%A7%D9%84%D8%A3%D9%85%D9%86-%D9%88%D8%A7%D9%84%D8%AD%D9%85%D8%A7%D9%8A%D8%A9-%D8%B9%D9%84%D9%89-%D8%AE%D9%88%D8%A7%D8%AF%D9%8A%D9%85-%D8%A3%D9%88%D8%A8%D9%86%D8%AA%D9%88-apparmor-r186/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2016_01/ubuntu-server-apparmor.png.1b9f22c52fbfe27721163bb3da01936a.png" /></p>

<p dir="rtl">إن AppArmor هو وحدة حماية في لينُكس تقيّد وصول البرامج المختلفة إلى قائمة بالملفات التابعة لها والإمكانيات المذكورة في مسودة posix 1003.le.</p><p dir="rtl" style="text-align: center;"><a href="https://academy.hsoub.com/uploads/monthly_2016_01/ubuntu-server-apparmor.png.dfd3dbdbadaa0b45c1c560c151e5382c.png" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="11590" src="https://academy.hsoub.com/uploads/monthly_2016_01/ubuntu-server-apparmor.thumb.png.1fbd098159b954214402ef10f2a9293a.png" class="ipsImage ipsImage_thumbnailed" alt="ubuntu-server-apparmor.thumb.png.1fbd098"></a></p><p dir="rtl">إن AppArmor مثبَّت ومفعَّل افتراضيًا، ويستخدم «ملفات ضبط» (profiles) للتطبيقات لتحديد أيّة ملفات وأذونات يتطلبها التطبيق، بعض الحزم تُثبِّت ملفات الضبط الخاصة بها، ويمكن العثور على ملفات ضبط إضافية في حزمة <span style="font-family:courier new,courier,monospace;">apparmor-profiles</span>.</p><p dir="rtl">أدخل الأمر الآتي في الطرفية لتثبيت حزمة <span style="font-family:courier new,courier,monospace;">apparmor-profiles:</span></p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo apt-get install apparmor-profiles</pre><p dir="rtl">لملفات ضبط AppArmor نمطين من التنفيذ:</p><ul dir="rtl"><li>البناء أو التعلم (Complaining/Learning): من المسموح تجاوز ملف الضبط وستُسجَّل تلك التجاوزات؛ يفيد هذا النمط في اختبار وتطوير ملفات ضبط جديدة.</li><li>الإجبار أو التقييد (Enforced/Confined): إجبار السياسة في ملفات الضبط، وتسجيل التجاوزات أيضًا.</li></ul><h2 dir="rtl"><a rel="external nofollow" name="9.4.1.%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85%20AppArmor%7Coutline"></a><a rel="external nofollow" name="9.4.1.%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85%20AppArmor%7Coutline"></a> استخدام AppArmor</h2><p dir="rtl"><strong>تنويه</strong>: هذا القسم معلول <a rel="external nofollow" href="https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/1304134">بعلِّة</a><a rel="external nofollow" name="sdfootnote1anc" href="#sdfootnote1sym">1</a>، فللأسف لن تعمل الأوامر التي فيه كما يجب.</p><p dir="rtl">تحتوي حزمة <span style="font-family:courier new,courier,monospace;">apparmor-utils</span> على أدوات سطر أوامر تمكِّنك من تغيير نمط تنفيذ AppArmor، أو معرفة حالة ملف ضبط، أو إنشاء ملفات جديدة ...إلخ.</p><ul><li><p dir="rtl">يُستخدَم الأمر <span style="font-family:courier new,courier,monospace;">apparmor_status</span> لعرض حالة ملفات ضبط AppArmor.</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo apparmor_status</pre><ul><li><p dir="rtl">يضع الأمر<span style="font-family:courier new,courier,monospace;"> aa-complain</span> ملفَ ضبطٍ قيدَ البناء:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo aa-complain /path/to/bin</pre><ul><li><p dir="rtl">الأمر<span style="font-family:courier new,courier,monospace;"> aa-enforce</span> يضعُ ملفَ ضبطٍ قيدَ التنفيذ:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo aa-enforce /path/to/bin</pre><ul><li><p dir="rtl">المجلد<span style="font-family:courier new,courier,monospace;"> ‎/etc/apparmor.d</span> هو مكان تواجد ملفات ضبط AppArmor؛ يمكن أن يُستخدَم لتعديل «نمط» جميع ملفات الضبط.</p><p dir="rtl">أدخِل ما يلي لوضع كل الملفات في نمط البناء:</p><ul></ul></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo aa-complain /etc/apparmor.d/*</pre><p dir="rtl">لوضع جميع الملفات قيد التنفيذ:</p><ul></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo aa-enforce /etc/apparmor.d/*</pre><ul><li><p dir="rtl">يُستخدَم الأمر<span style="font-family:courier new,courier,monospace;"> apparmor_parser</span> لتحميل ملف ضبط إلى النواة، ويمكن أن يُستخدَم لإعادة تحميل ملف ضبط مُحمَّل مسبقًا باستخدام الخيار ‎<span style="font-family:courier new,courier,monospace;">-r</span>؛ لتحميل ملف ضبط:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">cat /etc/apparmor.d/profile.name | sudo apparmor_parser -a</pre><p dir="rtl">ولإعادة تحميل ملف ضبط محمَّل مسبقًا:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">cat /etc/apparmor.d/profile.name | sudo apparmor_parser -r</pre><ul><li><p dir="rtl">يمكن استخدام ‎service apparmor لإعادة تحميل كل ملفات الضبط:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo service apparmor reload</pre><ul><li><p dir="rtl">يمكن استخدام المجلد <span style="font-family:courier new,courier,monospace;">‎/etc/apparmor.d/disable</span> مع الخيار <span style="font-family:courier new,courier,monospace;">‎‎apparmor_parser‏ ‎‎-R </span>لتعطيل ملف ضبط:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo ln -s /etc/apparmor.d/profile.name /etc/apparmor.d/disable/
sudo apparmor_parser -R /etc/apparmor.d/profile.name</pre><p dir="rtl">لإعادة تفعيل ملف ضبط معطَّل، احذف الوصلة الرمزية إلى الملف في<span style="font-family:courier new,courier,monospace;"> ‎/etc/apparmor.d/disable</span> ثم أعد تحميل ملف الضبط باستخدام الخيار ‎<span style="font-family:courier new,courier,monospace;">-a</span>:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo rm /etc/apparmor.d/disable/profile.name
cat /etc/apparmor.d/profile.name | sudo apparmor_parser -a</pre><ul><li><p dir="rtl">يمكن تعطيل AppArmor، وسيزال تحميل وحدة النواة بإدخال ما يلي:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo service apparmor stop
sudo update-rc.d -f apparmor remove</pre><ul><li><p dir="rtl">لإعادة تفعيل AppArmor، أدخِل:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo service apparmor start
sudo update-rc.d apparmor defaults</pre><p dir="rtl"><strong>ملاحظة</strong>: استبدل<span style="font-family:courier new,courier,monospace;"> profile.name</span> باسم ملف الضبط الذي تريد تعديله، أيضًا استبدل <span style="font-family:courier new,courier,monospace;">‎/path/to/bin </span>بمسار الملف التنفيذي الحقيقي؛ على سبيل المثال، للأمر <span style="font-family:courier new,courier,monospace;">ping</span> استخدم <span style="font-family:courier new,courier,monospace;">‎/bin/ping</span>.</p><h2 dir="rtl">ملفات الضبط</h2><p dir="rtl">ملفات الضبط (profiles) هي ملفات نصية بسيطة موجودة في ‎<span style="font-family:courier new,courier,monospace;">/etc/apparmor.d/‎</span>؛ هذه الملفات مسماةٌ وفقًا للمسار الكامل للملف التنفيذي الذي تضبطه لكن مع إبدال «‎/» بنقطة «.»؛ على سبيل المثال، <span style="font-family:courier new,courier,monospace;">‎/etc/apparmor.d/bin.ping </span>هو ملف ضبط AppArmor للأمر ‎<span style="font-family:courier new,courier,monospace;">/bin/ping</span>.</p><p dir="rtl">هنالك نوعان رئيسيان من القواعد المستخدمة في ملفات الضبط:</p><ul dir="rtl"><li><strong>قيود المسار (Path entries)</strong>: التي تحدد الملفات التي يمكن للتطبيق الوصول إليها في نظام الملفات.</li><li><strong>قيود الإمكانيات (Capability entries)</strong>: تحدد الامتيازات التي يُسمَح لعملية مقيدة بإجرائها.</li></ul><p dir="rtl">ألقِ نظرةً على <span style="font-family:courier new,courier,monospace;">‎/etc/apparmor.d/bin.ping </span>كمثال:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">#include &lt;tunables/global&gt;
/bin/ping flags=(complain) {
  #include &lt;abstractions/base&gt;
  #include &lt;abstractions/consoles&gt;
  #include &lt;abstractions/nameservice&gt;

  capability net_raw,
  capability setuid,
  network inet raw,

  /bin/ping mixr,
  /etc/modules.conf r,
}</pre><ul dir="rtl"><li><strong>‎#include &lt;tunables/global&gt;‎</strong>: تضمين تعبيرات من ملفات أخرى، وهذا يسمح للعبارات المشتركة بين عدّة تطبيقات بالتواجد في ملف مشترك.</li><li><strong>(‎/bin/ping flags=(complain</strong>: المسار إلى التطبيق صاحب ملف الضبط، وضبط النمط إلى complain.</li><li><strong>capability net_raw,‎</strong>: السماح للتطبيق بالوصول إلى امتياز CAP_NET_RAW Posix.le.</li><li>‎<strong>/bin/ping mixr,‎</strong>: السماح للتطبيق بوصول القراءة والتنفيذ إلى الملف.</li></ul><p dir="rtl"><strong>ملاحظة</strong>: يجب إعادة تحميل ملف الضبط بعد تعديله، راجع القسم «استخدام AppArmor» للتفاصيل.</p><h3 dir="rtl">إنشاء ملف ضبط</h3><p dir="rtl"><strong>1. صمم خطة اختبار</strong>: فكر كيف يمكن «تمرين» التطبيق؛ يجب أن تُقسَّم خطة الاختبار إلى حالات اختبار صغيرة، وكل حالة اختبار لها شرح صغير وقائمة بالخطوات التي يجب اتباعها.</p><p dir="rtl">بعض حالات الاختبار القياسية هي:</p><ul dir="rtl"><li>بدء تشغيل البرنامج.</li><li>إيقاف البرنامج.</li><li>إعادة تحميل البرنامج.</li><li>اختبار جميع الأوامر المدعومة من سكربت init.</li></ul><p><strong>2. توليد ملف الضبط الجديد</strong>: استخدم<span style="font-family:courier new,courier,monospace;"> aa-genprof</span> لتوليد ملف ضبط جديد؛ من الطرفية:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo aa-genprof exectable</pre><p dir="rtl">على سبيل المثال:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo aa-genprof slapd</pre><p dir="rtl">3. لكي يُضمَّن ملف الضبط الجديد الخاص بك في حزمة <span style="font-family:courier new,courier,monospace;">apparmor-profiles</span>، فبلِّغ عن علة في <a rel="external nofollow" href="https://bugs.launchpad.net/ubuntu/+source/apparmor/+filebug">Lanuchpad</a><a rel="external nofollow" name="sdfootnote2anc" href="#sdfootnote2sym">2</a> عن حزمة AppArmor:</p><ul dir="rtl"><li>ضمِّن خطة الاختبار وحالات الاختبار.</li><li>أضف ملف الضبط الجديد إلى العلة.</li></ul><h3 dir="rtl">تحديث ملفات الضبط</h3><p dir="rtl">عندما لا يعمل برنامج ما كما يجب؛ فافحص الرسائل التي تُرسَل إلى ملفات السجل؛ يمكن أن يُستخدَم البرنامج<span style="font-family:courier new,courier,monospace;"> aa-logprof</span> لفحص ملفات السجل لرسائل التدقيق الخاصة ببرنامج AppArmor؛ راجعها وحدِّث ملفات الضبط.</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo aa-logprof</pre><h2 dir="rtl">مصادر</h2><ul dir="rtl"><li>راجع «<a rel="external nofollow" href="http://www.novell.com/documentation/apparmor/apparmor201_sp10_admin/index.html?page=/documentation/apparmor/apparmor201_sp10_admin/data/book_apparmor_admin.html">AppArmor Administraion Guide</a>» لإعدادات الضبط المتقدمة.</li><li>للتفاصيل حول استخدام AppArmor مع إصدارات أخرى من أوبنتو، فراجع صفحة ويكي المجتمع حول <a rel="external nofollow" href="https://help.ubuntu.com/community/AppArmor">AppArmor</a>.</li><li>صفحة «<a rel="external nofollow" href="http://en.opensuse.org/SDB:AppArmor_geeks">OpenSUSE AppArmor</a>» هي تقديم آخر إلى AppArmor.</li><li>مكان رائع للسؤال حول المساعدة في AppArmor، والاندماج مع مجتمع خواديم أوبنتو هو قناة ‎ ‎#ubuntu-server على خادوم <a rel="external nofollow" href="http://freenode.net/">F</a><a rel="external nofollow" href="http://freenode.net/">reenode</a> (شبكة IRC).</li></ul><p dir="rtl">ترجمة -وبتصرف- للمقال <a rel="external nofollow" href="https://help.ubuntu.com/lts/serverguide/apparmor.html">Ubuntu Server Guide: AppArmor</a>.</p>
]]></description><guid isPermaLink="false">186</guid><pubDate>Wed, 20 Jan 2016 21:54:17 +0000</pubDate></item><item><title>&#x623;&#x633;&#x627;&#x633;&#x64A;&#x627;&#x62A; &#x627;&#x644;&#x623;&#x645;&#x646; &#x648;&#x627;&#x644;&#x62D;&#x645;&#x627;&#x64A;&#x629; &#x639;&#x644;&#x649; &#x62E;&#x648;&#x627;&#x62F;&#x64A;&#x645; &#x623;&#x648;&#x628;&#x646;&#x62A;&#x648;: &#x625;&#x62F;&#x627;&#x631;&#x629; &#x627;&#x644;&#x645;&#x633;&#x62A;&#x62E;&#x62F;&#x645;&#x64A;&#x646;</title><link>https://academy.hsoub.com/devops/security/%D8%A3%D8%B3%D8%A7%D8%B3%D9%8A%D8%A7%D8%AA-%D8%A7%D9%84%D8%A3%D9%85%D9%86-%D9%88%D8%A7%D9%84%D8%AD%D9%85%D8%A7%D9%8A%D8%A9-%D8%B9%D9%84%D9%89-%D8%AE%D9%88%D8%A7%D8%AF%D9%8A%D9%85-%D8%A3%D9%88%D8%A8%D9%86%D8%AA%D9%88-%D8%A5%D8%AF%D8%A7%D8%B1%D8%A9-%D8%A7%D9%84%D9%85%D8%B3%D8%AA%D8%AE%D8%AF%D9%85%D9%8A%D9%86-r184/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2016_01/ubuntu-server-user-management.png.ea16aab459056b8bcf737b28cb4a7bc0.png" /></p>

<p dir="rtl">يجب أن تضع الحماية نصب عينيّك عند تثبيت ونشر واستخدام أي نوع من أنظمة تشغيل الحاسوب؛ وعلى الرغم من أن تثبيتًا حديثًا لأوبنتو هو آمن نسبيًا للاستخدام الفوري على الإنترنت، لكن من المهم أن يكون لديك فهم متوازن لحالة حماية أنظمتك بناءً على طريقة استخدامها بعد «نشرها» (deployment).</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2016_01/ubuntu-server-user-management.png.6481bf49eec5ef6dbd194ee09ded5b4a.png"><img data-fileid="11512" class="ipsImage ipsImage_thumbnailed" alt="ubuntu-server-user-management.thumb.png." src="https://academy.hsoub.com/uploads/monthly_2016_01/ubuntu-server-user-management.thumb.png.938659c06f8cb054749cfd2280a3cd8a.png"></a></p><p dir="rtl">يزودك هذا الدرس بلمحة عن المواضيع المرتبطة بالحماية المتعلقة بنسخة خادوم أوبنتو 14.04، ويخط الخطوط العريضة للإجراءات التي يمكنك أن تستخدمها لحماية خادومك وشبكتك من أي عدد من التهديدات الأمنية المحتملة.</p><h2 dir="rtl">إدارة المستخدمين</h2><p dir="rtl">إدارة المستخدمين هي جزء جوهري في الحفاظ على نظامٍ آمن؛ تقود الإدارة غير الكفء للمستخدمين والامتيازات عادةً إلى إضعاف أمان النظام؛ وبالتالي من الضروري أن تفهم كيف تحميه باستخدام تقنيات إدارة حسابات المستخدمين.</p><h2 dir="rtl">أين هو حساب الجذر؟</h2><p dir="rtl">اتخذ مطورو أوبنتو قرارًا واعيًا بتعطيل حساب الجذر الإداري افتراضيًا في جميع حالات تثبيت أوبنتو؛ هذا لا يعني أن حساب الجذر محذوفٌ أو لا يمكن الوصول إليه، حيث أُسنِدَت إليه ببساطة كلمة مرور لا تُطابِق أيّة قيمة؛ أي أنك لا تستطيع الدخول إليه مباشرةً.</p><p dir="rtl">لكن بدلًا من ذلك، يُحَثّ المستخدمون أن يستخدموا أداةً باسم <span style="font-family:courier new,courier,monospace;">sudo</span> لتنفيذ مهام إدارة النظام؛ حيث تسمح <span style="font-family:courier new,courier,monospace;">sudo</span> لمستخدم موثوق بترقية امتيازاته باستخدام كلمة مروره بدلًا من الحاجة لمعرفة كلمة المرور الخاصة بحساب الجذر. هذه الطريقة البسيطة تعطي المسؤولية لجميع أفعال المستخدم، وتمنح مدير النظام تحكمًا بالأفعال التي يستطيع القيام بها مع امتيازاته الحالية.</p><ul><li><p dir="rtl">إذا أردت تفعيل حساب الجذر لسبب ما، فببساطة أسند كلمة مرور لذاك الحساب:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo passwd</pre><p dir="rtl">ستطلب منك أداة <span style="font-family:courier new,courier,monospace;">sudo</span> كلمة مرورك، ثم ستطلب منك توفير كلمة مرور جديدة لحساب الجذر كما هو موضح هنا:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">[sudo] password for username: (enter your own password)
Enter new UNIX password: (enter a new password for root)
Retype new UNIX password: (repeat new password for root)
passwd: password updated successfully</pre><ul><li><p dir="rtl">استخدم الأمر <span style="font-family:courier new,courier,monospace;">passwd</span> بهذه الطريقة لتعطيل كلمة مرور حساب الجذر:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo passwd -l root</pre><ul><li><p dir="rtl">لكن إذا أردت تعطيل الحساب نفسه، فاستخدم الأمر الآتي:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">usermod --expiredate 1</pre><ul><li><p dir="rtl">تستطيع التعلم أكثر عن <span style="font-family:courier new,courier,monospace;">sudo</span> بالنظر إلى صفحة الدليل المتعلقة بهذا الأمر:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">man sudo</pre><p dir="rtl">ينتمي المستخدم الذي أُنشِئ أثناء تثبيت أوبنتو افتراضيًا إلى المجموعة «sudo» المُضافة إلى ملف <span style="font-family:courier new,courier,monospace;">‎/etc/sudoers </span>كمستخدم sudo موثوق؛ إذا رغبت بمنح أيّ حساب آخر امتيازات الجذر كاملةً عبر sudo، فأضف ذاك الحساب إلى المجموعة sudo.</p><h2 dir="rtl">إضافة وحذف المستخدمين</h2><p dir="rtl">عملية إدارة المستخدمين المحليين والمجموعات هي عملية بسيطة ومباشرة ولا تختلف إلا قليلًا بين أغلبية أنظمة تشغيل غنو/لينُكس الأخرى؛ تحث أوبنتو، والتوزيعات المبنية على دبيان، على استخدام الحزمة «<span style="font-family:courier new,courier,monospace;">adduser</span>» لإدارة الحسابات.</p><ul><li><p dir="rtl">لإضافة حساب مستخدم جديد، استخدم الشكل العام الآتي، وأكمل مع الرسائل التي تطلب منك إعطاء كلمة مرور للحساب، وتعريف بعض الخاصيات مثل الاسم الكامل ورقم الهاتف ...إلخ.</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo adduser username</pre><ul><li><p dir="rtl">استخدم الأمر الآتي لحذف مستخدم ومجموعته الرئيسية:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo deluser username</pre><p dir="rtl">لا يؤدي حذف حساب مستخدم إلى حذف مجلد المنزل الموافق له؛ هذا يعود لك إن كنت تريد أو لا تريد حذف المجلد يدويًا أو الإبقاء عليه وفقًا لسياساتك.</p><p dir="rtl">تذكر أن أي مستخدم آخر يُضاف لاحقًا بنفس معرفَيّ UID/GID للمستخدم القديم سيحصل على وصول كامل لهذا المجلد إذا لم تتخذ الاحتياطات اللازمة.</p><p dir="rtl">قد ترغب بتغيير قيم UID/GID إلى قيم أخرى ملائمة أكثر -كحساب الجذر مثلًا- وربما تريد أيضًا نقل المجلد لتفادي التضاربات المستقبلية:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo chown -R root:root /home/username/
sudo mkdir /home/archived_users/
sudo mv /home/username /home/archived_users/</pre><ul><li><p dir="rtl">لكي تقفل حساب مستخدم مؤقتًا أو تلغي قفله، فاستخدم الأمر <span style="font-family:courier new,courier,monospace;">passwd</span> مع الخيارات الموافقة للعملية التي تريد إجراءها كما يلي (على التوالي وبالترتيب):</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo passwd -l username
sudo passwd -u username</pre><ul><li><p dir="rtl">لإضافة أو حذف مجموعة خاصة، فاستخدم الأمرين الآتيين على التوالي وبالترتيب:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo addgroup groupname
sudo delgroup groupname</pre><ul><li><p dir="rtl">استخدم الشكل الآتي من أمر<span style="font-family:courier new,courier,monospace;"> adduser</span> لإضافة مستخدم إلى مجموعة:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo adduser username groupname</pre><h2 dir="rtl">أمن حساب المستخدم</h2><p dir="rtl">عندما يُنشأ مستخدمٌ جديد، فستُنشِئ الأداة<span style="font-family:courier new,courier,monospace;"> adduser</span> مجلد منزل جديد باسم ‎<span style="font-family:courier new,courier,monospace;">/home/username</span>، يتشكل ملف الحساب (profile) الافتراضي اعتمادًا على المحتويات الموجودة في مجلد ‎<span style="font-family:courier new,courier,monospace;">/etc/skel</span> الذي يحتوي على أساسيات ضبط الحساب.</p><p dir="rtl">إذا كان سيحتوي خادومك على عدّة مستخدمين، فيجب أن تولي أذونات مجلد المنزل للمستخدم اهتمامًا شديدًا لتحقيق سرية بياناته؛ افتراضيًّا، مجلدات منزل المستخدم في أوبنتو تُنشَأ بأذونات القراءة والتنفيذ؛ هذا يعني أن كل المستخدمين يستطيعون الوصول والتجول في محتويات مجلدات المنزل للمستخدمين الآخرين، ربما لا يلائم ذلك احتياجات بيئة تشغيل نظامك.</p><ul><li><p dir="rtl">استخدم الأمر الآتي للتأكد من أذونات مجلد المنزل للمستخدمين الحاليين:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">ls -ld /home/username</pre><p dir="rtl">يُظهِر الناتج الآتي أن مجلد <span style="font-family:courier new,courier,monospace;">‎/home/username</span> لديه أذن القراءة لجميع المستخدمين (العالم أو world):</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">drwxr-xr-x 2 username username 4096 2007-10-02 20:03 username</pre><ul><li><p dir="rtl">تستطيع إزالة أذن القراءة للجميع بتنفيذ الأمر:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo chmod 0750 /home/username</pre><p dir="rtl"><strong>ملاحظة</strong>: بعض الأشخاص يميلون لاستخدام الخيار التعاودي (‎-R‏ [recursive]) دومًا دون تمييز الحالات التي يجب استخدامه فيها، الذي يُعدِّل أذونات المجلدات «الأبناء» والملفات التي فيها، لكن هذا ليس ضروريًا، وربما يتسبب ببعض النتائج غير المرغوب بها؛ يكفي تعديل أذونات المجلد «الأب» فقط لمنع المستخدمين غير المصرَّح لهم بدخول أي شيء داخل هذا المجلد الأب.</p><p dir="rtl">طريقة أخرى أكثر فعاليةً هي تعديل ضبط الأذونات الافتراضية العام للأداة<span style="font-family:courier new,courier,monospace;"> adduser </span>عند إنشاء مجلدات المنزل للمستخدمين الجدد؛ عدِّل ببساطة الملف ‎<span style="font-family:courier new,courier,monospace;">/etc/adduser.conf</span> وغيِّر قيمة المتغير <span style="font-family:courier new,courier,monospace;">DIR_MODE</span> إلى قيمةٍ مناسبةٍ، حيث ستحصل جميع مجلدات المنزل الجديدة على الأذونات الصحيحة:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">DIR_MODE=0750</pre><ul><li><p dir="rtl">بعد تصحيح أذونات المجلد باستخدام إحدى الطرق السابق ذكرها، فتأكد من النتائج بالأمر:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">ls -ld /home/username</pre><p dir="rtl">النتائج الآتية تُظهِر أنه قد أُزيل إذن القراءة لجميع المستخدمين:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">drwxr-x--- 2 username username 4096 2007-10-02 20:03 username</pre><h2 dir="rtl">سياسة كلمة المرور</h2><p dir="rtl">أحد أهم الجوانب في حماية نظامك هو استخدام سياسة قوية لكلمات المرور؛ إذ تتطلب العديد من الاختراقات الأمنية الناجحة استخدام هجمات «القوة القاسية» (brute force) وتخمين كلمات المرور الضعيفة من القاموس؛ إذا كنت تنوي توفير أي نوع من التحكم البعيد الذي يتطلب كلمة المرور المحلية للنظام، فتأكد أنك تحقق المتطلبات الدنيا من تعقيد كلمات المرور، ومدة كلمة المرور الدنيا، والتدقيق الرتيب لأنظمة الاستيثاق عندك.</p><h3 dir="rtl">طول كلمة المرور الدنيا</h3><p dir="rtl">تتطلب أوبنتو افتراضيًا طولًا أصغريًا لكلمة المرور يساوي ستة محارف، يمكن التحكم بهذه القيمة في ملف <span style="font-family:courier new,courier,monospace;">‎/etc/pam.d/common-password</span> الظاهر هنا:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">password [success=2 default=ignore] pam_unix.so obscure sha512</pre><p dir="rtl">إذا أردت تغيير الحد الأدنى لطول كملة المرور إلى ثمانية محارف، فعدِّل المتغير الملائم إلى <strong>min=8</strong>؛ كما يلي:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">password [success=2 default=ignore] pam_unix.so obscure sha512 min=8</pre><p dir="rtl"><strong>ملاحظة</strong>: التحقق البسيط من كلمة المرور، والطول الأدنى لها لا يُطبَّق على الأوامر المُنفَّذة باستخدام <span style="font-family:courier new,courier,monospace;">sudo</span> لإعداد مستخدم جديد.</p><h3 dir="rtl">مدة صلاحية كلمة المرور</h3><p dir="rtl">عند إنشاء حسابات للمستخدمين، فيجب أن تُنشِئ سياسة لعمر كلمة المرور الأدنى والأقصى وإجبار المستخدمين على تغيير كلمات مرورهم عندما تنتهي مدتها.</p><ul><li><p dir="rtl">استخدم الأمر الآتي لعرض حالة حساب مستخدم:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo chage -l username</pre><p dir="rtl">يُظهِر ناتج الأمر السابق حقائق مثيرة للاهتمام حول حساب المستخدم، ولنفترض أنه لا توجد أيّة سياسات مطبَّقة:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">Last password change                              : Jan 20, 2008
Password expires                                  : never
Password inactive                                 : never
Account expires                                   : never
Minimum number of days between password change    : 0
Maximum number of days between password change    : 99999
Number of days of warning before password expires : 7</pre><ul><li><p dir="rtl">استخدم الأمر الآتي ببساطة وتابع مع الرسائل التفاعلية لضبط أيّة قيمة من هذه القيم:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo chage username</pre><p dir="rtl">ما يلي مثالٌ لطريقة تغيير تاريخ انتهاء الصلاحية (‎-E) إلى 01/31/2008، والعمر الأدنى لكلمة المرور (‎-m) إلى 5 أيام، والعمر الأقصى لكلمة المرور (‎-M) إلى 90 يومًا، ومدة الخمول (inactivity، الخيار ‎-I) إلى 5 أيام بعد انتهاء صلاحية كلمة المرور، ومدة وقت التحذير (‎-W) إلى 14 يومًا قبل انتهاء صلاحية كلمة المرور.</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo chage -E 01/31/2008 -m 5 -M 90 -I 5 -W 14 username</pre><ul><li><p dir="rtl">للتأكد من التعديلات، استخدم نفس الأمر المذكور آنفًا:</p></li></ul><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo chage -l username</pre><p dir="rtl">يجب أن يُظهِر الناتج السياسات الجديدة التي أعددناها لهذا الحساب:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">Last password change                              : Jan 20, 2008
Password expires                                  : Apr 19, 2008
Password inactive                                 : May 19, 2008
Account expires                                   : Jan 31, 2008
Minimum number of days between password change    : 5
Maximum number of days between password change    : 90
Number of days of warning before password expires : 14</pre><h2 dir="rtl">اعتبارات أمنية أخرى</h2><p dir="rtl">تستخدم العديد من التطبيقات آليات استيثاق أخرى يمكن أن يغفلها حتى مدراء الأنظمة الخبراء؛ وبالتالي فمن المهم فهم والتحكم في طريقة استيثاق المستخدمين وحصولهم على الوصول إلى الخدمات والتطبيقات على خادومك.</p><h3 dir="rtl">وصول <abbr title="Secure SHell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> من المستخدمين المعطلين</h3><p dir="rtl">لا يمنع تعطيل حساب مستخدم من دخوله إلى خادومك عن بعد إن كان قد ضبط استيثاق بمفتاح RSA عام؛ وسيتمكنون من الحصول على وصول إلى الصدفة (shell) في الخادوم دون الحاجة لأيّة كلمة مرور؛ تذكر أن تتحقق من مجلد المنزل للمستخدمين الذي يسمحون بهذا النوع من وصول <abbr title="Secure SHell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> الذي تم الاستيثاق منه؛ أي ‎<span style="font-family:courier new,courier,monospace;">/home/username/.<abbr title="Secure SHell | القشرة (أو الصَدَفة) الآمنة">ssh</abbr>/authroized_keys</span>.</p><p dir="rtl">احذف أو أعد تسمية مجلد ‎<span style="font-family:courier new,courier,monospace;">.<abbr title="Secure SHell | القشرة (أو الصَدَفة) الآمنة">ssh</abbr>/‎</span> في مجلد المنزل للمستخدم لتعطيل إمكانيات الاستيثاق عبر <abbr title="Secure SHell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>.</p><p dir="rtl">تأكد أن تتحقق من أيّة اتصالات <abbr title="Secure SHell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> قد أُنشِئت من المستخدم المعطَّل؛ حيث من الممكن أن يملكوا اتصالات داخلة أو خارجة موجودة مسبقًا، «اقتل» (kill) تلك العمليات إذا عثرت عليها.</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">who | grep username # to get the pts/X terminal
sudo pkill -f pts/X</pre><p dir="rtl">احصر الوصول عبر <abbr title="Secure SHell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> إلى حسابات المستخدمين الذين يجب أن يحصلوا عليها فقط؛ فعلى سبيل المثال، ربما تنُشِئ مجموعة تسميها «<strong>sshlogin</strong>» وتضيف اسم المجموعة كقيمة مرتبطة بالمتغير<strong> AllowGroups</strong> الموجود في الملف ‎<span style="font-family:courier new,courier,monospace;">/etc/<abbr title="Secure SHell | القشرة (أو الصَدَفة) الآمنة">ssh</abbr>/sshd_config</span>.</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">AllowGroups sshlogin</pre><p dir="rtl">ثم أضف مستخدمي <abbr title="Secure SHell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> المسموح لهم إلى المجموعة «<strong>sshlogin</strong>»، وأعد تشغيل خدمة <abbr title="Secure SHell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">sudo adduser username sshlogin
sudo service ssh restart</pre><h3 dir="rtl">استيثاق المستخدم بقواعد البيانات الخارجية</h3><p dir="rtl">تتطلب معظم الشبكات المشاريع التجارية آليةَ استيثاقٍ مركزية والتحكم بالوصول إلى جميع مصادر النظام، إذا ضبطت خادومك ليستوثق من المستخدمين من قاعدة بيانات خارجية؛ فتأكد من تعطيل حسابات المستخدمين محليًا وخارجيًا، وبهذا تتأكد من أن البديل المحلي للاستيثاق غير متوفر.</p><h2 dir="rtl">تأمين الطرفية</h2><p dir="rtl">وكما غيرها من ترسانة الحماية التي تستخدمها لحماية خادومك، من القواعد الصارمة هو التأمين ضد الأضرار الناتجة عن شخص لديه الوصول الفيزيائي لبيئتك، على سبيل المثال، سرقة الأقراص الصلبة، أو خلل في الطاقة الكهربائية ...إلخ؛ وبالتالي يجب أن يكون تأمين الطرفية جزءًا رئيسيًا في استراتيجية الحماية الفيزيائية؛ سيحد «قفل الشاشة» (screen door) من تأثير مجرم عادي، أو على الأقل سيبطئ عمل مجرم مصمم على إلحاق الأذى بنظامك! لذلك من المستحسن إجراء بعض احتياطات الوقاية فيما يتعلق بحماية الطرفية.</p><p dir="rtl">سيساعدك ما يلي في الدفاع عن خادومك ضد المشاكل التي قد تسبب عواقب وخيمة.</p><h3 dir="rtl">تعطيل Ctrl+Alt+Delete</h3><p dir="rtl">بادئ ذي بدء، يستطيع أي شخص لديه الوصول الفيزيائي للوحة المفاتيح ببساطة أن يستخدم تجميعة المفاتيح «<span style="font-family:courier new,courier,monospace;">Ctrl+Alt+Delete</span>» لإعادة إقلاع الخادوم دون الحاجة لتسجيل الدخول؛ طبعًا يمكن لأي شخص إزالة كبل الكهرباء من المقبس، لكن ما يزال عليك منع استخدام هذه التجميعة على خادوم إنتاجي؛ وهذا يجبر المهاجم على اتخاذ إجراءات عنيفة لإعادة إقلاع الخادوم، وسوف يمنع إعادة الإقلاع غير المقصودة في نفس الوقت.</p><p dir="rtl">لتعطيل إعادة إقلاع الخادوم بالضغط على تجميع الأزرار <span style="font-family:courier new,courier,monospace;">Ctrl+Alt+Delete</span>، فضع رمز التعليق قبل السطر الآتي في ملف ‎<span style="font-family:courier new,courier,monospace;">/etc/init/control-alt-delete.conf</span>:</p><pre data-pbcklang="html" data-pbcktabsize="4" class="html ipsCode prettyprint">#exec shutdown -r now "Control-Alt-Delete pressed"</pre><p>ترجمة -وبتصرف- للمقال <a rel="external nofollow" href="https://help.ubuntu.com/lts/serverguide/user-management.html">Ubuntu Server Guide: User Management</a>.</p>
]]></description><guid isPermaLink="false">184</guid><pubDate>Tue, 19 Jan 2016 10:33:00 +0000</pubDate></item><item><title>&#x643;&#x64A;&#x641; &#x646;&#x62E;&#x641;&#x641; &#x645;&#x646; &#x647;&#x62C;&#x645;&#x627;&#x62A; DDoS &#x636;&#x62F; &#x645;&#x648;&#x642;&#x639;&#x646;&#x627; &#x628;&#x627;&#x633;&#x62A;&#x62E;&#x62F;&#x627;&#x645; CloudFlare</title><link>https://academy.hsoub.com/devops/security/%D9%83%D9%8A%D9%81-%D9%86%D8%AE%D9%81%D9%81-%D9%85%D9%86-%D9%87%D8%AC%D9%85%D8%A7%D8%AA-ddos-%D8%B6%D8%AF-%D9%85%D9%88%D9%82%D8%B9%D9%86%D8%A7-%D8%A8%D8%A7%D8%B3%D8%AA%D8%AE%D8%AF%D8%A7%D9%85-cloudflare-r136/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_11/cloudflare-ddos.png.61fb2d6c65234af7d9f79920dd855947.png" /></p>

<p dir="rtl" style="text-align: center;"><a href="https://academy.hsoub.com/uploads/monthly_2015_11/cloudflare-ddos.png.8e3e6847f3c971feafdaaccd5ddf6c10.png" class="ipsAttachLink ipsAttachLink_image"><img data-fileid="6978" src="https://academy.hsoub.com/uploads/monthly_2015_11/cloudflare-ddos.thumb.png.4fc87ac29dc5021e77fd82b4ccd2ccef.png" class="ipsImage ipsImage_thumbnailed" alt="cloudflare-ddos.thumb.png.4fc87ac29dc502"></a></p><p dir="rtl">إنّ CloudFlare هي عبارة عن شركة تزوّدنا بشبكة تسليم محتوى (content delivery network (CDN وخدمات DNS مُوزَّعة من خلال العمل كوسيط عكسي reverse proxy لمواقع الإنترنت، من الممكن استخدام خدمات CloudFlare المجانيّة والمدفوعة لتحسين الأمان، السرعة، والتوفّر availability للموقع بطرق عديدة، سنشرح في هذا الدّرس كيفيّة استخدام خدمة tier المجانيّة لـ CloudFlare لحماية خادوم الويب ضدّ هجمات DDoS الجارية المعتمدة على HTTP عن طريق تمكين الوضع "أنا تحت الهجوم" "I'm Under Attack Mode"، يُخفِّف وضع الأمان هذا من هجمات DDoS من خلال تقديم صفحة وسيطة للتحقق من شرعيّة الاتصال قبل تمريره إلى خادوم الويب لدينا.</p><h2 dir="rtl">المتطلبات الأساسية</h2><p dir="rtl">يفترض هذا الدّرس أنّك تمتلك ما يلي:</p><ul dir="rtl"><li>خادوم ويب.</li><li>نطاق Domain مُسجَّل يُشير إلى خادوم الويب لدينا.</li><li>نفاذ إلى لوحة التحكّم لمسجّل النطاق الذي أصدر النطاق.</li></ul><p dir="rtl">يجب قبل المتابعة أيضًا التسجيل Sign up من أجل حساب CloudFlare، فلنلاحظ أنّ هذا الدرس يتطلّب استخدام أسماء خواديم CloudFlare.</p><h2 dir="rtl">إعداد النطاق لاستخدام CloudFlare</h2><p dir="rtl">يجب قبل أن نستخدم أي من ميّزات CloudFlare أن نقوم بإعداد النّطاق لدينا ليستخدم DNS التّابع لـ CloudFlare.</p><p dir="rtl">إن لم نفعل هذا مُسبقًا نقوم بتسجيل الدخول إلى CloudFlare.</p><h3 dir="rtl">إضافة موقع ومسح Scan تسجيلات DNS Records</h3><p dir="rtl">بعد تسجيل الدخول سيتم أخذنا إلى صفحة البدء Get Started with CloudFlare، وهنا يجب إضافة موقعنا إلى CloudFlare:</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic1.png.d68bd6bc5c5893eee223612bb0d792e2.png"><img data-fileid="6966" class="ipsImage ipsImage_thumbnailed" alt="pic1.thumb.png.7afdb19d90f85e1c14fe4047c" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic1.thumb.png.7afdb19d90f85e1c14fe4047cc9961b9.png"></a></p><p dir="rtl">نُدخِل اسم النّطاق الذي نريد استخدام CloudFlare معه ونضغط على زر بدء المسح Begin Scan، ينبغي أن يتم نقلنا إلى صفحة تشبه ما يلي:</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic2.png.157b8c1660926e89182397e0daa07712.png"><img data-fileid="6967" class="ipsImage ipsImage_thumbnailed" alt="pic2.thumb.png.b96ad31181bc550db86b21fd4" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic2.thumb.png.b96ad31181bc550db86b21fd48e48067.png"></a></p><p dir="rtl">سيستغرق هذا حوالي دقيقة، وعندما يكتمل نضغط زر المتابعة Continue.</p><p dir="rtl">تُظهِر الصفحة التالية نتائج مسح تسجيلات DNS، نتحقّق من أنّ تسجيلات DNS الحاليّة موجودة لأنّها التسجيلات التي ستستخدمها CloudFlare لتحليل resolve الطلبات إلى نطاقنا، استخدمنا في مثالنا <span style="font-family:courier new,courier,monospace;">cockroach.nyc</span> كنطاق:</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic3.png.fad924116e4875975b091456ac15e578.png"><img data-fileid="6968" class="ipsImage ipsImage_thumbnailed" alt="pic3.thumb.png.ffdbe39bc1ba643f4f21c7cff" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic3.thumb.png.ffdbe39bc1ba643f4f21c7cffdc329dd.png"></a></p><p dir="rtl">نلاحظ أنّه من أجل تسجيلات A وCNAME التي تشير إلى خادوم الويب لدينا، يجب أن يملك عمود الحالة Status غيمة برتقاليّة مع سهم يمر من خلالها، والذي يشير إلى أنّ حركة مرور البيانات traffic ستتدفق من خلال وسيط CloudFlare العكسي قبل أن تصل إلى خادومنا أو خواديمنا.</p><p dir="rtl">نختار بعدها خطّة CloudFlare plan، سنستخدم في هذا الدّرس خيار الخطّة المجانية Free plan، إن كنت ترغب بالدفع لأجل خطة أخرى توفّر لك ميزات CloudFlare إضافيّة تستطيع فعل ذلك:</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic4.png.5204b359c12ea584816f7686e04b4b6b.png"><img data-fileid="6969" class="ipsImage ipsImage_thumbnailed" alt="pic4.thumb.png.2e33450c713f837904a75d408" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic4.thumb.png.2e33450c713f837904a75d408a9dedc7.png"></a></p><h3 dir="rtl">تغيير أسماء الخواديم Nameservers لدينا</h3><p dir="rtl">تعرض الصفحة التالية جدولًا لأسماء الخواديم الحالية لنطاقنا والأسماء التي ينبغي تغييرها لها، يجب تغيير اثنين منهما إلى أسماء خواديم CloudFlare، أمّا بقية المُدخلات يجب إزالتها، وهذا مثال عمّا يجب أن تكون عليه الصفحة لديك إن كنت تستخدم أسماء خواديم DigitalOcean :</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic5.png.bc55d9912e61eba5ebb32e9f76447b64.png"><img data-fileid="6970" class="ipsImage ipsImage_thumbnailed" alt="pic5.thumb.png.1a140dc55a69dacf96c394a96" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic5.thumb.png.1a140dc55a69dacf96c394a9677850cc.png"></a></p><p dir="rtl">لتغيير أسماء خواديم نطاقنا نسجّل الدخول إلى لوحة تحكّم مُسجّل النطاق domain registrar ونقوم بالتغييرات التي عرضها لنا CloudFlare، على سبيل المثال إن كُنّا قد اشترينا نطاقنا عبر مُسجِّل مثل GoDaddy أو NameCheap سنحتاج لتسجيل الدخول إلى لوحة تحكّم الملائمة لهذا المُسجِّل ونقوم بالتغييرات هناك.</p><p dir="rtl">تتفاوت العمليّة بحسب مُسجِّل النطاق الخاص بنا، وإن لم تعرف كيفيّة القيام بها فهي مشابهة للعمليّة الموصوفة في كيف نشير إلى أسماء خواديم DigitalOcean من مُسجِّلات النطاق الشائعة عدا أنّك ستستخدم أسماء خواديم CloudFlare بدلًا من تلك الخاصة بـ DigitalOcean.</p><p dir="rtl">يستخدم النطاق في حالة هذا المثال أسماء خواديم DigitalOcean ونحتاج إلى تحديثه لكي يستخدم DNS الخاص بـ CloudFlare، تمّ تسجيل هذا النّطاق باستخدام NameCheap لذلك هذا هو المكان الذي يجب أن نذهب إليه لتحديث أسماء الخواديم.</p><p dir="rtl">نضغط على زر المتابعة Continue بعد الانتهاء من تغيير أسماء الخواديم لدينا، قد يستغرق حتى 24 ساعة ليتم تبديل أسماء الخواديم ولكن عادة ما يتم ذلك في غضون عدّة دقائق.</p><h3 dir="rtl">انتظار أسماء الخواديم حتى يتم تحديثها</h3><p dir="rtl">ولأنّ تحديث أسماء الخواديم يستغرق وقت غير معروف فمن المحتمل أن نرى هذه الصفحة بعد ذلك:</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic6.png.2af945328a96e05776e8f7b23046561b.png"><img data-fileid="6971" class="ipsImage ipsImage_thumbnailed" alt="pic6.thumb.png.64b61b5bc2c7366d164526296" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic6.thumb.png.64b61b5bc2c7366d164526296c0be8d6.png"></a></p><p dir="rtl">تعني الحالة قيد الانتظار Pending أنّ CloudFlare تنتظر تحديث أسماء الخواديم إلى الأسماء المطلوبة (على سبيل المثال <span style="font-family:courier new,courier,monospace;">olga.ns.cloudflare.com </span>و<span style="font-family:courier new,courier,monospace;">rob.ns.cloudflare.com</span>)، إن قمت بفعل ذلك فكل ما عليك الآن هو الانتظار والتحقّق لاحقًا من أجل الحالة نشيط Active، إن ضغطنا على الزر Recheck Nameservers أو انتقلنا إلى لوحة تحكّم CloudFlare فستقوم بالتحقّق من أنّ أسماء الخواديم قد تمّ تحديثها.</p><h3 dir="rtl">حالة CloudFlare نشيطة Active</h3><p dir="rtl">حالما يتم تحديث أسماء الخواديم سيستخدم النطاق DNS الخاص بـ CloudFlare وسنرى أنّه أصبح يمتلك الحالة نشيط Active، مثل ما يلي:</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic7.png.a3dd6e12fb05b721eefa96dde45925bc.png"><img data-fileid="6972" class="ipsImage ipsImage_thumbnailed" alt="pic7.thumb.png.2f7f6bc5e14d3b819da6421e5" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic7.thumb.png.2f7f6bc5e14d3b819da6421e558cbad4.png"></a></p><p dir="rtl">يعني هذا أنّ CloudFlare يعمل كوسيط عكسي لموقعنا، وأنّنا نملك النفاذ للميّزات المتاحة في الخطة التي سجلّناها، إن كُنّا نستخدم الخطة المجانيّة Free كما فعلنا في هذا الدّرس فسنملك النفاذ لبعض الميّزات التي تُحسِّن أمان موقعنا وسرعته وتوفّره، لن نُغطّي هنا جميع الميّزات لأنّنا نركّز على التخفيف من هجمات DDoS، ولكنّها تتضمّن CDN، SSL، التخزين المؤقت للمحتوى الثابت static content caching، الجّدار الناري Firewall (قبل أن تصل حركة مرور البيانات إلى خادومنا)، وأدوات تحليل حركة مرور البيانات traffic analytics tools.</p><p dir="rtl">نلاحظ أيضًا أنّ ملخّص الإعدادات Settings Summary الموجودة تحت نطاقنا يُظهِر مستوى الأمان الحالي لموقعنا (متوسّط medium افتراضيًّا) وبعض المعلومات الأخرى.</p><p dir="rtl">للحصول على أقصى استفادة من CloudFlare قد ترغب قبل المتابعة باتّباع هذا الدّليل: الخطوات الأولى المُوصى بها لجميع مستخدمي CloudFlare، وهذا ضروري للتأكّد من أنّ CloudFlare ستسمح بالاتصالات الشرعيّة من الخدمات التي نرغب بالسّماح بها، وأنّ سجلّات خادوم الويب لدينا ستظهر عناوين IP الأصليّة للزوار (بدلًا من عناوين IP الوسيط العكسي لـ CloudFlare).</p><p dir="rtl">بعد أن ننتهي من إعداد كل هذا سنلقي نظرة على إعدادات الوضع "أنا تحت الهجوم" "I'm Under Attack Mode" في جدار CloudFlare النّاري.</p><h2 dir="rtl">الوضع "أنا تحت الهجوم" I'm Under Attack Mode</h2><p dir="rtl">يتم تعيين أمان جدار CloudFlare النّاري افتراضيًّا إلى متوسّط Medium، يوفّر هذا بعض الحماية ضدّ الزوّار المُصنّفين كتهديد معتدل عن طريق إظهار صفحة تحدّي challenge page قبل السّماح لهم بالمتابعة إلى موقعنا، ومع ذلك إن كان موقعنا هدفًا لهجمات DDoS فلن يكون هذا كافيًا لإبقاء موقعنا يعمل، وفي هذه الحالة ربّما يكون الوضع I'm Under Attack Mode مناسبًا لنا.</p><p dir="rtl">إن قمنا بتمكين هذا الوضع سيتم عرض صفحة وسيطة لأي زائر لموقعنا تقوم بتنفيذ بعض التحقّقات من المتصفّح وتُؤخِّر الزائر لمدة 5 ثوان قبل تمريره إلى خادومنا، سيبدو هذا مشابهًا لما يلي:</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic8.png.ced12e135842185a22d0e0f1e30e5b2c.png"><img data-fileid="6973" class="ipsImage ipsImage_thumbnailed" alt="pic8.thumb.png.ef2d715887fd52bc28c75e254" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic8.thumb.png.ef2d715887fd52bc28c75e254bde6d23.png"></a></p><p dir="rtl">إن مرّت التحقّقات بنجاح سيتم السّماح للزائر بالوصول لموقعنا، ويكون عادةً مزيج المنع والتأخير للزوّار من الاتصال إلى موقعنا كافيًا لإبقائه قيد التشغيل حتى خلال هجمات DDoS.</p><p dir="rtl"><strong>ملاحظة</strong>: يجب أن تكون JavaScript و Cookies مُمكَّنة لدى زوّار الموقع لكي يتجاوزوا الصفحة الوسيطة، وإن لم يكن هذا مقبولًا يجب النظر في استخدام إعدادات أمان الجّدار الناري العالية "High" بدلًا من ذلك.</p><p dir="rtl">فلنبقِ في ذهننا أنّه يجب تمكين الوضع I'm Under Attack Mode فقط عندما يكون الموقع ضحيّة لهجمات DDoS، فيما عدا ذلك يجب إطفاؤه كي لا يُؤخِّر المستخدمين الطبيعيّين من النفاذ للموقع بدون سبب.</p><h3 dir="rtl">كيفية تمكين الوضع I'm Under Attack Mode</h3><p dir="rtl">أبسط طريقة لتمكين هذا الوضع هي الذهاب إلى صفحة نظرة عامّة Overview في CloudFlare (وهي الصفحة الافتراضيّة) واختياره من قائمة إجراءات سريعة Quick Actions:</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic9.png.0d4f769f760060ce53fee9bce5a80f61.png"><img data-fileid="6974" class="ipsImage ipsImage_thumbnailed" alt="pic9.thumb.png.ea7b765618dcf401c9985bc4a" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic9.thumb.png.ea7b765618dcf401c9985bc4af5f560b.png"></a></p><p dir="rtl">ستتحوّل إعدادات الأمان فورًا إلى حالة I'm Under Attack، وسيتم الآن عرض صفحة CloudFlare الوسيطة لأي زائر كما تحدّثنا سابقًا.</p><h3 dir="rtl">كيفية تعطيل الوضع I'm Under Attack Mode</h3><p dir="rtl">بما أنّه يجب استخدام هذا الوضع فقط في حالات الطوارئ وهجمات DDoS فينبغي علينا تعطيله عندما لا نكون تحت الهجوم، ولفعل هذا نذهب إلى صفحة نظرة عامّة Overview في CloudFlare ونضغط على الزر تعطيل Disable:</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic10.png.46f1f903efafc1d25e4ba5f06fb1962e.png"><img data-fileid="6975" class="ipsImage ipsImage_thumbnailed" alt="pic10.thumb.png.9f10ec656f55b0dd2b68effb" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic10.thumb.png.9f10ec656f55b0dd2b68effbe1381d9a.png"></a></p><p dir="rtl">نختار بعدها مستوى الأمان الذي نرغب بالتحويل إليه، الوضع الافتراضي والمُفضَّل هو متوسّط Medium:</p><p dir="rtl" style="text-align: center;"><a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_11/pic11.png.c9b91f9ff1b92e2397938bfc3d19d372.png"><img data-fileid="6976" class="ipsImage ipsImage_thumbnailed" alt="pic11.thumb.png.1014211e3711b5db34642966" src="https://academy.hsoub.com/uploads/monthly_2015_11/pic11.thumb.png.1014211e3711b5db3464296697ad1fed.png"></a></p><p dir="rtl">يجب أن يعود موقعنا إلى حالة نشيط Active وأن يتم تعطيل صفحة حماية DDoS.</p><h2 dir="rtl">الخاتمة</h2><p dir="rtl">الآن وقد أصبح موقعنا يستخدم CloudFlare أصبحنا نملك أداة أخرى لحمايته بسهولة من هجمات DDoS المُعتمدة على HTTP، هنالك أيضًا مجموعة من الأدوات الأخرى التي توفّرها CloudFlare والتي قد نرغب بإعدادها، مثل شهادات SSL المجانيّة، ولهذا من المُفضَّل أن تقوم باستكشاف الخيارات وترى ما هو مفيد لك.</p><p dir="rtl">حظًّا طيّبًا !</p><p dir="rtl">ترجمة -وبتصرّف- لـ <a rel="external nofollow" href="https://www.digitalocean.com/community/tutorials/how-to-mitigate-ddos-attacks-against-your-website-with-cloudflare">How To Mitigate DDoS Attacks Against Your Website with CloudFlare</a> لصاحبه Mitchell Anicas.</p>
]]></description><guid isPermaLink="false">136</guid><pubDate>Sat, 07 Nov 2015 21:57:04 +0000</pubDate></item><item><title>&#x643;&#x64A;&#x641;&#x64A;&#x629; &#x62A;&#x623;&#x645;&#x64A;&#x646; &#x627;&#x644;&#x62E;&#x648;&#x627;&#x62F;&#x645; &#x627;&#x644;&#x633;&#x62D;&#x627;&#x628;&#x64A;&#x629; &#x636;&#x62F; &#x647;&#x62C;&#x645;&#x627;&#x62A; &#x62D;&#x642;&#x646; SQL</title><link>https://academy.hsoub.com/devops/security/%D9%83%D9%8A%D9%81%D9%8A%D8%A9-%D8%AA%D8%A3%D9%85%D9%8A%D9%86-%D8%A7%D9%84%D8%AE%D9%88%D8%A7%D8%AF%D9%85-%D8%A7%D9%84%D8%B3%D8%AD%D8%A7%D8%A8%D9%8A%D8%A9-%D8%B6%D8%AF-%D9%87%D8%AC%D9%85%D8%A7%D8%AA-%D8%AD%D9%82%D9%86-sql-r98/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_08/sqlinjection.png.a1a7549f03b87b426c43ca255517fdf6.png" /></p>

<p>
	تستغل هجمات حقن SQL البرمجة السيئة للشفرة الخاصّة بالبرمجيات. إنّها هجمات حيث يقوم المهاجمون بإرسال شفرة عبر واحدٍ من مربّعات الإدخال الموجودة على موقعك (أيّ مربّع)، عوضًا عن أن يرسل بياناتٍ عادية كنتَ تنوي استقبالها عبر مربّعات الإدخال تلك. تقوم تلك الشفرة المُدخلة بتنفيذ عمليات الاستعلام على قاعدة البيانات الخاصّة بموقعك بطريقةٍ لم تكن تتوقعها، أو تقوم بتحطيم تطبيق الويب الخاصّ بك وتقوم بتخريب خادومك السحابي. م السهل جدًا عمل هجمات حقن SQL ضدّ المواقع الغير مؤمّنة. وحراسة موقعك ضدّ هذه الهجمات قد يكون من أهمّ ما تقوم به منذ اليوم الأوّل.
</p>

<p style="text-align: center;">
	<a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_08/sqlinjection.png.34d884cd203faa80e49dc74ba581d55a.png" data-fileid="3925" rel=""><img alt="sqlinjection.thumb.png.8eafc8341fc943f0d" class="ipsImage ipsImage_thumbnailed" data-fileid="3925" src="https://academy.hsoub.com/uploads/monthly_2015_08/sqlinjection.thumb.png.8eafc8341fc943f0d3c193ca24a8b72d.png"></a>
</p>

<h2>
	الخطوة الأولى: تعلم تمييز الشفرة المحتوية على ثغرات
</h2>

<p>
	تأخذ هجمات SQL دومًا شكل سلسلة نصّية يتم إرسالها من طرف مستخدمٍ تتكون من قسمين. القسم الأول هو عبارة عن تخمين لكيفية تعطيل أمرٍ تحاول شفرتك المصدرية أن تقوم بتنفيذه بأمان; القسم الثاني هو الشفرة الخبيثة التي يريد المهاجم تنفيذها على خادومك. إليك مثالًا على سلسلة نصّية مصممة لاستغلال ثغرة ممكنة في الشفرة المصدرية لديك:
</p>

<pre class="ipsCode prettyprint" data-pbcklang="" data-pbcktabsize="">
x' AND user.email IS NULL; --</pre>

<p>
	يبدو هذا كشيء قمتَ بكتابته بنفسك، وتلك هي النقطة. يأمل المستخدم المُخترِق أن تقوم بأخذ هذا السطر، وتقوم بتنفيذه بعملية استعلام SQL تبدو كالتالي:
</p>

<pre class="ipsCode prettyprint" data-pbcklang="" data-pbcktabsize="">
SELECT email, passwd FROM user
WHERE email = 'x' AND user.email IS NULL; --';</pre>

<p>
	لا يبدو أنّ هذا يقوم بالكثير حقًا، ولكن اعتمادًا على الطريقة التي سيستجيب بها تطبيقك إلى ما سبق، يمكن أن يوفّر هذا بعض المعلومات المهمّة للمُخترِق مثل اسم جدول قاعدة البيانات الذي تستعمله. بعد هذا، هناك المزيد من الهجمات التي يمكن للمهاجم أن يستخدمها لجلب المزيد من المعلومات، مثل أسماء المستخدمين وكلمات المرور.
</p>

<p>
	الفكرة الرئيسية التي يجب عليك فهمها هي أنّ الشفرة الخبيثة تحاول البحث عن ثغرة بعملية استعلام SQL التي يقوم بها تطبيقك لمحاولة استغلالها لجلب المعلومات أو إدراجها وتعديلها.
</p>

<p>
	لا تتطلب جميع هجمات حقن SQL إشارة الاقتباس المغلقة ('). إذا كانت شفرتك المصدرية تنفّذ عملية استعلامٍ متعلّقة برقم، فإنّك لن تقوم بالطبع بوضع تلك البيانات داخل إشارة اقتباس. وهذا يتركك عرضةً لهذا النوع من الهجمات:
</p>

<pre class="ipsCode prettyprint" data-pbcklang="" data-pbcktabsize="">
2097 OR 1=1</pre>

<p>
	يأمل المهاجم أن يقوم تطبيقك بعملية استعلام مشابهة للتالي:
</p>

<pre class="ipsCode prettyprint" data-pbcklang="" data-pbcktabsize="">
SELECT somedata FROM yourtable
WHERE userid = 2097 OR 1=1;</pre>

<p>
	غالبًا ما تكون شفرتك البرمجية مصممة لتقوم بعملية الاستعلام السابقة لتعيد البيانات فقط في حال تطابق الـ userid مع المستخدم الصحيح. ولكنّ حقنة الـSQL تجعل عملية الاستعلام تقوم دومًا بإرجاع البيانات.
</p>

<p>
	النقطة ليست في سلوكٍ معيّن لأيّ حقنة SQL. الشيء الأكثر أهمّية من هذا كلّه هو القاعدة العامّة لجميع حقن SQL: محاولة لتخمين كيفية حذف جزء معيّن من عملية استعلام، وإضافة جزءٍ آخر إليها لم تكن تتوقعه. هذا هو توقيع جميع هجمات حقن SQL. وهذه هي طريقة محاربتها.
</p>

<h2>
	الخطوة الثانية: اعثر على مدخلاتك
</h2>

<p>
	أفضل طريقة لتعقّب جميع نقط إدخال حقن SQL الممكنة في شفرتك البرمجية <strong>ليس</strong> عبر النظر إلى حقول إدخال HTML. بالطبع يمكنك العثور على العديد من الثغرات الممكنة هناك، ولكن هناك طرقٌ أخرى يمكن من خلالها للمستخدم أن يقوم بإدخال البيانات، مثل عنوان الويب (URL)، أو عبر واحدةٍ من واجهات AJAX الخاصّة بك.
</p>

<p>
	أفضل مكان للبحث فيه عن الثغرات هو الشيء الذي يريد المخترقون اختراقه بنفسه; جملة استعلام SQL بنفسها. على الأغلب، فإنّك تقوم بتنفيذ جميع عمليات الاستعلام عن طريق الأمر الأساسي نفسه، وربّما أمران آخران أو أكثر قليلًا. فقط ابحث عن هذه الأوامر في شفرتك البرمجية وستجد جميع الثغرات الممكنة بشكلٍ سريع. كمثال، إذا كانت شفرتك البرمجية مكتوبة بـPerl، فإنّ جميع عمليات استعلام SQL الخاصّة بك ستبدو هكذا:
</p>

<pre class="ipsCode prettyprint" data-pbcklang="" data-pbcktabsize="">
$result = mysql_query($sql)</pre>

<p>
	في تلك الحالة، يمكنك العثور بسرعة على جميع الثغرات الممكنة بواسطة سطر الأوامر، عبر استخدام أمر شبيه بالتالي:
</p>

<pre class="ipsCode prettyprint" data-pbcklang="" data-pbcktabsize="">
$ grep -R mysql_query *</pre>

<h2>
	الخطوة الثالثة: نظف مدخلاتك
</h2>

<p>
	هناك العديد من التقنيات التي يستخدمها الناس لمنع هجمات حقن SQL، ولكن خطّ دفاعك الأمامي يجب أن يكون تنظيف جميع مُدخلات المستخدم من أيّ شفرة خبيثة مشبوهة. يجب ألّا تعتقد بتاتًا أنّ المستخدم سيقوم بإدخال البيانات بالطريقة التي تريدها. في الواقع، يجب عليك أن تفترض العكس - أنّهم سيقومون بإدخال الشفرات الخبيثة في كلّ مكانٍ ممكن في موقعك.
</p>

<p>
	تنظيف المُدخلات يعني أنّه يجب اختبار جميع مُدخلات المستخدم للتأكّد من أنّها تحتوي فقط مُدخلات آمنة، مُدخلات لا يمكن استخدامها بتاتًا في شنّ هجوم.
</p>

<p>
	المُدخلات التي سيتم إدخالها من طرف المستخدم إلى خادوم SQL الخاصّ بك ستكون على شكلَين:
</p>

<ol>
<li>
		كرقم، مثل 2097.
	</li>
	<li>
		كسلسلة (string)، مثل اسم المستخدم، كلمة المرور أو البريد الإلكتروني.
	</li>
</ol>
<p>
	تتوقّع شفرتك البرمجية دومًا مُدخَلًا واحدًا من هذين الشكلين. في الأمثلة التي ذكرناها ببداية هذا المقال، كان المثال الأوّل عبارة عن سلسلة نصّية، وكان المثال الثاني عبارةً عن رقم.
</p>

<p>
	هناك أيضًا طريقتان لتنظيف البيانات: طريقة جيدة وطريقة سيئة. الطريقة السيئة هي التحقق من وجود حقن SQL الممكنة. السبب في كونها سيئة هو لأنّ عدد حقن SQL الممكن كبير جدًا، و"إبداع" المهاجمين واسع كذلك. الطريقة الجيّدة هي تنظيف البيانات للتعرّف على ما يبدو شكل الإدخال الصحيح عليه، وتجاهل كلّ شيء لا يتوافق مع شكل ذلك الإدخال الصحيح.
</p>

<p>
	البيانات الرقمية هي الأسهل للتنظيف، لذا سنقوم بتغطية هذا أوّلًا. يمكن للرقم أن يحتوي على إشارة سالبة على يساره، أو أن يكون متبوعا بأرقام أخرى، وربّما يحتوي على فاصلة عشرية. هذا كلّ ما يمكن للبيانات الرقمية أن تبدو عليه، في Perl، ستبدو الشفرة التي تتحقق من البيانات الرقمية كالتالي:
</p>

<pre class="ipsCode prettyprint" data-pbcklang="" data-pbcktabsize="">
if($numericaluserinput !~ /^-?[0-9.]+$/) {
  # البيانات المُدخلة ليست رقمًا
}</pre>

<p>
	من الصعب تخيّل أيّ حقنة خبيثة يمكنها أن تتخطى ما سبق.
</p>

<p>
	تنظيف المُدخلات النصّية أكثر صعوبة، لأنّه هناك العديد من الطرق لمحاولة إدخالها. يمكن للمهاجم أن يستخدم إشارات الاقتباس وغيرها بطرق "إبداعية" للقيام بالهجمات. في الواقع، محاولة إنشاء قائمة سوداء للحروف المُدخلة هو أمرٌ سيّء، لأنّه من السهل نسيان شيء مهم مثلًا.
</p>

<p>
	هناك طريقة أفضل، كما قمنا مع البيانات الرقمية، وهي تقييد مُدخلات المستخدم إلى قائمة بيضاء من الحروف فقط. كمثال، عناوين البريد الإلكتروني لا يجب أن تحتوي على شيء سوى الأرقام والحروف العادية وبعض الإشارات مثل @ و _ وعدا ذلك، يجب منع كلّ الحروف الأخرى. في لغة Perl، ستبدو الشفرة كالتالي:
</p>

<pre class="ipsCode prettyprint" data-pbcklang="" data-pbcktabsize="">
if($useremail ~= /^[0-9a-zA-Z\-_+.\@]$/) {
    # the user's email address is unacceptable
}</pre>

<p>
	يمكن العثور على قوائم بيضاء للأنواع الأخرى من المُدخلات كذلك مثل اسم المستخدم وكلمة المرور.. إلخ.
</p>

<p>
	قد تكون القوائم البيضاء مصدر إزعاج لبعض المستخدمين. فربّما يكون هناك رموز معيّنة في بعض مربّعات الإدخال تكون غير مقبولة من طرفها مثلًا، ولكنّك بالطبع حرّ لتقوم بتعديل القوائم البيضاء حسب حاجتك، ولكن لا تنسى أن تقوم ببحث عن الرموز والمحارف التي تريد تمكينها للتأكّد من أنّه لا يمكن استخدامها في حقن SQL، فعندما تختار بين حماية الموقع وراحة المستخدم، حماية الموقع تأتي أوّلًا.
</p>

<p>
	تنظيف المُدخلات بواسطة القوائم البيضاء جيّد لأنّه سهل. إذا كنتَ مُدركًا بشكل صحيح للرموز والمحارف التي تقوم بتمكينها، فحينها سيكون هذا الحلّ كافيًا للتخليص من هجمات حقن SQL.
</p>

<h2>
	الخطوة الرابعة: قبول المدخلات الخطيرة
</h2>

<p>
	لا تنخدع بالعنوان! سنتحدّث فقط عن أهمّية عدم قبول المُدخلات الخطيرة.
</p>

<p>
	صحيحٌ أنّ القوائم البيضاء شديدة التقييد جيّدة من أجل الحماية في حال ما إذا كان تطبيقك يستطيع أن يتوافق مع تلك التقييدات على المستخدمين. ولكن في بعض الحالات، قد يكون من المهمّ لنموذجك الربحي الخاصّ بالتطبيق ألّا تقوم بفرض أيّ تقييدات على مُدخلات المستخدمين.
</p>

<p>
	في هذه الحالة، غالبًا ما تكون لغة البرمجة التي تستعملها في تطبيقك تحوي على مكتباتٍ تساعدك في تنظيف مُدخلات المستخدمين من الشفرات الخبيثة. كمثال، مكتبة Perl DBI تحوي طُرقًا متعددة لمنع مُدخلات المستخدمين من التعامل مع استعلام SQL بخارج المنطقة المخصصة لها:
</p>

<pre class="ipsCode prettyprint" data-pbcklang="" data-pbcktabsize="">
my $sql = "INSERT INTO user (username, email) VALUES (?, ?)";
my $handle = $dbh-&gt;prepare( $sql );
$handle-&gt;execute( $untrustedusername, $untrustedemail);</pre>

<p>
	في المثال السابق، تمّ استخدام إشارة ؟ كعناصر نائبة (placeholders). تقوم مكتبة Perl DBI باستبدال هذه الإشارات بالمتغيّرات الغير موثوقة والتي تمّ إدخالها من طرف المستخدم. ولكن أثناء القيام بهذا، تقوم مكتبة DBI بتقييد هذه المتغيرات وتجعلها تتعامل فقط مع الحقول المخصصة لها بجدول قاعدة البيانات.
</p>

<p>
	هناك مكتبات مشابهة باللغات البرمجية الأخرى، إمّا لتقييد مُدخلات المستخدم، أو لتجاهل البيانات في حال حاولت التعامل مع خارج الحقل المخصص لها.
</p>

<p>
	ميّزة هذه التقنية هي أنّك قادرٌ على إعطاء ثقتك بالأشخاص المطورين لتلك المكتبات، حيث أنّهم سيقومون بتطويرها، والحفاظ عليها بعيدة عن الثغرات الأمنية والمشاكل الخطيرة. ولكن عيب هذه التقنية هي أنّها أقل قابلية للقراءة البشرية، وهكذا ربّما تنسى استخدام المكتبة الصحيحة لحماية بعض من عمليات استعلام SQL الخاصّة بك.
</p>

<h2>
	الخطوة الخامسة: خفف ضرر الهجمات الناجحة
</h2>

<p>
	اعتمادًا على ماهيّة نموذج الأعمال الذي تقوم به بموقعك، فربّما تودّ القيام بإنشاء خطٍّ أخير للدفاع، شيء مستقل تمامًا عن مطوري تطبيقك. فبعد كلّ شيء، ربّما يستخدم واحدٌ منهم القوائم البيضاء الخاطئة في مكان ما، أو فشل باستخدام المكتبة الصحيحة لتنظيف المُدخلات. ثغرة واحدة فقط من هذا النوع قد تسبب في تحويل موقعك بأكمله إلى موقع قابل للاختراق عبر هجمات SQL.
</p>

<p>
	أولًا، يجب عليك أن تفترض أنّ المهاجمين نجحوا باختراق دفاعاتك ضدّ حقن SQL، وأنّهم حصلوا على الصلاحيات الكاملة لإدارة خادومك. إنهم يملكون الآلة الآن بالكامل، على الرغم من أنّك من يهتم بصيانتها وتطويرها.
</p>

<p>
	لتجنّب ذلك السقوط المروع، يجب على الخادوم نفسه أن يكون مضبوطًا داخل بيئة معزولة عن الشبكة، حيث يكون مستخدم الجذر على النظام غير قادر على الرؤية أو الوصول إلى أيّ أجزاء أخرى موجودة على خادومك. هذا النوع من الدفاع يدعى DMZ، وهو رائع للغاية، وهو كذلك خارج نطاق هذا الدرس.
</p>

<p>
	مهما كانت الطريقة التي تستخدمها لتأمين خادومك ضدّ مستخدم مهاجم نجح بالدخول بالفعل، فإنّه يجب عليك أن تقوم بإعداد نظام تنبيهات يقوم بإخطار مدراء النظام في حال حصول نشاط معيّن على الخادوم. هذه التنبيهات ستخبرك ما إذا تمّ اختراق التطبيق، وأنّه عليك عمل مراجعة سريع للشفرة البرمجية وللخادوم نفسه. دون هذه التنبيهات، سيكون المهاجم قادرًا على قضاء وقتٍ ممتع في محاولة اختراق الـDMZ الخاصّ بك دون أن تشعر، وربّما لا تشعر بتاتًا بما يفعله إلى حين أن يسرق جميع البطاقات الائتمانية التي ظننت أنّها كانت معزولة تمامًا عن الخادوم، في بيئةً كنت تظن أنّها منفصلة عن خادومك الرئيسي.
</p>

<h2>
	الخطوة السادسة: وظف محترف حماية
</h2>

<p>
	إذا كنتَ تقوم بإدارة تطبيق ويب دون الاستعانة بخبير حماية، فحينها أنت تسبح بالمياه الخطيرة. وإذا كنت ولسبب ما غير قادر على توظيف خبير حماية وأمان، فإنّه يجب عليك الاستعانة بالقوائم البيضاء لتنظيف مُدخلات المستخدمين إلى حين. من السهل تضمين واستخدام القوائم البيضاء. لا بأس من تقييد تجرية المستخدمين قليلًا في سبيل حماية خادومك والبيانات الثمينة الموجودة عليه. وبمجرّد أن تقوم بتوظيف شخص يفهم في مجال الحماية والأمان، فستكون بعدها قادرًا بشكل أفضل على حماية موقعك من هجمات حقن SQL و XSS وغيرها من الهجمات الخطيرة التي قد تصيب موقعك.
</p>

<p>
	ترجمة -وبتصرف- للمقال: <a href="https://www.digitalocean.com/community/tutorials/how-to-secure-a-cloud-server-against-sql-injection" rel="external nofollow">How To Secure a Cloud Server Against SQL Injection</a>.
</p>
]]></description><guid isPermaLink="false">98</guid><pubDate>Tue, 18 Aug 2015 23:15:00 +0000</pubDate></item><item><title>7 &#x62A;&#x62F;&#x627;&#x628;&#x64A;&#x631; &#x623;&#x645;&#x646;&#x64A;&#x629; &#x644;&#x62D;&#x645;&#x627;&#x64A;&#x629; &#x62E;&#x648;&#x627;&#x62F;&#x64A;&#x645;&#x643;</title><link>https://academy.hsoub.com/devops/security/7-%D8%AA%D8%AF%D8%A7%D8%A8%D9%8A%D8%B1-%D8%A3%D9%85%D9%86%D9%8A%D8%A9-%D9%84%D8%AD%D9%85%D8%A7%D9%8A%D8%A9-%D8%AE%D9%88%D8%A7%D8%AF%D9%8A%D9%85%D9%83-r60/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_05/linux-security.png.2fd4331da59c46583c62dc233d8cb5d9.png" /></p>

<p id="مقدمة">
	ينصبّ الاهتمام عند إعداد بنية تحتيّة Infrastructure - عادةً - على جعل التّطبيقات تعمل بالطّريقة المرجوّة. ما لا ينتبه له الكثيرون أنّ التّركيز على عمل التّطبيقات دون الاهتمام الكافيّ بالاحتيّاجات الأمنيّة للبنية التحتيّة يُمكن أن تنتُج عنه نتائج كارثيّة في حال حدوث عمليّات اختراق.
</p>

<p>
	سنشرح في هذا الدّليل بعض التّصرّفات الأمنيّة الأساسيّة الّتي ينبغي تنفيذها قبل إعداد تطبيقاتك أو أثناءه.
</p>

<h2 id="مفاتيح-ssh">
	مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>
</h2>

<p>
	تُستخدَم مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> بديلًا عن الاستيثاق المعتمد على كلمات السّرّ Password-based authentication للاتّصال بخادوم <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>؛ وهي عبارة عن زوج من المفاتيح، علنيّ Public وسريّ Private، تُنشأ قبل الاستيثاق. يحتفظ المستخدم بالمفتاح السّرّي ولا يُشاركه مع أيّ كان، في حين يُمكن مشاركة المفتاح العلنيّ.
</p>

<div class="figure">
	<p style="text-align: center;">
		<a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_05/556a382a24905_01___SSH.png.23bf514b3a57946ff8fbdd6c373f5d3a.png" data-fileid="2293" rel="external"><img alt="01_استيثاق_مفاتيح_SSH.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2293" src="https://academy.hsoub.com/uploads/monthly_2015_05/556a382a57c98_01___SSH.thumb.png.6e6d2f2eac593f317869703c1de72719.png" style="width: 700px; height: 226px; border: 0px solid black; margin: 1px;"></a>
	</p>

	<p class="caption">
		<span style="line-height: 1.6;">يجب وضع المفتاح العلنيّ للمستخدِم ضمن مجلَّد خاصّ على الخادوم حتى يُمكنَ استخدامُ الاستيثاق عن طريق مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>. يطلُب الخادوم، عند محاولة المستخدِم الاتّصال به، دليلًا على أنّ العميل Client يمتلك المفتاح السّري الموافق للمفتاح العلنيّ الموجود على الخادوم. يستخدم عميل <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> طريقة تُثبت للخادوم امتلاكه للمفتاح السّرّي للمستخدِم؛ فيسمح الخادوم للمستخدِم بالولوج دون كلمة سرّ.</span>
	</p>
</div>

<h3 id="كيف-تحسن-مفاتيح-ssh-من-الأمان">
	1- كيف تحسّن مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> من الأمان؟
</h3>

<p>
	تُعمّى Encryption تمامًا كلّ إجراءات الاستيثاق، بما فيها الاستيثاق عن طريق كلمة السّر، عند استخدام <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>. في المقابل، يُمكن لسيّئي النّيّات - عند السّماح بالاستيثاق عن طريق كلمات السّرّ - محاولة الولوج إلى الخادوم مرارًا وتكرارًا عبر تخمين كلمة السّرّ. تمنح القدرات الحاليّة للحواسيب المهاجمين على تشغيل محاولات الاختراق آليًّا إلى أن يُعثَر على كلمة السّرّ الصّحيحة.
</p>

<p>
	يسمح إعداد استيثاق يعتمد على مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> بتعطيل الاستيثاق عن طريق كلمات السّرّ؛ إذ تحوي مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> عمومًا محارف أكثر بكثير من أيّ كلمة سرّ وهو ما يعني وجود إمكانيّات أكثر يجب على المُهاجم تجربتها. تعدّ الكثير من خوارزميّات غير قابلة للكسر، لسبب بسيط هو أنّ العتاد المتوفّر حاليًّا سيستغرق عقودًا أو أكثر للمرور بجميع الاحتمالات الممكنة.
</p>

<h3 id="ما-مدى-صعوبة-إعداد-الاستيثاق-اعتمادا-على-مفاتيح-ssh">
	2- ما مدى صعوبة إعداد الاستيثاق اعتمادًا على مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>؟
</h3>

<p>
	ضبط مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> سهلٌ جدًّا، كما أنّها الطّريقة الّتي يُنصَح بها للولوج عن بعد إلى خواديم لينكس ويونكس. يُمكن في ظرف دقائق إنشاء زوج من مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> على جهازك الشّخصيّ ثمّ نقل المفتاح العلنيّ إلى الخواديم.
</p>

<p>
	إذا كنت تشعر أنّك تحتاج للاستيثاق بالاعتماد على كلمات السّر فمن الجيّد استخدام حلول مثل fail2ban على خادومك للحدّ من إمكانيّة تخمين كلمة السّرّ.
</p>

<h2 id="الجدران-النارية-firewalls">
	الجدران النّاريّة Firewalls
</h2>

<p>
	الجدار النّاري عبارة عن برنامج (أو عتاد) يتحكّم في الخِدْمات المعروضة عبر الشّبكة. يعني هذا حظر أو تقييد الوصول إلى أي منفَذ Port لا يدخل ضمن المنافذ المتاحة للعموم.
</p>

<div class="figure">
	<p style="text-align: center;">
		<a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_05/556a383e3d315_02__.png.eac7acb6ee3598f8ce131991deea5f9e.png" data-fileid="2295" rel="external"><img alt="02_جدار_ناري.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2295" src="https://academy.hsoub.com/uploads/monthly_2015_05/556a383e64cea_02__.thumb.png.3e15f3e77260f4448aa5f84efd4a05aa.png"></a>
	</p>

	<p class="caption">
		توجد بعض الخدمات الّتي تُشغَّل افتراضيًّا في الكثير من الخواديم. يُمكن تقسيم هذه الخِدْمات إلى المجموعات التّاليّة:
	</p>
</div>

<ul>
<li>
		الخِدْمات العموميّة الّتي يُمكن لأيّ كان الوصول إليها عبر الإنترنت، غالبًا بصفةِ مجهول. خادوم الويب مثال جيّد على هذه المجموعة، إذ يسمح عادةً للجميع بالوصول إلى موقع الويب.
	</li>
	<li>
		الخِدْمات الخاصّة الّتي لا يُمكن الوصول إليها لغير مجموعة حسابات مُرخَّص لها أو من أماكن محدَّدة . لوحة التّحكّم في قاعدة البيانات مثال على هذه المجموعة من الخِدْمات.
	</li>
	<li>
		الخِدْمات الدّاخليّة الّتي يمكِن الوصول إليها فقط من الخادوم نفسِه؛ دون أن تُعرَض للعالم الخارجيّ. قاعدة بيانات لا تقبل سوى الاتّصالات المحليّة (من الخادوم) مثال على هذه المجموعة.
	</li>
</ul>
<p>
	تتأكد الجدران النّاريّة من أنّ الوصول إلى برنامجك مقيّد وفقًا للمجموعات أعلاه. تُترك الخِدمات العموميّة مفتوحةً ومتاحةً للجميع بينما يُحصَر الوصول إلى الخِدْمات الخاصّة اعتمادا على معايير محدَّدة. بالنّسبة للخِدمات الدّاخليّة فيُمكن جعلُها غير مرئيّة تمامًا من خارج الخادوم.
</p>

<p>
	تمنع أغلب إعدادات الجدران النّاريّة تمامًا الوصولَ إلى المنافذ غير المستعملة.
</p>

<h3 id="كيف-تحسن-الجدران-النارية-من-الأمان">
	1- كيف تحسّن الجدران النّاريّة من الأمان؟
</h3>

<p>
	الجدران النّاريّة جزء أساسيّ من إعداد أيّ خادوم. يُشكّل الجدار النّاري طبقة حماية إضافيّة، حتى ولو كانت البرامج الّتي تستخدمها تطبّق تدابير أمنيّة أو تقتصِر على الواجهات الّتي تريد لهذه البرامج العمل عليها.
</p>

<p>
	يمنع جدار ناريّ مضبوط بطريقة صحيحة الوصول إلى جميع الخِدمات ما عدا تلك الّتي تحتاج إلى أن تبقى مفتوحة. يقلّل عرض مجموعة برامج قليلة من الجوانب الّتي يُمكن إتيان الخادوم منها ممّا يعني قابليّةً أقلّ للتّعرّض للثّغرات الأمنيّة.
</p>

<h3 id="ما-مدى-صعوبة-إعداد-الجدران-النارية">
	2- ما مدى صعوبة إعداد الجدران النّاريّة؟
</h3>

<p>
	توجد جدران ناريّة كثيرة على أنظمة لينكس، تختلف في صعوبة التّعامل معها. بصفة عامّة، يجب ألّا تتجاوز مدّة ضبط الجدار النّاري بضع دقائق؛ كما أنّه عمليّة تُجرى عند الإعداد الابتدائيّ للخادوم أو عند تغيير الخِدمات المتاحة عبر الخادوم.
</p>

<p>
	جدار UFW خيّار سهل. توجد أيضًا خيّارات أخرى مثل استخدام iptables أو جدار CSF النّاريّ.
</p>

<h2 id="الشبكات-الخاصة-الافتراضية-vpn-والتشبيك-الخاص-private-networking">
	الشّبكات الخاصّة الافتراضيّة <abbr title="Virtual Private Network | الشبكة الخاصة الافتراضية">VPN</abbr> والتّشبيك الخاصّ Private Networking
</h2>

<p>
	الشّبكات الخاصّة هي شبكات متاحة لبعض الخواديم أو المستخدمين فقط؛ أمّا الشّبكات الخاصّة الافتراضيّة Virtual private network (أو <abbr title="Virtual Private Network | الشبكة الخاصة الافتراضية">VPN</abbr>) فهي طريقة لإنشاء اتّصالات آمنة بين جهازيْن متباعديْن بحيث يظهر الاتّصال كما لو أنّه في شبكة خاصّة محليّة. تُتيح الشّبكات الخاصّة الافتراضيّة طريقة لإعداد خِدمات موجودة على خواديم متباعدة بحيثُ تظهر وكأنّها في شبكة خاصّة كما أنّها تؤمّن الاتّصالات بين خواديم متباعدة.
</p>

<div class="figure">
	<p style="text-align: center;">
		<a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_05/556a3831e0451_03___.png.bc37adf43bdfd6cedf8edeb6e0787dfe.png" data-fileid="2294" rel="external"><img alt="03_شبكة_خاصة_افتراضية.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2294" src="https://academy.hsoub.com/uploads/monthly_2015_05/556a38322dde0_03___.thumb.png.6c404f4bcb3c7492c4c5492e32219ef9.png"></a>
	</p>

	<h3 class="caption">
		1- كيف تحسّن الشّبكات الخاصّة من الأمان؟
	</h3>
</div>

<p>
	يُنصح دائمًا بتفضيل الشّبكات الخاصّة بدلًا من العموميّة في الاتّصالات الدّاخليّة كل ما كان ذلك ممكنًا. مع ذلك يجب تطيق تدابير أمنيّة إضافيّة لتأمين الاتّصالات بين الخواديم والحؤول دون وصول مستخدمي الشّبكة الدّاخليّة غير المرخَّص لهم إلى خواديمك.
</p>

<p>
	يُعدّ استخدام شبكات خاصّة افتراضيّة طريقة ذات فعاليّة لوضع شبكة خاصّة لا تُمكن لغير رؤيتها خواديمك؛ ستكون الاتّصالات خاصّة ومؤمّنة تمامًا. يُمكن ضبطُ بقيّة التّطبيقات لتمرير بياناتها عبر الواجهات الافتراضيّة الّتي يعرضها برنامج الشّبكات الخاصّة الافتراضيّة. لا تُعرض في هذا الإعداد عبر شبكة الإنترنت سوى سوى الخدمات الموجهة للعملاء العموميين.
</p>

<h3 id="ما-مدى-صعوبة-إعداد-الشبكات-الخاصة-الافتراضية">
	2- ما مدى صعوبة إعداد الشّبكات الخاصّة الافتراضيّة؟
</h3>

<p>
	من السّهل استخدام الشّبكات الخاصّة في مراكز البيانات Data centers الّتي لديها هذه القدرة، إذ يقتصر الأمر على تفعيل واجهات الشّبكة أثناء إنشاء الخادوم وإعداد التّطبيقات والجدار النّاريّ لاستخدام الشّبكة الخاصّة. انتبه إلى أنّ الشّبكات الخاصّة الّتي تمتدّ عبر مركز البيانات تشترك في نفس الشّبكة مع بقيّة الخواديم.
</p>

<p>
	بالنّسبة للشّبكات الخاصّة الافتراضيّة فإنّ الإعداد الابتدائيّ أكثر تعقيدًا؛ إلّا أنّ الرّفع من مستوى الأمان يُعوّض الجهد في أغلب الحالات. يتطلّب إعداد شبكات خاصّة افتراضيّة تثبيت وضبط إعداد الأمان المشتركة على كلّ خادوم؛ ثمّ بعد إطلاق وتشغيل الشّبكة الخاصّة الافتراضيّة، إعداد التّطبيقات لاستخدامها.
</p>

<h2 id="البنية-التحتية-للمفاتيح-العلنية-pki-والتعمية-لواسطة-ssltls">
	البنية التّحتيّة للمفاتيح العلنيّة PKI والتّعميّة بواسطة <abbr title="Secure Socket Layer | طبقة المنافذ الآمنة">SSL</abbr>/<abbr title="Transport Layer Security | بروتوكول أمن طبقة النقل">TLS</abbr>
</h2>

<p>
	تُحيل البنية التّحتيّة للمفاتيح العلنيّة Public key infrastructure (أو PKI) إلى نظام مُصمّم لإنشاء، إدارة والتحقق من شهادات Certificates تحديد الهويّة وتعميّة الاتّصال. يُمكن استخدام شهادات <abbr title="Secure Socket Layer | طبقة المنافذ الآمنة">SSL</abbr> أو <abbr title="Transport Layer Security | بروتوكول أمن طبقة النقل">TLS</abbr> لتوثيق عناصر من النّظام لدى أخرى. يمكن - بعد الاستيثاق - استخدام الشّهادات لتعميّة الاتّصال.
</p>

<div class="figure">
	<p style="text-align: center;">
		<a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_05/556a38430c0fe_04__ssl_tls.png.6478ad85abde6a7c1f92f946d19475de.png" data-fileid="2296" rel="external"><img alt="04_تعمية_ssl_tls.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2296" src="https://academy.hsoub.com/uploads/monthly_2015_05/556a3843138f1_04__ssl_tls.thumb.png.74c9bea00e868d53b5d4bd732936cc83.png"></a>
	</p>

	<h3 class="caption">
		1- كيف تحسّن البنية التّحتيّة للمفاتيح العلنيّة من الأمان؟
	</h3>
</div>

<p>
	يُمكّن التّأسيس لسلطة شهادات Certificate authority وإدارتها ضمن خواديمك كلَّ عنصُر داخل بنيتك التّحتيّة من التّحقّق من هويّة بقيّة العناصر وتعميّة البيانات المتلادلة معها. يُمكن أن تمنع هذه الآليّة هجمات من نوع “رجل في الوسط” Man-in-the-middle الّتي يحاكي فيها المهاجم أحد الخواديم ضمن بنيتك التّحتيّة بهدف التقاط حركة البيانات.
</p>

<p>
	يُمكن ضبط كلّ خادوم ليثق في سلطة شهادات مركزيّة بحيث تُصبح أي شهادة تُوقّع عليها السّلطة المركزيّة موثوقة. إذا كانت التّطبيقات والبروتوكولات الّتي تستخدمها للاتّصال تدعم التّعمية بواسطة <abbr title="Transport Layer Security | بروتوكول أمن طبقة النقل">TLS</abbr>/<abbr title="Secure Socket Layer | طبقة المنافذ الآمنة">SSL</abbr>، فإنّ هذه طريقة لتعميّة النّظام دون إغراق الاتّصال عن طريق شبكة خاصّة افتراضيّة (يدخل <abbr title="Secure Socket Layer | طبقة المنافذ الآمنة">SSL</abbr> غالبًا في آليّة عمل الشّبكات الخاصّة الافتراضيّة).
</p>

<h3 id="ما-مدى-صعوبة-إعداد-بنية-التحتية-للمفاتيح-العلنية">
	2- ما مدى صعوبة إعداد بنية التّحتيّة للمفاتيح العلنيّة؟
</h3>

<p>
	قد يحتاج إعداد سلطة شهادات وتثبيت بقيّة البنية التّحتيّة للمفاتيح العلنيّة في البداية لكثير من المجهود. علاوةً على ذلك فإنّ إدارة الشّهادات قد تزيد عبئًا إضافيًّا عند الحاجة لإنشاء شهادات جديدة، توقيعها أو إبطالها.
</p>

<p>
	لن يُشكّل تنفيذ بنية تحتيّة متكاملة للمفاتيح العلنيّة إضافةً محسوسة للكثير من المستخدمين إلّا عند زيادة احتيّاجاتهم. ربّما يكون تأمين الاتّصال بين عناصر البنية التّحتيّة عبر شبكات خاصّة افتراضيّة إجراءً مناسبًا إلى أن يصلوا إلى المرحلة الّتي تُصبح فيها بنية المفاتيح العلنيّة تعوّض الجهد الإضافيّ المبذول لإدارتها.
</p>

<h2 id="فحص-الخدمات-service-auditing">
	فحص الخدمات Service auditing
</h2>

<p>
	تطرّقنا حتى الآن لتقنيّات يُمكن اللّجوء إليها للرّفع من مستوى الأمان. يقبع جزء مهمّ من الأمان في تحليل الأنظمة المستخدَمة، فهم الجوانب الّتي يُمكن أن تُؤتَى منها، وقفل العناصر حسب إمكاناتك.
</p>

<p>
	يُشير فحص الخدمات إلى العمليّة الّتي تكتشف عن طريقها الخدمات العاملة في البنية التّحتيّة. يُضبط - غالبًا - نظام التّشغيل ليبدأ تشغيل خدمات معيّنة عند الإقلاع Boot. قد تجرّ البرامج الإضافيّة اعتماديّات Dependencies تُشغَّل هي الأخرى آليًّا عند الإقلاع.
</p>

<div class="figure">
	<p style="text-align: center;">
		<a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_05/556a384f6f991_05___.png.18a1cc8c5e382aeff0fef8d0038f86e3.png" data-fileid="2297" rel="external"><img alt="05_قائمة_مراجعة_خدمات.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2297" src="https://academy.hsoub.com/uploads/monthly_2015_05/556a384f73ca7_05___.thumb.png.e324fe69b4269f3d5d4081f9481a6417.png"></a>
	</p>

	<p class="caption">
		يسمح فحص الخدمات بمعرفة الخدمات العاملة على النّظام، المنافذ المستخدمة للاتّصالات، والبروتوكولات المقبولة. تُساعد هذه المعلومات في ضبط إعدادات الجدار النّاريّ.
	</p>
</div>

<h3 id="كيف-يحسن-فحص-الخدمات-من-الأمان">
	1- كيف يُحسّن فحص الخدمات من الأمان؟
</h3>

<p>
	تُشغّل الخواديم عمليّات Processes عديدة لأداء أعمال داخليّة في الخادوم أو للتّعامل مع عملاء خارجيّين. يُمثّل كلّ واحد من هذه العناصر وسيلةً محتملة قد يستغلّها مستخدمون ذوو نيّات خبيثة لمهاجمة الخادوم؛ فكلّ ما زادت الخدمات الّتي تشغّلها زاد احتمال وجود ثغرات في البرامج الّتي تستخدمها.
</p>

<p>
	يُمكن أن تبدأ تحليل الخدمات الموجودة على جهازك فور حصولك على فكرة جيّدة عنها. في ما يلي بعض الأسئلة الّتي يجب أن تطرحها لكلّ واحدة من هذه الخِدمات:
</p>

<ul>
<li>
		هل أحتاج لهذه الخدمة؟
	</li>
	<li>
		هل تعمل الخدمة على واجهات لا تحتاج إليها؟ هل يحب تحديدها بعنوان IP واحد؟
	</li>
	<li>
		هل قواعد الجدار النّاريّ معدّة بطريقة تسمح للبيانات المرخَّص لها بالمرور إلى الخدمة؟
	</li>
	<li>
		هل يمنع الجدار النّاريّ الوصول غير المرخَّص إلى الخدمة؟
	</li>
	<li>
		هل لديك وسيلة تحصُل بها على إشعارات عن الثّغرات المُكتشفة في البرنامج؟
	</li>
</ul>
<p>
	يجب أن يكون فحص الخدمة تدبيرًا قيّاسيًّا عند إعداد أي خادوم جديد.
</p>

<h3 id="ما-مدى-صعوبة-إعداد-فحص-الخدمات">
	2- ما مدى صعوبة إعداد فحص الخدمات؟
</h3>

<p>
	الفحص الأساسيّ للخدمة سهلٌ جدًّا، إذ يعرض أمر <code>netstat</code> الخدمات الّتي تُنصِت لحركة البيانات عبر منافذ كلّ واجهة. في ما يلي مثال يعرض اسم البرنامج، معرّف العمليّة <abbr title="Process IDentifier | معرّف العملية أو البرنامج">PID</abbr> والعناوين المستخدَمة لحركة البيانات وفقًا لبروتوكول نقل البيانات (TCP أو UDP):
</p>

<pre class="ipsCode prettyprint" data-pbcklang="" data-pbcktabsize="">
sudo netstat -plunt</pre>

<p>
	ستكون المُخرجات مقاربة للتّاليّة:
</p>

<pre class="html ipsCode prettyprint" data-pbcklang="html" data-pbcktabsize="4">
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       <abbr title="Process IDentifier | معرّف العملية أو البرنامج">PID</abbr>/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      887/sshd        
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      919/nginx       
tcp6       0      0 :::22                   :::*                    LISTEN      887/sshd        
tcp6       0      0 :::80                   :::*                    LISTEN      919/nginx
</pre>

<p>
	<span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6;">الأعمدة الأساسيّة الّتي يجب عليك الانتباه إليها هي Porto (المنفذ) ، Local Address (العنوان المحلّي)، ومعرّف العمليّة/البرنامج (<abbr title="Process IDentifier | معرّف العملية أو البرنامج">PID</abbr>/Program). إذا كان عنوان IP الّذي تستقبل الخدمة عليه الاتّصالات هو </span><code style="line-height: 1.6;">0.0.0.0</code><span style="font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif; line-height: 1.6;"> فهذا يعني أنّ الخدمة تقبل الاتّصالات من جميع الواجهات.</span>
</p>

<h2 id="فحص-الملفات-وأنظمة-الكشف-عن-التطفل-intrusion-detection-systems">
	فحص الملفّات وأنظمة الكشف عن التّطفّل Intrusion detection systems
</h2>

<p>
	نعني بفحص الملفّات العمليّة الّتي بموجبها نُقارن وضعيّة النّظام الحاليّة بسجلّ لملفّات النّظام وخصائصها عندما كان في وضعيّة تُعرف بأنّها جيّدة. يُستخدم فحص الملفّات للتّعرّف على التّغييرات الّتي يُمكن أن يكون النّظام قد سمح بها.
</p>

<div class="figure">
	<p style="text-align: center;">
		<a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_05/556a385de2757_06___.png.9483b0b5566813fe5858faed80e55171.png" data-fileid="2298" rel="external"><img alt="06_فحص_نظام_الملفات.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2298" src="https://academy.hsoub.com/uploads/monthly_2015_05/556a385de7ed0_06___.thumb.png.add160035a1c505bd3045f0a97bb1253.png"></a>
	</p>

	<p class="caption">
		نظام الكشف عن التّطفّل (IDS اختصارًا) هو برنامج يُراقب نظام التّشغيل أو الشّبكة بحثًا عن أنشطة غير مسموح بها. تعتمد الكثير من أنظمة الكشف عن التّطفّل المُستضافة على الخادوم على طريقة فحص الملفّات للتّحقّق من وجود تعديلات في نظام التّشغيل.
	</p>
</div>

<h3 id="كيف-تحسن-أنظمة-الكشف-عن-التطفل-وفحص-الملفات-من-الأمان">
	1- كيف تُحسّن أنظمة الكشف عن التّطفّل وفحص الملفّات من الأمان؟
</h3>

<p>
	إذا كنت مهتمًّا بالرّفع من مستوى أمان بنيتك التّحتيّة فمن المفيد إجراء فحوص على مستوى الملفّات، مثلها مثل الخدمات. يُمكن أن يكون هذا الإجراء دوريًّا، يؤدّيه المسؤول؛ أو آليًّا ضمن نظام للكشف عن التّطفّل.
</p>

<p>
	تعدّ هذه الوسائل من الطّرق القليلة الّتي تتأكّد من خلالها أنّ نظام الملفّات Filesystem لم يغيِّره أو يُعدِّل عليه مستخدم أو برنامج. يُفضّل المتطفّلون في كثير من الأحيان، لأسباب مختلفة، البقاء متخفّين للاستمرار في استغلال الثّغرات الموجودة في النّظام لمدّة أطول. يُمكن لمن يستغلّ ثغراتٍ في النّظام أن يُبدل ملفّات تنفيذيّة بنُسخ مُعدَّلة منها؛ سيُخبرك فحص نظام الملفّات بالملفّات المُعدًّل عليها إن وُجدت ممّا يُساعد في التّأكّد من تكامل بيئة الخادوم.
</p>

<h3 id="ما-مدى-صعوبة-إعداد-فحص-الملفات-وأنظمة-الكشف-عن-التطفل">
	2- ما مدى صعوبة إعداد فحص الملفّات وأنظمة الكشف عن التّطفّل؟
</h3>

<p>
	قد يكون تثبيت نظام للكشف عن التّطفّل أو إجراء فحص للملفّات عمليّة إضافيّة تأخذ جهدًا لا بأس به. يتضمّن الإعداد الابتدائيّ إخبارَ نظام الكشف عن التّطفّل يكلّ التّغييرات غير القياسيّة الّتي أجريتها على الخادوم، وتحديدَ مسارات قد تُستثنى لإنشاء خطّ مرجعيّ للاعتماد عليه.
</p>

<p>
	تجعل أنظمة الكشف عن التّطفّل من عمليّات الإدارة اليوميّة أكثر تكرارًا وتعقّد من تحديث البرامج ونظام التّشغيل، حيث ستحتاج لإعادة التّحقّق من النّظام قبل تنفيذ التّحديثات ثمّ إعادة إنشاء الخطّ المرجعيّ بعد تنفيذ التّحديثات لرصد أي تغييرات على إصدارات البرامج. يجب أيضًا نقل تقارير الكشف إلى مكان آخر غير النّظام الّذي حدث فيه الكشف لمنع المتطفّلين من تعديلها للتّغطيّة على آثارهم.
</p>

<p>
	ستزيد أنظمة الكشف عن التّطفّل بلا شكّ من عبْء الإدارة، ولكنّ مقارنة حالة النّظام الحاليّة بأخرى تعرف أنّها جيّدة هيّ الطّريقة الوحيدة للتّأكّد من أنّ الملفّات لم يُعدَّل عليها من دون علمك. Tripwire وAide من أكثر أنظمة الكشف عن التّطفّل انتشارًا.
</p>

<h2 id="بيئات-تنفيذ-execution-environments-معزولة">
	بيئات تنفيذ Execution environments معزولة
</h2>

<p>
	يُحيل مفهوم “بيئة التّنفيذ المعزولة” إلى أيّ طريقة تشغيل تعمل بموجبها العناصر في مساحات عمل مخصَّصة لها.
</p>

<div class="figure">
	<p style="text-align: center;">
		<a class="ipsAttachLink ipsAttachLink_image" href="https://academy.hsoub.com/uploads/monthly_2015_05/556a3860b49cf_07___.png.1683942dc9e62a5af6760070770a853e.png" data-fileid="2299" rel="external"><img alt="07_عزل_بيئة_التنفيذ.png" class="ipsImage ipsImage_thumbnailed" data-fileid="2299" src="https://academy.hsoub.com/uploads/monthly_2015_05/556a3860e1f24_07___.thumb.png.561a2e9be49d23d1bbd7226df5945285.png"></a>
	</p>

	<p class="caption">
		يُمكن أن تُعدّ بيئة تنفيذ معزولة بتشغيل عناصر التّطبيقات في خواديم خاصّة بها، أو بإعداد الخدمات للعمل في بيئات <a href="https://en.wikipedia.org/wiki/Chroot" rel="external nofollow">chroot</a> أو حاويّات Containers. يعتمد مستوى العزل إلى حدّ بعيد على متطلّبات تطبيقاتك وواقع بنيتك التّحتيّة.
	</p>
</div>

<h3 id="كيف-يحسن-عزل-بيئات-التنفيذ-من-الأمان">
	1- كيف يُحسّن عزل بيئات التّنفيذ من الأمان؟
</h3>

<p>
	يزيد عزل العمليّات في بيئات تنفيذ مستقلّة من قدرتك على تحديد المشاكل الأمنيّة الّتي يُمكن أن تتعرّض لها. يحُدّ الفصل بين العناصر المستقلّة في البنية التّحتيّة من وصول المخترقين إلى بقيّة العناصر في البنية التّحتيّة.
</p>

<h3 id="ما-مدى-صعوبة-عزل-بيئات-التنفيذ">
	2- ما مدى صعوبة عزل بيئات التّنفيذ؟
</h3>

<p>
	تتوقّف صعوبة - أو سهولة - عزل التّطبيقات على طريقة الفصل الّتي تختارها. يُمكن عبر تحزيم التّطبيقات في حاويّات مستقلّة، الحصول بسرعة على مستوى من عزل التّطبيقات؛ ولكن يجب الانتباه إلى أنّ <a href="https://academy.hsoub.com/devops/cloud-computing/docker/" rel="">Docker</a> لا يتعامل مع إعداد الحاويّات على أنّه ميزة أمنيّة.
</p>

<p>
	قد يوفّر إعداد بيئة Chroot لكلّ عنصُر مستوى من العزل هو الآخر، لكنّ هذه الطّريقة ليست مضمونةً بالكامل لعزل التّطبيقات؛ إذ توجد دائمًا وسيلة لكسر بيئات Chroot.
</p>

<p>
	يوفّر نقل العناصر إلى أجهزة مُخصَّصة أفضل مستوى من العزل، كما أنّه الوسيلة الأسهل في كثير من الأحيان؛ ولكنّه في المقابل الخيّار الأغلى نظرًا لثمن الأجهزة الإضافيّة.
</p>

<h2 id="خاتمة">
	خاتمة
</h2>

<p>
	قدّمنا في هذا الدّليل بعض التّحسينات الممكنة، وليس كلّها، من أجل الرّفع من مستوى الأمان في البنية التّحتيّة. تقلّ فعاليّة التّدابير الأمنيّة كلّ ما طال الانتظار في إجرائها. لا يجوز النّظر إلى التّدابير الأمنيّة على أنّها ملحقات، ويجب تنفيذها من البداية إلى جانب الخدمات والتّطبيقات.
</p>

<p>
	ترجمة بتصرّف لمقال <a href="https://www.digitalocean.com/community/tutorials/7-security-measures-to-protect-your-servers" rel="external nofollow">7 Security Measures to Protect your Servers</a>.
</p>
]]></description><guid isPermaLink="false">60</guid><pubDate>Sat, 30 May 2015 23:17:00 +0000</pubDate></item><item><title>&#x645;&#x642;&#x62F;&#x645;&#x629; &#x641;&#x64A; &#x62A;&#x623;&#x645;&#x64A;&#x646; &#x62E;&#x627;&#x62F;&#x648;&#x645; &#x644;&#x64A;&#x646;&#x643;&#x633;</title><link>https://academy.hsoub.com/devops/security/%D9%85%D9%82%D8%AF%D9%85%D8%A9-%D9%81%D9%8A-%D8%AA%D8%A3%D9%85%D9%8A%D9%86-%D8%AE%D8%A7%D8%AF%D9%88%D9%85-%D9%84%D9%8A%D9%86%D9%83%D8%B3-r51/</link><description><![CDATA[
<p><img src="https://academy.hsoub.com/uploads/monthly_2015_05/Linux-security.png.80b9de6634fce59da1b7a7a14064b7ce.png" /></p>

<p id="مقدمة">
	يُوفّر التّحكّم بخادوم لينكس الخاصّ بك فرصةً لتجربة أشياء جديدة والاستفادة من صلابة ومرونة هذه المنصّة الرّائعة. مع ذلك يجب على مسؤولي خواديم لينكس الانتباه إلى أنّ ميزات المنصّة لا تُغني عن التّدابير اللّازم اتّخاذها عند التّعامل مع حاسوب متّصل بالشّبكة، من أجل تأمينه وحمايته.
</p>

<p>
	تندرج العديدُ من الموضوعات الأمنيّة في الفئة العامة المسمّاة “أمان لينكس”، كما توجد العديد من الآراء حول مستوى الأمان المناسِب لخاودم لينكس.
</p>

<p>
	الفكرة الأساسيّة الّتي يجب العمل عليها هي تقرير نوعيّة الإجراءات الأمنيّة المطلوبة لحماية نظامك. قبل ذلك، ولكي تتّخذ القرارات المناسبة؛ يجب أن تعيَ الأخطار الموجودة والمقايضات الممكنة ثمّ تحدّد نقطة التّوازن بين قابليّة الاستخدام والأمان.
</p>

<p>
	يهدف هذا المقال إلى مساعدتك في اتّخاذ قراراتك عبر عرض بعض الإجراءات الأمنيّة الأكثر شيوعًا في البيئات الّتي تستخدم خواديم لينكس. يُرجى الانتباه إلى أنّ هذه القائمة غير شاملة ولا تتطرّق للإعدادات المنصوح بها؛ لكنّها ستُحيل إلى روابط توفّر موارد أكثر وتناقش مدى أهميّة بعض العناصر في نُظُم مختلفة.
</p>

<h2 id="استخدام-الجدران-النارية-firewalls-لمنع-الوصول">
	استخدام الجدران النّاريّة Firewalls لمنع الوصول
</h2>

<p>
	ضبط وإعداد جدار ناريّ إحدى الخطوات الأسهل الّتي ينبغي تطبيقها في عمليّة تأمين الخادوم. تعمل الجدارن النّارية كحاجز بين شبكة الإنترنت وخادومك الخاصّ؛ حيثُ تُراقب حركة البيانات من وإلى الخادوم، ثمّ تقرّر السّماح لها بالمرور أو منعها.
</p>

<p>
	تعتمد الجدران النّاريّة في قراراتها (السّماح بمرور بيانات أو منعها) على قواعد يضبطها مدير النّظام. في العادة، يستعمل الخادوم بضع منافذ Ports للخدمات المُرخَّصة بينما تبقى بقيّة المنافِذ غير مستعملة ويجب أن توضع وراء جدار ناريّ يمنع جميع الطّلبات الموّجهة عبر هذه المنافذ من الوصول.
</p>

<p>
	تسمح لك الجدران النّاريّة بتجاهل البيانات الّتي لا تنتظر توجيهها إليك، وفي بعض الحالات تقييد الوصول إلى الخدمات الفعليّة الموجودة في النّظام. تُوفّر قواعد الجدران النّاريّة المعدّة بطريقة صحيحة أساسًا جيّدًا لتأمين الشّبكة.
</p>

<p>
	نستعرض في الفقرات التّاليّة بعض برامج الجدران النّاريّة.
</p>

<h3 id="ufw">
	1- UFW
</h3>

<p>
	يهدف UFW (اختصار ل Uncomplicated FireWall، أي جدار ناريّ غير معقّد) إلى توفير حماية جيّدة دون الاعتماد على صيّاغة معقَّدة للقواعد كما تفعل بقيّة الحلول. UFW هو في الواقع، مثله مثل أغلب الجدران النّاريّة على لينكس، برنامج للتّحكّم في الجدار النّاري المُضمَّن في نواة لينكس، والمسمَّى Netfilter.
</p>

<p>
	يُعدّ UFW حلًّا سهلًا لغير المعتادين على استخدام الجدران النّاريّة على لينكس؛ وهو عمومًا حلّ جيّد.
</p>

<p>
	يُمكن الحصول على معلومات أكثر عن UFW، ومعرفة كيفيّة تفعيله وضبطه عبر اتّباع <a href="https://www.digitalocean.com/community/articles/how-to-setup-a-firewall-with-ufw-on-an-ubuntu-and-debian-cloud-server" rel="external nofollow">هذا الرّابط</a>.
</p>

<h3 id="iptables">
	2- IPTables
</h3>

<p>
	ربّما يكون IPTables الجدار النّاري الأكثر شهرة في لينكس. IPTables هو الآخر وسيلة لإدارة Netfilter. يتوفّر برنامج IPTables منذ زمن بعيد، وتعرَّض للكثير من التّدقيق خلال هذه الفترة للتّأكّد من أمانه. توجد نسخة مخصّصة للإصدار 6 من عناوين IP، تُسمّى IP6Tables.
</p>

<p>
	ستلاقي على الأرجح إعدادات تتضمّن IPTables أثناء إدارة خواديم لينكس. قد تكون صيّاغة القواعد صعبة الفهم من الوهلة الأولى، إلّا أنّ IPTables يبقى أداةً قويّة يُمكن إعدادها عن طريق مجموعة قواعد مرنة جدًّا.
</p>

<p>
	يشرح هذا الدّرس <a href="https://www.digitalocean.com/community/articles/how-to-set-up-a-firewall-using-ip-tables-on-ubuntu-12-04" rel="external nofollow">إعداد بعض قواعد IPTables على توزيعتيْ أوبنتو ودبيان</a>؛ في ما تجد في الرّابط التّالي <a href="https://www.digitalocean.com/community/articles/how-to-setup-a-basic-ip-tables-configuration-on-centos-6" rel="external nofollow">شرحًا لاستخدام IPTables على توزيعات CentOS، وFedora و RHEL</a>.
</p>

<h3 id="ip6tables">
	3- IP6Tables
</h3>

<p>
	يُستخدَم IPTables للتّعامل مع قواعد تتضمّن عناوين IP من الإصدار الرّابع IPv4؛ إذا كان الإصدار السّادس IPv6 مفعّلًا على خادومك فيجب أن تنتبه أيضًا إلى إصدار IPTables المكافئ: IP6Tables.
</p>

<p>
	يحتفظ الجدار النّاري المضمَّن في نواة لينكس، Netfilter، بجداول منفصلة لكلّ من البيانات المنقولة عبر IPv6 وIPv4. من هذا المنطلق، تتحدّد القواعد المطبَّقة على حزمة بيانات بإصدار IP المستخدَم. يعني هذا، بالنّسبة لمدير النّظام، أنّه يتوجّب إعداد مجموعة قواعد جديدة خاصّة بالإصدار 6 من عناوين IP، عندما يكون مفعَّلًا.
</p>

<p>
	تتشارك قواعد IP6Tables نفس الصّيّاغة مع قواعد IPTables؛ وهو ما يعني أنّ إضافتها لين يُشكّل مشكلًا كبيرًا. ينبغي فقط الانتباه إلى أنّ القواعد يجب أن تُطابق البيانات المُمرَّرة عبر IPv6 حتى تعمل بالطّريقة المطلوبة.
</p>

<h3 id="nftables">
	4- NFTables
</h3>

<p>
	يُعدّ IPTables المعيار Standard في عالم الجدران النّاريّة على بيئات لينكس منذ بعض الوقت، على الرّغم من ذلك أُضيف مؤخَّرًا جدار ناريّ جديد يُدعى NFTables إلى نواة لينكس. يقف خلف الجدار الجديد نفس الفريق الّذي يُطوِّر IPTables. ويهدف - على الأمد الطّويل - إلى الحلول محلّ IPTables.
</p>

<p>
	يُحاول جدار NFTables مراعاة صيّاغة أكثر قابليّة للقراءة من صيّاغة IPTables، ويدعم قواعد تتعامل مع كلا الإصداريْن IPv4 وIPv6 في نفس الأداة. يُتوقَّع أن يكون NFTables حاضرًا على معظم أو كلّ توزيعات لينكس في الأمد القريب، لذا يُستحسَن محاولة التّعوّد على استخدامه.
</p>

<h2 id="استخدام-ssh-للولوج-الآمن-عن-بعد">
	استخدام <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> للولوج الآمن عن بعد
</h2>

<p>
	ستحتاج لطريقة للدّخول عن بعد، إن لم تكن لديك فرصة الوصول المباشر إلى الخادوم. الإجراء المتبَّع في هذه الحالة للدّخول بشكل آمن هو استخدام بروتكول معروف يُسمَّى <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> (اختصار لSecure SHell).
</p>

<p>
	يُوفّر <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> التّعميّة من طرف إلى طرف End-to-end encryption، إمكانيّة تمرير بيانات غير مؤمَّتة عبر اتّصال آمن، إعادة توجيه الخادوم X (واجهة المستخدِم الرّسوميّة عبر الشّبكة)، وأكثر. بالمختصر إذا أردت الاتّصال عن بعد بخادومك فيجب أن يكون <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> خيّارك الأوّل.
</p>

<p>
	على الرّغم من أنّ بروتوكول <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> نفسه آمن جدًّا وتعرَّض للكثير من التّدقيقات الأمنيّة، إلّا أنّ خيّارات الإعداد يُمكن أن تُعزّز أو - على العكس - تقوِّض أمان الخدمة. سنناقش هذا الأمر أدناه.
</p>

<h3 id="كلمة-السر-في-مقابل-مفاتيح-ssh-لتسجيل-الدخول">
	1- كلمة السّرّ في مقابل مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> لتسجيل الدّخول
</h3>

<p>
	يُتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> العديد من طرق الاستيثاق Authentication؛ أشهر طريقتيْن هما كلمة السّرّ ومفتاح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>.
</p>

<p>
	كلمة السّرّ، من بين الخيّارين أعلاه، هي الأيسَر للمستخدم ولكنّها في نفس الوقت الأقلّ أمانًا. يسمح الاستيثاق عن طريق كلمة السّرّ لمحاولي التّسلّل باستمرار تخمين كلمة السّر إلى أن يُعثَر على الكلمة المُناسبة. تُسمّى آليّة الاختراق هذه بهجمات القوّة القاسيّة Brute force attack ويُمكن تشغيلها آليًّا بيُسر عن طريق بعض الأدوات البرمجيّة.
</p>

<p>
	على الجانب الآخر، تعمل مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> على توليد زوج من المفاتيح، عموميّ وسرّي. يُنشَأ مفتاح عموميّ Public key ليُستعمَل في تحديد هويّة المستخدِم، ويُمكن تشاركه دون مشاكل. لا يُمكن استعمال المفتاح العموميّ لأغراض أخرى غير تعريف مستخدِم، والسّماح بالولوج بمفتاح سرّي Private key موافق للمفتاح العموميّ المستعمَل. ينبغي أن لا يُنشَر المفتاح السّريّ، حيث يُستخدَم في التحقّق من المفتاح العموميّ المُصاحِب له. المبدأ هوّ أن تُضيف مفتاح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> العموميّ الخاصّ بك إلى الخادوم وسيُسمح لك بالولوج باستعمال المفتاح السّري المُصاحِب للمفتاح العموميّ المُضاف إلى الخادوم. هذه المفاتيح على درجة من التّعقيد تجعل استخدام هجمات القوّة القاسيّة لتخمينها غير عمليّ. إضافةً لذلك، يمكن تحديد عبارة سرّ Passphrase طويلة إلى المفتاح السّرّيّ وهو ما يعني أمانًا أكبر.
</p>

<p>
	راجع هذا الدّرس لمعرفة المزيد حول <a href="https://www.digitalocean.com/community/articles/how-to-use-ssh-to-connect-to-a-remote-server-in-ubuntu" rel="external nofollow">الاتّصال عن طريق على خادوم أوبنتو <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr></a>. الرّابط التّالي يشرح <a href="https://www.digitalocean.com/community/articles/how-to-set-up-ssh-keys--2" rel="external nofollow">كيفيّة توليد مفاتيح <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr></a> على خادومك.
</p>

<h3 id="إعداد-fail2ban-لحظر-عناوين-ip-الخبيثة">
	2- إعداد fail2ban لحظر عناوين IP الخبيثة
</h3>

<p>
	تُساعد أداة fail2ban في تأمين إعدادات <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>، ومن ثَمَّ الأمان العامّ للخادوم. تعمل fail2ban على مراقبة السّجلّات Logs لتحديد إمكانيّة أن يكون من يُحاول الاتّصال عبر <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> غيرَ مصرَّح له بالدّخول؛ في هذه الحالة يعمل fail2ban على حظر حركة البيانات القادمة من عنوان IP المُستخدَم.
</p>

<p>
	يسمح إعداد إستراتيجيّة صحيحة لاستخدام fail2ban بتحديد الأجهزة الّتي تحاول باستمرار - دون نجاح - الولوج إلى الخادوم، وإضافة قواعد للجدار النّاريّ لتجاهل حركة البيانات القادمة من هذه الأجهزة لفترة من الوقت. تُستعمل هذه الطّريقة دائمًا لعرقلة هجمات القوّة القاسيّة، إذ أنّ المهاجِم سيحتاج عندما يُحظَر، للانتظار بعض الوقت قبل معاودة الكرّة. يكفي هذا الأمر عادةً لإحباط من يحاول الدّخول عبر هذه الهجمات.
</p>

<p>
	يُمكن التّعرّف في الرّابط على <a href="https://www.digitalocean.com/community/articles/how-to-protect-ssh-with-fail2ban-on-ubuntu-12-04" rel="external nofollow">كيفيّة ضبط fail2ban على أوبنتو</a>. توجد أيضًا أدلّة مشابهة لكل من <a href="https://www.digitalocean.com/community/articles/how-to-protect-ssh-with-fail2ban-on-debian-7" rel="external nofollow">Debian</a> و<a href="https://www.digitalocean.com/community/articles/how-to-protect-ssh-with-fail2ban-on-centos-6" rel="external nofollow">CentOS</a>.
</p>

<h2 id="ضبط-نظام-للكشف-عن-التطفل-intrusion-detection-system-لكشف-عمليات-الدخول-غير-المرخصة">
	ضبط نظام للكشف عن التّطفّل Intrusion Detection System لكشف عمليّات الدّخول غير المرخَّصة
</h2>

<p>
	يجب الانتباه إلى وجوب إعداد آليّة لكشف الاستخدام غير المرخَّص. يُمكن أن تعدّ تدابير وقائيّة لكنك تحتاج أيضًا إلى معرفة هل نجحت هذه التّدابير أم لا.
</p>

<p>
	تعمل أنظمة الكشف عن التّطفّل، IDS، على تجميع معطيات عن الإعدادات والملفّات عندما يكون النّظام في وضعيّة يُعرف بأنّها جيّدة؛ ثمّ يُجري النّظام مقارنات بالمعطيات المُسجّلة لرصد تغييرات على الملفّات أو الإعدادات.
</p>

<p>
	سنرصد في ما يلي بعض أنظمة الكشف عن التّطفّل.
</p>

<h3 id="tripwire">
	1- Tripwire
</h3>

<p>
	يُعدّ Tripwire أحد أنظمة الكشف عن التّطفّل الأكثر شهرة. يُنشئ Tripwire قاعدة بيانات بملفّات النّظام ويحمي ملفّات الإعداد والملفّات التّنفيذيّة بمجموعة من المفاتيح. تُشعِر عمليّاتُ تشغيل Tripwire التّاليّةُ لتعيين تفاصيل الإعداد وتحديد الاستثناءات بأيّ تحريف يحصُل للملفّات الّتي يُراقبها.
</p>

<p>
	يُقدّم Tripwire نموذجًا مرِنًا لإعداد السّيّاسات يسمح بتشكيل خواصّه لتتلاءم مع بيئة العمل. يُمكن بعدها ضبط Cron ليُشغّل Tripwire دوريًّا؛ بل ويُمكن إعداد إشعارات تُرسَل عبر البريد الإلكترونيّ عند وجود أنشطة غير طبيعيّة.
</p>

<p>
	اقرأ المزيد عن <a href="https://www.digitalocean.com/community/articles/how-to-use-tripwire-to-detect-server-intrusions-on-an-ubuntu-vps" rel="external nofollow">إعداد Tripwire</a>.
</p>

<h3 id="aide">
	2- Aide
</h3>

<p>
	برنامج Aide هو خيّار آخر لأنظمة الكشف عن التّطفّل. يُشبه Aide في عمله Tripwire؛ حيثُ ينشئ قاعدة بيانات ثمّ يقارن الوضعيّة الحاليّة للنّظام مع قيّم محفوظة أثناء وجود النّظام في وضعيّة جيّدة. عند ملاحظة أي اختلاف يُمكن للبرنامج إشعار مسؤول النّظام.
</p>

<p>
	يوفّر كلّ من Aide وTripwire حلولًا متشابهة لنفس المشكل. راجع التّوثيق Documentation وجرّب الاثنين ثم اختر ما يُناسبك.
</p>

<p>
	اقرأ الدّليل التّالي لمعرفة <a href="https://www.digitalocean.com/community/articles/how-to-install-aide-on-a-digitalocean-vps" rel="external nofollow">كيف تستخدم Aide لكشف التّطفّل</a>. ### 3- Psad
</p>

<p>
	يختلف برنامج Psad عن البرنامجيْن السّابقيْن من حيث إنّه يهتمّ بجزء مختلف من النّظام. بدلًا من مراقبة ملفّات النّظام، فإن Psad يُراقب سجلّات الجدار النّاريّ لمحاولة رصد النّشاطات غير الطّبيعيّة.
</p>

<p>
	على سبيل المثال، إذا وُجد من يبحث عن ثغرات Vulnerabilities في النّظام عن طريق فحص المنافذ Ports فإنّ Psad يُمكن أن يرصُد هذا النّشاط ويغيّر قواعد الجدار النّاريّ ديناميكيًّا لحظر المستخدِم المعنيّ. يُمكن لهذا البرنامج تسجيل مستويات عديدة للتّهديدات ثمّ يعتمد في تجاوبه مع التّهديدات على خطورة المشكل الّذي يواجهه. توجد أيضًا إمكانيّة إرسال بريد لمدير النّظام.
</p>

<p>
	اقرأ الدّرس التّالي للمزيد حول <a href="https://www.digitalocean.com/community/articles/how-to-install-bro-ids-2-2-on-ubuntu-12-04" rel="external nofollow">استخدام برنامج Psad</a>. ### 4- Bro
</p>

<p>
	برنامج Bro هو وسلة أخرى لضبط نظام كشف عن التّطفّل يعتمد على حركة البيانات في الشّبكة. Bro هو في الأصل إطار عمل Framework لمراقبة الشّبكة؛ يُمكن استخدامه كنظام للكشف عن التّطفّل أو لأغراض أخرى مثل تجميع إحصائيّات عن الاستخدام، التّحرّي عن المشاكل أو التّعرّف على أنماط Patterns معيَّنة.
</p>

<p>
	يُقسًّم نظام Bro إلى طبقتيْن. الطّبقة الأولى تُراقب النّشاطات وتُولّد أحداثا Events. أمّا الطّبقة الثّانيّة فتشغّل الأحداث المُولَّدة تبعًا لسيّاسات تُملي ما يتوجّب عمله. يُمكن لهذه الطّبقة إرسال تحذيرات، تنفيذ أوامر، مجرّد تسجيل الحالة أو إجراءات أخرى.
</p>

<p>
	يشرح الدّليل التّالي <a href="https://www.digitalocean.com/community/articles/how-to-install-bro-ids-2-2-on-ubuntu-12-04" rel="external nofollow">كيفيّة استخدام Bro لكشف التّطفّل</a>. ### 5- RKHunter
</p>

<p>
	لا يعدّ برنامج RKHunter - تقنيًّا - برنامجًا للكشف عن التّطفّل، إلّا أنّه يعمل بنفس المبادئ الّتي تستخدمها أنظمة الكشف عن التّطفّل المعتمدة على مراقبة ملفّات النّظام، مثل Tripwire وAide. يهدف RKHunter في الأساس إلى كشف برامج Rootkits (برامج تُساعد المهاجمين في إخفاء ما ينفّذونه من عمليّات على النّظام) والبرمجيّات الخبيثة Malwares المعروفة.
</p>

<p>
	على الرّغم من ندرة الفيروسات على لينكس إلّا أنّ البرمجيّات الخبيثة وبرامج Rootkits موجودة ويُمكن أن تُصيب الخادوم وتُعطي إمكانيّة ولوج مستمرّ لمستغلّي الثّغرات. يُنزّل RKHunter قائمة بالثّغرات المعروفة ويتأكّد من عدم وجودها على النّظام؛ كما أنّه يحذّر مدير النّظام في حال كشف إعدادات غير آمنة في بعض التّطبيقات الشّائعة.
</p>

<p>
	يوجد في الرّابط التّالي دليل ل<a href="https://www.digitalocean.com/community/articles/how-to-use-rkhunter-to-guard-against-rootkits-on-an-ubuntu-vps" rel="external nofollow">استخدام RKHunter على أوبنتو</a>.
</p>

<h2 id="general-security-advice">
	General Security Advice
</h2>

<p>
	تُساعد الأدوات المذكورة أعلاه في تأمين أجزاء من نظامك، إلّا أنّ الأمان لا يأتي فقط من إعداد أداة ثمّ نسيانها. يظهر الأمان في بعض العقليّات؛ ويمكن أن يتحقّق عبر الاجتهاد، التّدقيق والانخراط في عمليّة التّأمين.
</p>

<p>
	توجد بعض القواعد الّتي يُساعد اتّباعها في وضعك على الطّريق الصّحيح للاستخدام الآمن لنظامك.
</p>

<h3 id="انتبه-إلى-التحديثات-وحدث-الخادوم-بانتظام">
	1- انتبه إلى التّحديثات وحدّث الخادوم بانتظام
</h3>

<p>
	يُعثر على الثّغرات طول الوقت وفي كلّ أنواع البرامج الّتي يمكن أن تكون لديك على الخادوم. يؤدّي مطوّرو التّوزيعات على العموم عملًا جيّدًا في الاطّلاع على آخر الثّغرات الأمنيّة والحرص على إرسال تحديثاتها إلى المستودعات Repositories؛ إلّا أنّ توفّر التّحديثات الأمنيّة في المستودَع لا يعني أنّ الخادوم آمن ما لم تُنزّلها وتثبّتها عليه. على الرّغم من أن الخواديم تستفيد من إصدارات مجرَّبَة جيّدًا، إلّا أنّ التّرقيعات الأمنيّة يجب أن تُعدَّ حرِجة ويجب تثبيتها فور صدورها.
</p>

<p>
	تُوفّر العديد من التّوزيعات قوائم بريديّة خاصّة بالأخبار الأمنيّة ومستودعات أمنيّة منفصِلة لتنزيل التّرقيعات الأمنيّة.
</p>

<h3 id="كن-حذرا-عند-تنزيل-برامج-من-خارج-القنوات-الرسمية">
	2- كن حذِرًا عند تنزيل برامج من خارج القنوات الرّسميّة
</h3>

<p>
	يلتصق الكثير من المستخدمين بالبرامج المتوفّرة في المستودعات الرّسميّة لتوزيعاتهم، كما أنّ أغلب التّوزيعات تُوفّر حزمًا Packages موَقَّعة Signed. يُمكن عمومًا للمستخدمين الوثوق في مطوّري التّوزيعات والتّركيز على التّهديدات الأمنيّة في البرامج المُتحصَّل عليها من خارج المستودعات الرّسميّة للتّوزيعة.
</p>

<p>
	يُمكن أن تثق في الحزم القادمة من التّوزيعة الّتي تستخدمها أو من مواقع ويب رسميّة، لكن انتبه إلى إمكانيّة وجود خطر أمنيّ، إلّا إذا كنت تدقّق كل جزء من البرامج بنفسك. يرى الكثيرون أنّ مستوى الخطر هذا مقبول.
</p>

<p>
	على العكس من ذلك، يمكن للبرامج المتحصَّل عليها من مستودعات عشوائيّة أو من مستودعات PPA (اختصار لPersonal Package Archives، أرشيف حزم شخصية) يُشرف عليها أشخاص أو منظَّمات غير معروفة، يمكن أن تكون خطرًا محدِقا.
</p>

<p>
	لا توجد قاعدة عامّة، ولكن يمكن عدّ أغلب البرامج المتوفّرة في المستودعات غير الرّسميّة آمنة؛ لكن يجب الحذر والانتباه إلى وجود خطر في كلّ مرة تثق في طرف ثالث.
</p>

<p>
	تأكّد من قدرتك على شرح السّبب الّذي يجعلك تثق في مصدر البرنامج. في النّهاية الخطر على أمان نظامك مشكل أكبر من عدم توفّر بعض وسائل الرّاحة في التّعامل مع النّظام.
</p>

<h3 id="اعرف-خدماتك-وعرف-حدود-استخدامها">
	3- اعرف خدماتك وعرّف حدود استخدامها
</h3>

<p>
	على الرّغم من أنّ الهدف الأساسيّ من تشغيل خادوم هو توفير خدمات، إلّا أنّه يجب تحديد الخدمات المُشغّلة على الجهاز وعدم تشغيل خدمات لا تحتاجها. انظُر إلى كلّ خدمة مُفَعَّلة على أنّها ناقل للخطر؛ وحاول التّخلّص من كلّ ناقل خطر حسب استطاعتك بحيث لا تؤثّر على الوظائف الّتي تُريد توفيرها عبر الخادوم.
</p>

<p>
	يعني هذا أنّك يجب أن تُعطّل خادوم العرض X إذا لم توجد شاشة متّصلة بالخادوم ولم تكن تشغِّل أي برامج رسوميّة (برامج الويب لا تدخل في هذا التّصنيف). يُمكن اتّخاذ إجراءات مشابهة في مجالات أخرى؛ لا تستخدمُ طابعة؟ عطِّل خدمة <code>lp</code>. لا تشارك الملفّات مع وندوز؟ عطِّل خدمة <code>samba</code>.
</p>

<p>
	توجد طرق عديدة لمعرفة الخدمات المُشغَّلة على جهازك. يعرض المقال التّالي لطريقة <a href="https://www.digitalocean.com/community/tutorials/how-to-migrate-linux-servers-part-1-system-preparation#create-a-list-of-requirements" rel="external nofollow">إنشاء قائمة بالخدمات المُفَعَّلة</a>.
</p>

<h3 id="لا-تستخدم-ftp-استعض-عنه-بsftp.">
	4- لا تستخدم FTP، استعِض عنه بSFTP.
</h3>

<p>
	قد تكون هذه النّقطة من أكثر الأمور صعوبة للتّطبيق على كثير من المستخدمين؛ لكن بروتوكول FTP غير آمن منذ بداياته. كلّ معلومات الاستيثاق تُرسل في نصوص صِرفة (غير معمّاة) Plain-text، وهو ما يعني أنّ باستطاعة كلّ من يراقب الاتّصال بين الجهاز المحلّي وبين الخادوم معرفة بيانات الاستيثاق.
</p>

<p>
	توجد حالات قليلة يُمكن أن يكون فيها استخدام FTP مبرَّرا. إذا كنت تشغّل مرآة تنزيل عموميّة، مجهولة وللقراءة فقط؛ فFTP ربّما يكون خيّارًا مناسِبا. يُمكن أيضًا استخدام FTP عند نقل ملفّات بين حاسوبيْن موجوديْن في شبكتيْن محميتْن بجدار ناريّ، وتثق في أن الشّبكتيْن آمنتان.
</p>

<p>
	يجب أن تستخدم في أغلب الحالات الأخرى بديلًا آمنًا. تأتي حزمة <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr> ببروتكول بديل يُسمَّى SFTP، يُستخدَم بنفس طريقة استخدام FTP ويوفّر نفس درجة الأمان الّتي يُوفّرها بروتوكول <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>.
</p>

<p>
	يشرح درس <a href="https://academy.hsoub.com/devops/linux/%D9%83%D9%8A%D9%81-%D8%AA%D8%B3%D8%AA%D8%AE%D8%AF%D9%90%D9%85-sftp-%D9%84%D9%86%D9%82%D9%84-%D8%A7%D9%84%D9%85%D9%84%D9%81%D9%91%D8%A7%D8%AA-%D8%A8%D8%A3%D9%85%D8%A7%D9%86-%D8%A5%D9%84%D9%89-%D8%AE%D8%A7%D8%AF%D9%88%D9%85-%D8%A8%D8%B9%D9%8A%D8%AF-r30/" rel="">كيف تستخدِم SFTP لنقل الملفّات بأمان إلى خادوم بعيد</a> طريقة التّعامل مع SFTP.
</p>

<h3 id="اضبط-سياسات-حساسة-لأمان-المستخدمين">
	5- اضبُط سيّاسات حسّاسة لأمان المستخدمين
</h3>

<p>
	توجد عدّة خطوات يُمكن تطبيقها لتأمين النّظام عند إدارة المستخدِمين.
</p>

<p>
	الاقتراح الأوّل هو تعطيل دخول المستخدِم الجذر Root user. يُعدّ حساب المستخدِم الجذر مقصِدًا جذّابًا لمحاولات التّسلّل نظرًا لوجوده على كلّ الأنظمة المتوافقة مع معيار POSIX، وللامتيّازات اللّامحدودة الّتي يتمتّع بها في النّظام. تبدو فكرة تعطيل دخول المستخدم Root، بعد إعداد الوصول عن طريق <code>sudo</code> أو إذا كنت مرتاحًا مع أمر <code>su</code>، تبدو فكرةً جيّدة. لا يوافق الكثيرون على هذه الفكرة؛ جرّب جدوائيّتها بالنّسبة لك.
</p>

<p>
	توجد إمكانيّة تعطيل الدّخول عن بعد لحساب <code>root</code> ضمن إعدادات <abbr title="Secure Shell | القشرة (أو الصَدَفة) الآمنة">SSH</abbr>، كما يُمكن تعطيل الدخول للحساب الجذر محلّيًا. يُمكن أيضًا إضافة تقييدات على الحساب ضمن ملف الإعداد <code>etc/securetty/</code>، أو ضبط برنامج Shell للمستخدم الجذر بحيث يُشير إلى برنامج آخر ممّا ينتج عنه تعطيل وصول <code>root</code> إلى Shell. خيّار آخر يتمثّل في إعداد قواعد PAM (أو Pluggable Authentication Modules، وهي طبقة لتمكين الاستيثاق بين خدمات مختلفة على الأنظمة الشّبيهة بيونكس) لتقييد ولوج المستخدم الجذر. توفّر RedHat مقالًا رائعًا حول <a href="https://access.redhat.com/site/documentation/en-US/Red_Hat_Enterprise_Linux/4/html/Security_Guide/s2-wstation-privileges-noroot.html" rel="external nofollow">كيفيّة تعطيل دخول المستخدم الجذر</a>.
</p>

<p>
	يتوجّب أيضًا العمل على تنفيذ سيّاسة أمنيّة يُنشَأ بموجبها حساب وحيد لكلّ مستخدم أو خدمة، ثمّ يُعطى الأذون Permissions الدّنيا اللّازمة لعمله. امنع الوصول إلى كلّ ما لا تحتاج الوصول إليه ولا تعطِ للمستخدمين امتيّازات لا يحتاجون إليها. هذه السّيّاسة مهمّة جدًّا، ففي حالة اختراق مستخدِم أو خِدمة فلن يؤدّي ذلك إلى تأثير الدومينو الّذي يسمح لمهاجمٍ بالحصول على صلاحيّات واسعة في النّظام. تُساعد طريقة التّقسيم هذه في عزل المشاكل الأمنيّة، بحيث لا يتسبّب مشكل أمنيّ لدى حساب واحد في تعريض كامل النّظام للخطر.
</p>

<p>
	يجب كذلك التّأكّد من تعطيل حسابات المستخدمين عندما تنقضي الحاجة إليها؛ مثلًا، عند إلغاء تثبيت برنامج.
</p>

<h3 id="انتبه-لإعداد-الأذون">
	6- انتبِه لإعداد الأذون
</h3>

<p>
	تمثّل صلاحيّات الملفّات مصدرًا كبيرًا للجزع لدى كثير من المستخدمين؛ فقد يكون من الصّعب العثور على نقطة توازن بحيث يُمكن للمستخدِم أداء عمله دون أن يعرّض نفسه أو النّظام للخطر. يحتاج هذا الأمر إلى الانتباه والتّفكير في كلّ سيناريو ممكن.
</p>

<p>
	يجب التّفكير في سيّاسة أمنيّة تضبُط <code>umask</code> (الخاصّيّة الّتي تحدّد الأذون الافتراضيّة للملفّات والمجلّدات الجديدة) بما يُناسِب؛ الأمر الّذي يُشكّل خطوة كبيرة على الطّريق الصّحيح. المقال التّالي يتطرّق ل<a href="https://www.digitalocean.com/community/tutorials/linux-permissions-basics-and-how-to-use-umask-on-a-vps" rel="external nofollow">كيفيّة ضبط umask</a>.
</p>

<p>
	القاعدة العامّة هي ألّا تضبط إذن الكتابة على أي ملفّ إلّا إذا كان ذلك ضروريًّا، خصوصًا إذا أمكن الوصول للملفّ عبر الإنترنت، لما قد ينتُج عنه من عواقب. إضافةً لذلك، يجب ألّا تُعدّل على بت SGID أو SUID، إلّا إذا كنت تدرك جيّدًا ما تفعل. تحقّق أيضًا من أنّ كلّ الملفّات لديها مالِك ومجموعة.
</p>

<p>
	يتغيّر إعداد الأذون كثيرًا حسب الحاجة، ولكن يجب دائمًا محاولة العثور على طريقة لتلبيّة الحاجة بأقل أذون ممكن. ينبغي الانتباه إلى سهولة الخطأ في إعداد الأذون، ووجود العديد من النّصائح الخاطئة حولها على الإنترنت.
</p>

<h2 id="كيف-تؤمن-برنامجا-تستخدمه">
	كيف تؤمِّن برنامجًا تستخدمه
</h2>

<p>
	لا يكفي حجم هذا المقال للتّطرّق لخصوصيّات تأمين كلّ نوع من البرامج أو الخدمات، إلّا أنّه توجد العديد من الدّروس والأدلّة المتاحة على الشّبكة. يجب أن تقرأ النّصائح الأمنيّة لكلّ برنامج تريد إعداده للعمل على جهازك.
</p>

<p>
	بالنّسبة لبرامج الخادوم الشّهيرة مثل خواديم الويب ونُظُم إدارة قواعد البيانات، توجد مواقع ويب وقواعد بيانات كاملة مخصَّصة للأمان. على العموم، يجب أن تقرأ حول تأمين كلّ خدمة قبل إعدادها وتشغيلها.
</p>

<h2 id="خاتمة">
	خاتمة
</h2>

<p>
	يجب أن تكون لديك الآن معرفة جيّدة بالإجراءات الأمنيّة الممكن إعدادها على خادوم لينكس. حاولنا في هذا الدّليل التّعرّض للعديد من المجالات ذات الأهميّة الكبيرة، ولكن في نهاية المطاف ستحتاج اتّخاذ قرارات بنفسك. يتوجب عليك، بوصفك مديرًا للنّظام؛ تحمّل مسؤوليّاتك في تأمين الخادوم.
</p>

<p>
	تأمين الخادوم ليس إجراءً يُؤدّى مرةً واحدة، لكنّه عملّية مستمرّة تتضمّن فحص النّظام باستمرار، إعداد الحلول، التحقّق من السّجلاّت والتّنبيهات، إعادة تعريف الاحتيّاجات، …إلخ. اليقظة واستمرار تقويم ومراقبة الإجراءات المتَّبعة أمور ضروريّة للحفاظ على الأمن.
</p>

<p>
	ترجمة بتصرّف لمقال <a href="https://www.digitalocean.com/community/tutorials/an-introduction-to-securing-your-linux-vps" rel="external nofollow">An Introduction to Securing your Linux VPS</a> لصاحبه <a href="https://www.digitalocean.com/community/users/jellingwood" rel="external nofollow">Justin Ellingwood</a>.
</p>
]]></description><guid isPermaLink="false">51</guid><pubDate>Sun, 24 May 2015 13:43:00 +0000</pubDate></item></channel></rss>
