لوحة المتصدرين
المحتوى الأكثر حصولًا على سمعة جيدة
المحتوى الأعلى تقييمًا في 09/30/18 في كل الموقع
-
لقد أصبحت التجارية الإلكترونية E-Commerce تُستخدم على نطاق واسع عالميًا، ولا بد من أنّك استخدمت شكلًا من أشكالها من قبل. تتم التجارة الإلكترونية باستخدام مجموعة متنوعة من التطبيقات، من ضمنها المتاجر الإلكترونية. قد يبدو إنشاء المتجر الإلكتروني وإعداده مهمة شاقة، لكن بوجود ووردبريس وملحقاته أصبحت هذه المهمة سهلة جدًا. من هذه الملحقات WooCommerce. يعتبر WooCommerce من منصات التجارة الإلكترونية الآمنة والمستقرة. وهو من المحلقات الأكثر شعبية الذي يساعدك على إنشاء متجر إلكتروني قائم على ووردبريس، وإدارته بسهولة. من مميزات ملحق WooCommerce أنه مجاني، آمن جدًا، ذو مرونة عالية (بإمكانك بيع مختلف الفئات من المنتجات)، مفتوح المصدر، بالإضافة إلى أنّه سهل الاستخدام. تثبيت WooCommerce لكي تستخدم WooCommerce يجب أن تقوم بتثبيته أولًا عبر لوحة التحكم في ووردبريس. قم بتسجيل الدخول إلى موقعك ثم اذهب إلى: لوحة التحكم Dashboard > إضافات Plugins > أضف جديد Add New في حقل البحث اكتب "woocommerece" ثم اضغط Enter: سيكون الملحق هو النتيجة الأولى، انقر على زر التثبيت Install Now: سيتم تنزيل الملحق وتثبيته. بعد التثبيت سيكون لديك خياران، إما تفعيل الملحق Activate Plugin، أو العودة إلى نافذة مثبّت الملحقات Return to Plugin Installer: انقر على Activate Plugin لفتح نافذة مرشد (wizard) تهيئة الملحق، وهو عبارة عن خطوات بسيطة تساعدك على ضبط إعدادات صفحات WooCommerce، إعدادات المتجر، إعدادات الضريبة والشحن، بوابات الدفع وغيرها الكثير. الأمر راجع لك سواء كنت ترغب في استخدام المرشد أو لا. لتخطي هذه الخطوات انقر على Not Right Now. لكننا نوصي بالمواصلة والنقر على "!Let's Go" إذا كانت هذه هي المرة الأولى التي تقوم فيها بضبط إعدادات WooCommerce: الخطوة الأولى ستكون نافذة إعداد الصفحة Page Setup، ومن خلالها يتم إنشاء 4 صفحات يحتاج WooCommerce إلى تشغيلها، وهي المتجر Shop، السلّة Cart، المحاسبة/الدفع Checkout، وصفحة حسابي My Account. وهذه الصفحات تشبه الصفحات العادية في ووردبريس. سيقوم WooCommerce بإنشائها وإضافة شيفرات مختصرة shortcodes إليها لجعلها تعمل كما يجب: انقر على Skip this step إذا لم تكن ترغب في إنشاء هذه الصفحات، أو Continue لكي يقوم WooCommerce بإنشائها. الخطوة الثانية هي نافذة Store Locale: في الحقل الأول قم بتحديد الموقع الذي يوجد فيه متجرك، حدد البلد (والمدينة إن وجدت) من القائمة، أو قم بإدخال اسم البلد بواسطة لوحة المفاتيح. هذا الخيار سيساعدك لاحقًا في ضبط إعدادات الشحن والضريبة. الحقل الثاني خاص بالعملة التي يستخدمها متجرك، وستجد أنّها محددة تلقائيًا اعتمادًا على الموقع. يمكنك تغييرها من القائمة، أو النقر على رابط add it later إذا لم تكن العملة موجودة ضمن القائمة. من الحقلين الأخيرين حدّد الوحدات التي تريد استخدامها لقياس وزن وأبعاد المنتج. ستحدد هذه الخيارات تلقائيًا أيضًا واعتمادًا على الموقع، لكن بإمكانك تغييرها. بعد تحديد جميع خياراتك انقر على Continue للمواصلة. الخطوة الثالثة هي إعدادات الشحن والضريبة Shipping & Task: إذا كنت ستقوم بشحن سلع ماديّة، قم بتأشير الخيار Yes, I will be shipping physical goods to customers. ستلاحظ ظهور 4 حقول. في الحقلين العلويين قم بإدخال كلفة الشحن المحلي Domestic Shipping لكل طلب و/أو لكل سلعة. وفي الحقلين السفليين قم بإدخال كلفة الشحن الدولي International Shipping لكل طلب و/أو لكل سلعة. وإذا كنت ستقوم بفرض ضريبة مبيعات، قم بتأشير الخيار Yes, I will be charging sales tax. سيظهر خياران إضافيان. حدد الأول، I will enter prices inclusive of tax، إذا كنت ستقوم بإدخال أسعار شاملة للضريبة، أو الثاني، I will enter prices exclusive of tax، إذا كنت ستقوم بإدخال أسعار غير شاملة للضريبة. بعد تحديد خياراتك انقر على Continue للمواصلة. الخطوة الرابعة هي إعدادات الدفع Payment. بإمكانك من هذه النافذة إعداد القليل من بوابات الدفع المدرجة، PayPal Standards و Offline Payments: فإذا كنت تقبل استلام المدفوعات عبر PayPal، قم بإدخال عنوان بريدك الإلكتروني على PayPal في حقله المخصص. وإذا كنت تريد تمكين استلام المدفوعات بالطرق التقليدية، قم بتأشير Cheque Payments لتمكين الدفع عبر الصكوك، Cash on Delivery لتمكين الدفع عند التسليم، أو (Bank Transfer (BACS لتمكين الدفع عبر الحوالات المصرفية. يمكنك تمكين أحد هذه الطرق أو جميعها. الخطوة الأخيرة هي نافذة !Ready، وفيم يتم سؤالك فيما إذا كنت تريد المساعدة في تحسين WooCommerce بالسماح لموقع WooThemes بتجميع البيانات التشخيصية غير الحساسة ومعلومات الاستخدام، وفي المقابل تحصل على تخفيض 20% عندما تقوم بشراء قالب من WooThemes في المرة القادمة. انقر على Allow للسماح بإرسال البيانات أو No Thanks لعدم السماح بذلك. بعد ذلك بإمكانك الشروع في إنشاء منتجك الأول، أو الاطلاع على المزيد من المصادر من قسم Learn More. وكذلك بإمكانك العودة إلى لوحة التحكم في ووردبريس بالنقر على Return to WordPress dashboard إذا لم تكن ترغب في إنشاء المنتج حاليًا. ستلاحظ وجود WooCommerce ضمن قائمة لوحة التحكم، ومنه يمكنك الوصول إلى الطلبات Orders، القسائم Coupons، التقارير Reports، الإعدادات Settings، حالة النظام System Status، وكذلك الإضافات Add-ons التي قد تستخدمها. وكذلك ستلاحظ وجود قائمة خيارات للمنتجات، والتي من خلالها يمكنك تحديث المنتجات الحالية Products، إضافة منتجات جديدة Add New، إدارة فئات المنتجات Categories، العلامات Tags، أنواع الشحن Shipping Classes، والسمات Attributes: إعدادات عامة General بعد أن تم تثبيت الملحق والانتهاء من ضبط إعدادات التهيئة، قم بضبط إعدادات متجرك. من لوحة التحكم اذهب إلى: WooCommerce > Settings ستفتح صفحة تحتوي على مجموعة تبويبات، وكل تبويب يحتوي على الإعدادات ذات الصلة. وبعض هذه التبويبات يحتوي على تبويبات فرعية أيضًا. على سبيل المثال يحتوي تبويب Products على إعدادات عامة General، العرض Display، مخزون السلع/الجرد Inventory، والمنتجات القابلة للتنزيل Downloadable Products: سنقوم في هذه الفقرة بشرح الإعدادات العامة الرئيسية في تبويب General: بعض الإعدادات في هذا التبويب قمنا بضبطها سابقًا من خلال مرشد التهيئة كالموقع Location والعملة Currency. من قائمة Selling Location يمكنك أنّ تحدد الخيار Sell to specific countries إذا كنت تريد البيع لبلدان محددة. ثم قم بإدخال أسماء تلك البلدان في حقل Specific Countries: أما حقل Default Customer Address فيساعد على تحديد العنوان لحساب الضريبة وكلفة الشحن قبل أن يقوم المشتري بإدخال عنوانه عند الدفع: يحتوي الحقل على أربعة خيارات: No Address: وكما هو واضح من الاسم، يعني عدم استخدام عنوان محدد، مما يتطلب من المشتري أن يقوم بإدخال الرمز البريدي zip code لحساب كلفة الضريبة والشحن على أساسه. Shop base address: عند تحديد هذا الخيار سيتم استخدام عنوان موقع متجرك الأساسي لحساب الضريبة والشحن. Geolocate: هذا الخيار يعني أنّه سيتم استخدام عنوان IP للمشتري، ومن ثم اختيار الرمز البريدي لأقرب موقع لحساب الضريبة والشحن على أساسه. (Geolocate (with page caching support: استخدم هذا الخيار إذا كان لديك أي نوع من التخزين المؤقت (caching) على موقعك، وتريد استخدام خيار تحديد الموقع Geolocate. الخيار التالي هو Store Notice والذي عند تأشيره ستتمكن من إضافة ملاحظة في الجزء العلوي من موقعك تظهر لجميع الزائرين. على سبيل المثال يمكنك استخدامها لإخبار الزائر بأنّك تبيع منتجات محددة أو لمناطق محددة فقط: بعد تأشير هذا الخيار قم بإدخال رسالتك في الحقل المخصص. علمًا أنّه يمكن تنسيقها لاحقًا بواسطة CSS لتتناسب مع مظهر موقعك. الخيارات الأخيرة هي خاصة بالعملة: في WooCommerce يمكنك استخدام عملة واحدة فقط والتي تُحدد في حقل Currency. بعدها قم بضبط موضع رمز العملة من حقل Currency Position. ثم قم بضبط نوع الفاصل الذي يستخدم لفصل الآلاف Thousand Separator، نوع الفاصلة العشرية Decimal Separator، وكذلك عدد المراتب العشرية بعد الفاصلة Number of Decimals. بعد ضبط جميع الخيارات انقر على Save Changes. بهذا نصل إلى نهاية الدرس، لكن هناك المزيد لتعلّمه حول ضبط إعدادات المتجر. تابع معنا الدروس القادمة. هل ترغب في متجر ووكومرس احترافي لبدء تجارتك الإلكترونية؟ احصل على خدمات مميزة لإنشاء متجرك الإلكتروني وتحسينه وإدارته على خمسات أنشئ متجر ووكومرس الآن1 نقطة
-
السلام عليكم أخي الكريم حسب مافهمت أنت تسأل هل ستفيدك شهادة الفزياء في وظائف البرمجة أليس كذالك ؟ هي ليس لها علاقة وغير مطلوبة إذا كنت تحب الفزياء يمكنك دخول البرمجة في جانب يتضمن بعضا من الفزياء وهي برمجة الألعاب1 نقطة
-
وعليكم السلام ورحمة الله. اخي الكريم حتى شهادتك في الهندسة المعلوماتية، لن تفيدك كثيراً اذا لم تكن لديك الرغبة والاهتمام وحب العمل. لذلك اذا كنت ترى ان مجال البرمجة مناسب لك وترغب به، لا تنظر إلى شهادتك العملية مهما كانت. من جهتي لدي شهادة في الهندسة المعلوماتية/هندسة البرمجيات. ولا اعتمد عليها في عملي اطلاقاً، بقدر اعتمادي على المهارات والخبرات التي اكتسبها يومياً. بالتوفيق،،،1 نقطة
-
المثلث المستحيل أو ما يسمى مثلث بنروز هو شكل هندسي يستحيل تمثيله في الواقع إلا باستخدام بعض الخدع البصرية، سنتحدث في هذا المقال عن طريقة رسمه في برنامج إنكسكيب (استخدم محركات البحث إن كنت مهتما بمعرفة المزيد عن المثلث). بأداة المضلع والنجمة Stars and polygons ارسم مثلثا عن طريق اختيار المضلع من الشريط العلوي واجعل عدد الزوايا corners ثلاثة، وبقية الخانات بقيمة صفر، مع الضغط على Ctrl أثناء الرسم للحصول على مثلث مستقيم بلا ميلان، ثم أعط المثلث لونا مميزا وليكن الأحمر من شريط الألوان السفلي أو من لوحة التعبئة والحدود Fill and Stroke مع جعل قيمة الشفافية Opacity للمنتصف من تبويب التعبئة Fill، وإزالة الحدود إن وجدت من تبويب رسم الحدود Stroke paint من نفس اللوحة. كرر المثلث مجددا عن طريق اختيار Duplicate بالزر الأيمن، ثم لونه باللون الأرق، وبأسهم التحجيم صغره مع الضغط على Ctrl+Shift أثناء ذلك للمحافظة على أبعاد المثلث وتمركزه وسط الشكل الأصل. حدد كلا المثلثين إما بسحب مؤشر الفأرة حولهما، أو بالاستعانة بزر Shift بعد تحديدنا لشكل الأول أثناء تحديد الشكل الثاني، ثم من قائمة المسار Path في الشريط العلوي اختر أمر الفرق Difference. كرر الشكل الذي حصلت عليه ولونه باللون الأصفر، ومن شريط الكبس والالتقاط بعد التأكد من كونه مفعّلا من خيار Enable Snapping فعّل خياري Snap to path Intersection و Snap cusp nodes لالتقاط المسارات المتقاطعة والعقد الحادة. حرك المثلث الأصفر المكرر إلى يسار المثلث الأصل مع الضغط على Ctrl أثناء التحريك للمحافظة على محاذاته أفقيا للمثلث الأحمر، إلى أن يتم التقاط العقدة الداخلية العلوية للمثلث الأصفر مع الحافة اليسرى للمثلث الأحمر. مع بقاء نفس خيارات الالتقاط مفعلة، كرر المثلث للمرة الثالثة ولونه باللون الأزرق وارفعه للأعلى بحيث يكون وسط المثلثين السابقين، إلى أن تلتقط حافته العلوية الداخلية، نقطة تقاطع المثلثين من الأعلى. يمكن أن نرى مثلثا ناشئا عن تجمع المثلثات الثلاثة، اختر أداة الرسم المنحني Bezier tool وارسم حول المثلث الكبير المتشكل مضلعا يصل بين حواف المثلثات الثلاثة. كرر المضلع لثلاث مرات، ثم اختر إحدى النسخ من المضلع مع أحد المثلثات ومن قائمة المسار نختار التقاطع Intersection وهكذا نكرر الأمر مع المضلعين والمثلثين المتبقيين. أزلنا شفافية المثلث الأحمر، ومن الشريط العلوي رفعناه للأمام (للقمة) ليكون ظاهرا لنا ما سنقوم به على هذه القطعة. كرر المثلث الأصفر الأيسر ثم ارفعه لأقصى الأمام، ثم حدده هو والمثلث الأحمر ومن قائمة المسار اختر أمر التقسيم Division. سيتم تقسيم المثلث الأحمر لعدة أجزاء، نتخلص من الجزء السفلي والذي يتقاطع مع ضلع المثلث الأصفر السفلي، فيتبقى لنا بعد حذفه ثلاث قطع. نكرر المثلث الأزرق المتوسط ثم نختاره هو والقطعة الثالثة اليسرى من المثلث الأحمر التي يتقاطع معها المثلث الأزرق أسفلها، ثم من قائمة المسار نختار الفرق Difference. نحدد القطع الثلاثة للمثلث الأحمر ونوحدها عن طريق Union من قائمة المسار. وبهذا حصلنا على أحد أضلاع المثلث والذي بتدويره سنحصل على بقيته، لذا سنحذف بقية القطع ونبقي على القطعة الحمراء. كرر القطعة الحمراء ولونها باللون الأخضر لتمييزها، ولتدويرها حددها مرة أخرى لتظهر أسهم التدوير واضغط على Ctrl للتحكم بمقدار الدوران، وقم بتدوير الشكل المكرر ثمان خطوات بدرجة -120 مع عقارب الساعة (يمكنك معرفة الزاوية من الشريط الذي يقع أسفل شريط الألوان)، ثم حرك الشكل المدور من طرفه العلوي إلى العقدة الداخلية العلوية للمثلث الأحمر ليتم التقاطها من الأعلى لا من الحواف. لتحري مزيدا من الدقة وللاهتمام بالتفاصيل، سنكبر الشاشة عند الحافة اليمنى السفلية وسنلاحظ وجود زيادة طفيفة في الحافة، سنتخلص منها عن طريق رسم مضلع بأداة Bezier ينطلق من عقدة المثلث الأخضر اليمنى ويمتد قاطعا القطعة الحمراء بشكل محاذي لحافة القطعة الحمراء (استعن بزر Ctrl للحصول على المحاذاة المطلوبة) ثم أضف عدة أضلاع خارج الشكل وصلها بنقطة الانطلاق، ثم حدد كلا من القطعة الحمراء والمضلع المرسوم للتو واختر Difference من قائمة المسار. احذف القطعة الخضراء ثم أعد تكرار القطعة الأصل ولون الشكل المكرر باللون الأخضر وقم بتدويره ثمان خطوات مجددا ثم افعل ذلك مع النسخة الثالثة بعد تلوينها باللون الأزرق لتمييزها ولا تنس الاستعانة بزر Ctrl أثناء تدوير القطعتين لتحصل على الشكل النهائي للمثلث. بقي أن نقوم ببعض الخطوات الجمالية ليصبح مثلثنا المستحيل أكثر لطفا. لون كل قطعة من المثلث بلون بحيث تتدرج القطع من اللون الفاتح فالأقتم، واخترنا هنا الدرجات التالية: e3dbdbff 916f6fff 715656ff ثم بأداة Bezier رسمنا خطا مستقيما بالاستعانة بزر Ctrl عند الحافة اليمنى للقطعة الثالثة القاتمة، ولتكرار الخط نحرك النسخة الأصل مع الضغط على زر المسافة space عن كل نسخة نرغب بإنشائها. بعد حصولنا على العدد المطلوب من الخطوط نقوم بتحديدها كلها ثم من لوحة المحاذاة والاصطفاف Align and distribute نضبط المسافة بين الخطوط عاموديا. مع كون الخطوط ما زالت محددة نختار من قائمة المسار Stroke to path لتحويل هذه الخطوط لمسار ثم نختار من نفس القائمة Union لتصبح الخطوط عبارة عن قطعة واحدة. نحرك الخطوط عند حافة القطعة القاتمة ثم نكرر قطعة المثلث الثانية (المتوسطة) وباختيارها هي والخطوط نختار Difference. سنقوم بتدوير الخطوط التي حصلنا عليها بما يتناسب وبقية القطع ونضعها عند حوافها، ثم نلون كل خطوط بنفس لون القطعة إلا أننا من شريط L في لوحة التعبئة والحدود في تبويب التعبئة سنحرك مؤشر الشريط لليسار قليلا للحصول على لون أقتم. النتيجة النهائية1 نقطة
-
1 نقطة
-
الأبنة الكريمة: يتم تصميم المشاريع (تخطيط المشاريع) تبعاً لخطوات علمية مدروسه ومتتابعة - تزيد أو تنقص حسب مجال المشروع وحجمه، وهى كالتالى: - تحديد الفكرة (نوع وطبيعة المشروع). - عمل بحث عن المشاريع المشابهة ودراستها بشكل تحليلى أو علمى (حسب الخبرة أو مدى توفر المعلومات). - عمل تقرير تحليلى لفكرة المشروع عامة - مع الإضافات الجديدة المبتكرة أو الخاصة إن وجد. - التحليل التجزيئى للفكرة الكاملة من الخطوة السابقة، بمعنى أن التحليل الكامل تم الإنتهاء منه - وهنا يجب علينا تقسيمالتحليل السابق إلى مجموعة أقسام وتخصصات متتالية كخطوات تنفيذية متوازية أو متسلسلة - أو كلاهما (حسب المشروع) - التخطيط للخطوات التنفيذية وعمل دراسة مالية وزمنية لكل خطوة - حتى يمكن حساب التكلفة العامة والتخصصات المطلوبة والأوراق القانونية والتصاريح المصاحبة للتنفيذ، ومعرفة مدة تنفيذ المشروع ككل. - البدأ بخطوات التنفيذ بترتيبها وحسب الخطة المالية والزمنية - وإختبار كل مرحلة تنفيذ بتحديد مدخلاتها ومخرجاتها وإختبار النتائج. - أثناء إقتراب الإنتهاء من التنفيذ - يجب التخطيط لكيفية التسويق والدعاية للمشروع - وتحديد الميزانية لذلك - والجهات التى سيتم التعاقد معها من أجل التسويق والإعلان - حتى تنطلق حملة التسويق والإعلان قبل إنطلاق المشروع بقليل أو أول ماينطلق - ويجب تكثيف الإعلان والتسويق فى الفترة الأولى - ثم بعد ذلك ممكن إستعمال خطة تسويق معتدلة ومتساوية على مدار العام - أو موسمية. - وإن كان مشروع ربحى - فيجب أن يتضمن هذا التخطيط لسياسة تسعير مبنية على وسيلة ومصدر وطريقة الحصول على السلعة أو الخدمة المراد بيعها - أى تكلفة الحصول على المنتج النهائى وبالتالى تحديد سعره - وعدم الإعتماد على مصدر واحد حتى لايسقط المشروع بتوقفه عن التوريد - يجب حساب تكاليف التشغيل الدورية (Overheads) - وتحميلها على تكلفة الوحدة الواحدة من السلعة المباعة - حتى لاينتج عن غفلانها ربح وهمى. الموضوع كبير ومتشعب ومتعدد - وماذكرته مجرد رؤوس مواضيع - يجب القراءة فيها - أو الإستعانة بخبير علمى أو عملى. بالتوفيق. د/خالد طاحون.1 نقطة
-
1 نقطة
-
استخدام الجدار الناري (firewall) يعتمد كثيرًا على السياسة (policy) التي ستتبعها في تصفية تدفّقات البيانات (data traffics) بنفس درجة اعتماده على تعلّمك للأوامر الأساسية وطريقة الاستخدام. بعض الجدران النارية مثل ـiptables تمتلك القدرة على فرض سياسات معيّنة يتم تحديدها من قبل مدير النظام، ولكن كواحدٍ من هؤلاء، يجب أن تعرف أفضل السياسات المناسبة لتطبيقها على البيئة الخاصّة بك. بينما تركّز دروسٌ أخرى على الأوامر اللازمة للحصول على جدار ناري فعّال، في هذا الدرس، سنناقش بعض الأمور التي يجب عليك فعلها عندما تقوم بتشغيل جدار ناري. ستؤثّر هذه الخيارات على الطريقة التي يتصرّف بها جدارك الناري، وعلى المدى الذي يجب إحكام إقفال خادومك إليه، بالإضافة إلى طريقة استجابته لمختلف الشروط التي قد تطرأ من حينٍ إلى آخر. سنستخدم iptables في درس اليوم، إلّا أنّ معظم ما سنتكلّم عنه سينطبق على أيّ أداة بغضّ النظر عن نوعها. اختيار السياسة الافتراضية عند بناء جدارٍ ناريّ فإن السياسة الافتراضية هي واحدة من الأشياء الأساسية التي يجب عليك التفكير فيها. تحدد السياسة الافتراضية ما يجب أن يحصل لتدفّقات البيانات في حال عدم مطابقتها لأيّ قاعدة (rule). يمكن افتراضيًا للجدار الناري أن يقبل أيّ تدفّق لا يطابق القواعد المعيّنة أو أن يرفضه. القبول افتراضيا مقابل الرفض افتراضيا سياسة "Accept" (قبول) الإفتراضية تعني أنّه سيتم السماح لأيّ تدفّق غير مطابق للقواعد المعيّنة مسبقًا بالمرور إلى الخادوم. لا ينصح باستخدام هذه السياسة افتراضيًا لأنّ هذا يعني أنّك ستقوم بعمل قائمة سوداء لمنع ما تريد منعه من الوصول إلى خادومك. القوائم السوداء صعبة الإدارة لأنّه يجب عليك متابعة وحظر جميع أنواع التدفّقات التي لا تريدها في خادومك. يمكن أن يؤدي هذا إلى الكثير من وجع الرأس بالإضافة إلى مشاكل تقنية في حال حصول غلطة بسيطة في القائمة السوداء مثلًا، لذلك هو أمرٌ غير مستحسن. الحلّ البديل هو "drop" (ترك) التدفّق افتراضيًا. هذا يعني أنّه لن يتم السماح لأيّ تدفّق لا يطابق القواعد المعيّنة مسبقًا بالوصول إلى الخادوم (أو الخروج منه)، وهو أمرٌ مشابه للقوائم البيضاء وقوائم تحكّم الوصول (Access Control List) حيث يجب السماح بشكلٍ استثنائي وخاصّ بأن يتم تشغيل وتنفيذ كلّ خدمة متوفّرة على حدى، والذي قد يحتاج الكثير من الوقت والجهد في البداية، ولكنّ هذا يعني أنّ السياسة الافتراضية الخاصّة بك ستكون أكثر أمانًا وستعرف بالضبط نوع تدفّق البيانات الداخل إلى خادومك. عليك الاختيار بين التوجّه نحو الخيار الأكثر أمانًا أو السماح للخدمات بالتحرّك بشكلٍ أكثر حرّية خارج الصندوق. صحيحٌ أنّ خيار استخدام سياسة "Accept" (قبول) افتراضيًا مع الجدار الناري قد يكون أفضل ما تفكّر به للوهلة الأولى، ولكن - في غالب الأحيان - من الأفضل في الواقع أن تستخدم سياسة "منع" افتراضيًا للجدار الناري. سياسة "drop" افتراضيا مقابل قاعدة "drop" نهائية الخيار السابق باستخدام سياسة "drop" (ترك) افتراضيًا يقود إلى قرارٍ مهم آخر. في iptables والجدران النارية المشابهة الأخرى، يمكن أن يتم تعيين السياسة الافتراضية باستخدام خصائص داخلية للجدار الناري، أو تضمينها عبر إضافة قاعدة "drop" (ترك) شاملة في نهاية قائمة قواعد الجدار الناري. الفرق بين هذين الطريقتين هو فيما سيحصل في حال تمّ مسح (flush) قواعد الجدار الناري. إذا كانت السياسة الافتراضية الداخلية في الجدار الناري الخاصّ بك معيّنة على "drop" (ترك) التدفّق وحصل يومًا ما وأن تمّ مسح قواعد الجدار الناري أو حذف بعضٍ منها عن طريق الخطأ مثلًا، فإنّ جميع الخدمات التي تشغّلها على الخادوم ستصبح غير قابلة للوصول. هذه غالبًا فكرة جيّدة عند ضبط الخدمات غير الحساسة على خادومك لكي لا يتم السماح للبرامج والأدوات الخبيثة بالمرور إذا اختفت القواعد فجأة. لكنّ الجانب المظلم في هذا التوجّه هو أنّ خدماتك ستصبح فورًا غير متوفّرة لمستخدميك إلى حين أن تقوم بإعادة تعيين قواعد الوصول مجددًا. يمكن أحيانًا أن تقوم بقفل الباب على نفسك وأنت في خارج الخادوم، الأمر سيّئ خاصّة إذا لم تكن تقدر على الوصول "فيزيائيا" إلى الخادوم أو وسيلةً أخرى للاتصال به (خواديم DigitalOcean قابلة للوصول دومًا بغضّ النظر عن إعدادات الشبكة عبر استخدام زرّ "Console Access" الموجود في قسم "Access" من لوحة التحكّم الخاصّة بالخادوم). إذا كنت أنت من يريد إعادة تعيين القواعد ومسحها بشكلٍ مقصود، فيمكنك ببساطة تجنّب هذه المشكلة عبر تغيير السياسة الافتراضية إلى "Accept" (قبول) مباشرةً قبل إعادة تعيين ومسح القواعد. الخيار البديل لما سبق هو تعيين السياسة الافتراضية الخاصّة بك إلى "Accept" (قبول) مع تضمين قاعدة "drop" (ترك) في النهاية مع القواعد الأخرى. يمكنك إضافة قاعدة عادية في نهاية قائمة القواعد الخاصّة بك تقوم بمطابقة ومنع كلّ التدفّق الباقي الغير مُطابق. في هذه الحالة، إذا تمّ إعادة تعيين قواعد الجدار الناري الخاصّة بك، فإنّ خدماتك ستكون قابلة الوصول ولكن غير محمية. اعتمادًا على خياراتك للوصول المحلّي أو البديل، يمكن أن يكون هذا شرًّا ضروريًا لكي تضمن أنّك قادر على الوصول إلى خادومك مجددًا في حال مُسحت قواعد الجدار الناري. إذا قررت استخدام هذا الخيار، فيجب أن تضمن أنّ قاعدة "drop" (ترك) التدفّق الغير مطابق هي دومًا آخر قاعدة في قائمة قواعد الجدار الناري. ترك التدفق مقابل رفضه هناك بضع طرق مختلفة لمنع حزمة بيانات (packet) من المرور إلى الوجهة التي تريدها. الاختيار المختلف لواحدٍ من هذه الطرق سيؤثر على الطريقة التي يقوم المستخدمون من خلالها بمحاولة الاتصال بالخادوم وسرعة إدراكهم أنّه لن يتم خدمة طلبهم الذي أرسلوه مسبقًا. الطريقة الأولى التي يمكن من خلالها منع حِزَم البيانات هي عبر "drop" (ترك) التدفّق. يمكن أن يتم استخدام الـ "ترك (drop)" كسياسة افتراضية أو ضمن قواعد الجدار الناري. عندما يتم ترك حزمة بيانات، يقوم iptables ببساطة برميها بعيدًا، حيث لا يقوم بإرسال أيّ رد إلى العميل الذي يحاول الاتصال ولا يقوم حتّى بإرجاع ردّ أنّه قد استلم الطلب بنجاح أم لا. هذا يعني أنّ العملاء لن يعرفوا ما إذا كان الخادوم قد وصله طلبهم أساسًا أم لا. لمحاولات الاتصال عبر بروتوكول TCP، سيتم الحفاظ على الاتصال إلى حين انقضاء مهلته (timeout). بما أنّ بروتوكول UDP هو بروتوكول غير اعتمادي على الاتصال (connectionless)، فإنّ عدم توفّر الردّ للعملاء يصبح أكثر إيهامًا. في الواقع، غالبًا ما يكون عدم تلقّي ردّ في هذه الحالة دليلًا على أنّ حزمة البيانات قد قُبلت. إذا كان عميل UDP يهتم بالجهة التي يرسل الحِزَم إليها، فسيقوم بإرسالها مجددًا لكي يتحقق مما إذا تمّ قبولها أو فقدانها أو رفضها. قد يزيد هذا من الوقت الذي يجب على البرمجيات والشفرات الخبيثة استغراقه للحصول على معلوماتٍ صحيحة عن حالة المنافذ في خادومك، لكنّه قد يسبب أيضًا مشكلة للتدفّق العادي. الخيار البديل هنا هو ببساطة رفض حزم البيانات التي لا تريدها بشكلٍ استثنائي. ICMP أو بروتوكول رسائل التحكّم بالإنترنت (Internet Control Message Protocol) هو عبارة عن بروتوكول وصفي (meta-protocol) يستعمل عبر الإنترنت لإرسال الحالة ومعلومات مواجهة الأعطال ورسائل الخطأ بين المضيفين (hosts) ضمن قناة لا تعتمد على اتصالات البروتوكولات التقليدية مثل TCP وUDP. عندما تقوم بـ "رفض" شيءٍ ما، فإنّ التدفّق سيتم منعه وسيتم إعادة حزمة ICMP إلى المُرسِل لإعلامه أنّ البيانات التي أرسلها قد تمّ استلامها إلّا أنّه قد تمّ رفضها. يمكن لرسالة الحالة أن تشير إلى السبب أيضًا. توجد العديد من العواقب لهذا، بافتراض أنّ تدفّق ICMP قادر على الرجوع إلى العميل، فإنّه سيتم إخطاره مباشرةً أنّ التدفّق الخاص به محظور. للعملاء العاديين، سيعني هذا أنّه يجب عليهم الاتصال بمدير الخادوم للاستفسار عن السبب أو التحقق من خيارات اتصالاتهم للتأكّد من أنّهم يتصلون عبر المنفذ الصحيح. أمّا بالنسبة للمستخدمين السيئين والذين يحاولون اختراق الخادوم، فإنّ هذا يعني أنّه يمكنهم إكمال عمليات بحثهم عن المنافذ المفتوحة والمغلقة والمُرشّحة في وقتٍ أقصر. هناك الكثير من الأمور التي يجب أخذها بعين الاعتبار عندما تقرر قبول أو رفض تدفّق البيانات. من بينها معرفة أنّ غالب تدفّق البيانات الخبيث الذي يتم إرساله بواسطة المخترقين يتم إرساله في الواقع عبر سكربتات وبرامج مؤتمتة، وبما أنّها ليست حساسة للوقت، فإنّ ترك التدفّق العادي لن يكون مفضلًا حيث أنّه سيؤثر على المستخدمين العاديين للخادوم. يمكنك قراءة المزيد عن هذا من هنا. جدول المقارنة بين ترك الطلب ورفضه يظهر الجدول أدناه كيفية حماية خادوم بواسطة جدارٍ ناريّ، حيث سيقوم بالاستجابة إلى طلباتٍ مختلفة بناءًا على السياسة التي يتم تطبيقها على منافذ معيّنة. يحدد العمود الأول نوع حزمة البيانات التي يتم إرسالها بواسطة العميل، بينما في الثاني، نقوم بذكر أمر nmap الذي سنستخدمه لاختبار كلّ سيناريو. يحدد العمود الثالث سياسة المنفذ المتبّعة على المنفذ، بينما الرابع يحدد الرد الذي سيتم إرجاعه إلى من طرف الخادوم. والخامس، هو ما يمكن للعميل أن يفهمه بناءًا على الرد الذي تلقاه. ترجمة -وبتصرّف- لـلمقال: How To Choose an Effective Firewall Policy to Secure your Servers لصاحبه Justin Ellingwood.1 نقطة