حماية resolv.conf من DHCP على FreeBSD 10

إذا كنت تقوم بتشغيل المحلل الخاص بك ، أو ترغب في استخدام واحد من موفر من جهة خارجية ، فقد تجد أن /etc/resolv.confDHCP يستبدل ملفك . هناك عدد قليل من الطرق لحل هذه المشكلة. نظرًا لأنك ستحتاج على الأرجح إلى إعادة التشغيل للتأكد من استمرار التغييرات ، وبما أنك ستقوم بالتلاعب في إعدادات الشبكة في المقام الأول ، فإنني أقترح بشدة إجراء ذلك في حالة اختبار و / أو خارج الذروة ساعات.

الآن ، فيما يلي ثلاث طرق ، من الأسوأ إلى الأفضل. لاحظ أن جميع الطرق في هذا الدليل تمت كتابتها لـ FreeBSD 10. يمكن لمستخدمي Linux الرجوع إلى هذا الدليل .

الطريقة الأولى: استخدام إعدادات الواجهة الثابتة

في اختباري المحدود ، ينتج عن ذلك أوقات تمهيد أسرع قليلاً حيث لا تضطر إلى انتظار DHCP لتعيين إعدادات الشبكة الخاصة بك. ومع ذلك ، فقد رأيت ذكرًا في العديد من مستندات Vultr أن استخدام إعدادات الواجهة الثابتة أمر مستهجن وأنه يجب عليك الالتزام بـ DHCP. أفترض أن لديهم سببًا وجيهًا لهذا ، وبالتالي واصلت استخدام DHCP بنفسي. ومع ذلك ، إذا قررت السير في هذا الطريق ، فاتبع الخطوات أدناه.

  • حدد عنوان IP لخادمك وقناع الشبكة وعنوان IP للبوابة.
  • تعديل /etc/rc.confلاستخدام هذه القيم بدلاً من DHCP.
  • إعادة التشغيل لاختبار الإعدادات.

تحديد IP / قناع الشبكة / البوابة

بافتراض أن الواجهة الخاصة بك هي vtnet0 ، قم بما يلي:

ifconfig vtnet0 | grep inet

من المفترض أن يوفر لك هذا عنوان IP وقناع الشبكة لخادمك:

inet 10.10.10.10 netmask 0xffffff00 broadcast 10.10.10.255

يحب FreeBSD استخدام الست عرافة لقناع الشبكة. يتحول ما سبق إلى 255.255.255.0ما إذا كنت فضوليًا. يمكنك العثور على جدول مفيد هنا ، ولكن لا تخف: يمكنك فقط نسخ العنوان السداسي في ملفات التكوين الخاصة بك (أو تحويله إلى عشري إذا كنت تفضل ذلك).

يمكنك العثور على البوابة بعدد من الطرق. هنا واحد:

route get default | grep gateway سيعيد شيئًا على غرار:

gateway: 10.10.10.1

تعديل /etc/rc.confبقيم جديدة

مسلحًا بـ IP وقناع الشبكة والبوابة ، حان الوقت الآن لإضافتهم إلى تكوين النظام. أنا أوصي بشدة النسخ الاحتياطي هذا الملف قبل إجراء أية تغييرات، كما أنه سيجعل من الاسهل بكثير ان التراجع يجب عليك خبط. الآن ، افتح /etc/rc.confفي محرر اختيارك ، وقم بإجراء التغييرات التالية:

# Comment out this line:
# ifconfig_vtnet0="dhcp"

# Add these lines:
defaultrouter="10.10.10.1"
ifconfig_vtnet0="inet 10.10.10.10 netmask 0xffffff00"

من الواضح ، يجب أن تكون متأكدًا من استبدال IP الفعلي الخاص بك ، وقناع الشبكة ، والبوابة الخاصة بي مزيفة واضحة.

إعادة التشغيل والاختبار

أعد تشغيل خادمك shutdown -r nowوتأكد من أنه يعمل بشكل صحيح. قم بإجراء أي اختبارات تراها ضرورية لضمان عمل كل شيء بشكل صحيح. إذا كانت الشبكة غير قابلة للوصول ، فقم بتسجيل الدخول عبر وحدة التحكم وعكس التغييرات. إذا كان كل شيء على ما يرام ، في هذه المرحلة ، يمكنك وضع كل ما تريده resolv.confدون خوف من طمسه.

إذا لم تتمكن من إعادة التشغيل لأي سبب من الأسباب ، فيجب أن يعمل هذا ، ولكنني سأفعل حقًا إعادة تشغيل مناسبة إذا كنت مكانك:

service netif restart && service routing restart

الطريقة الثانية: جعلها resolv.confثابتة

هذا نوع من الاختراق ، لكنه بسهولة الحل الأسرع. لا أوصي بذلك لأنني لا أستطيع ضمان أن هذا لن يسبب بعض الغرابة في المستقبل عند الترقية إلى إصدار جديد من نظام التشغيل ، ومن المرجح أن يشكو dhclient حفنة. ومع ذلك ، فإن الأمر البسيط chflags schg /etc/resolv.confهو كل ما يلزم. الملف محمي ضد الكتابة بالكامل حتى من الجذر. يمكنك التحقق مثل ذلك:

vultr [~]# chflags schg /etc/resolv.conf
vultr [~]# ls -ol /etc/resolv.conf
-rw-r--r--  1 root  wheel  schg 50 Nov 29 06:28 /etc/resolv.conf
vultr [~]# echo "so very untouchable" >> /etc/resolv.conf
/etc/resolv.conf: Operation not permitted.

التراجع عن: chflags noschg /etc/resolv.conf

الطريقة الثالثة: اطلب من FreeBSD بأدب ترك إعداداتك بمفردها

هذه هي الطريقة الأنظف والأنسب لإنجاز ذلك. هناك طريقتان يمكنك اتباعهما:

تهيئة dhclient

لنأخذ المثال من أعلى لأعلى ، ونقول كل ما تريد القيام به هو وضع خادم الأسماء المخصص الخاص بك resolv.confولا تريد أن تفقده في كل مرة يقوم فيها DHCP بعمله. في حالتي ، أريد استخدام محلل التخزين المؤقت الذي قمت بتثبيته والذي يستمع إلى المضيف المحلي ، لذلك أقوم بالتحرير /etc/dhclient.conf(والذي سيكون فارغًا على الأرجح بعيدًا عن التعليقات) وأضيف ما يلي:

interface "vtnet0" {
    supersede domain-name-servers 127.0.0.1;
}

سيسمح هذا لـ dhclient بالقيام بكل شيء آخر تحتاج إليه للقيام به ، ولكن عندما يرسله خادم DHCP قائمة بخوادم الأسماء لاستخدامها ، فإن خادمك سيحل محل (كما هو الحال ، يستبدل تمامًا) تلك التي يقدمها. إذا كنت تفضل تكملة (بدلاً من استبدال) تلك المعروضة ، يمكنك "إلحاق" أو "قبل" بدلاً من "استبدال" ، حسب الاقتضاء.

بالمناسبة ، إذا كنت تحتاج إلى أكثر من خادم مخصص ، حددها على النحو التالي:

supersede domain-name-servers 127.0.0.1, 127.0.0.2;

بعد إجراء التغييرات ، أعِد تشغيلها dhclientلتصبح سارية المفعول فورًا:

service dhclient restart vtnet0

قم بفحص اسمك وستجده /etc/resolv.confالآن به خادم (خوادم) الأسماء المخصصة.

حتى كتابة هذه السطور ، فإن خوادم الأسماء هي الشيء الوحيد الذي وضعه خادم DHCP في Vultr في بلدي resolv.conf، والشيء الوحيد الذي كنت أهتم بتخصيصه . ومع ذلك ، إذا احتجت في أي وقت إلى تجاوز أي إعدادات أخرى ، فراجع الدليل الممتاز للحصول على قائمة شاملة:

man 5 dhclient.conf

هناك أمثلة رائعة في الأسفل يجب أن تمنحك فكرة عما يمكنك القيام به. من أعلى رأسي ، يمكنني أن أتخيل أنك قد ترغب في إضافة شيء مثل supersede domain-name "example.com";إذا كان لديك عادةً خط مثل هذا في الخاص بك resolv.conf. مرة أخرى ، استشر المستندات.

تهيئة resolvconf

هذا هو أبسط حل إذا كنت تريد فقط resolv.confأن تترك وحدك. حسب الدليل:

resolvconf manages resolv.conf(5) files from multiple sources, such as DHCP and VPN clients

تكمن إعداداته في /etc/resolvconf.conf، والتي من المحتمل أن تكون غير موجودة على نظامك ، لذلك لا تتردد في إنشائه. لجعل حياتك resolv.confثابتة ، أضف هذا:

# prevent all updates to resolv.conf:
resolv_conf="/dev/null"

إذا كنت تستخدم unboundمحلل التخزين المؤقت المحلي ، فهذا هو الخط الذي تضيفه (مع عدد قليل لنفسه). وهذا ما خداع أساسا resolvconfفي التفكير بك /etc/resolv.confيقع في /dev/null. شيء أقل بقليل ، ولكنه فعال بنفس القدر ، سيكون:

# disable resolvconf from running any subscribers:
resolvconf="NO"

إذا كنت تريد أن تفعل شيئا أكثر تعقيدا من مجرد إيقاف تشغيله، والصفحات رجل ل resolvconfو resolvconf.confلديها الكثير من المعلومات.



Leave a Comment

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

نظرة ثاقبة على 26 أسلوبًا لتحليل البيانات الضخمة: الجزء الأول

6 أشياء شديدة الجنون حول نينتندو سويتش

6 أشياء شديدة الجنون حول نينتندو سويتش

يعرف الكثير منكم أن Switch سيصدر في مارس 2017 وميزاته الجديدة. بالنسبة لأولئك الذين لا يعرفون ، قمنا بإعداد قائمة بالميزات التي تجعل "التبديل" "أداة لا غنى عنها".

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

وعود التكنولوجيا التي لم يتم الوفاء بها بعد

هل تنتظر عمالقة التكنولوجيا للوفاء بوعودهم؟ تحقق من ما تبقى دون تسليم.

وظائف طبقات معمارية مرجعية للبيانات الضخمة

وظائف طبقات معمارية مرجعية للبيانات الضخمة

اقرأ المدونة لمعرفة الطبقات المختلفة في بنية البيانات الضخمة ووظائفها بأبسط طريقة.

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

كيف يمكن للذكاء الاصطناعي نقل أتمتة العمليات إلى المستوى التالي؟

اقرأ هذا لمعرفة مدى انتشار الذكاء الاصطناعي بين الشركات الصغيرة وكيف أنه يزيد من احتمالات نموها ومنح منافسيها القدرة على التفوق.

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

CAPTCHA: ما هي المدة التي يمكن أن تظل تقنية قابلة للتطبيق للتميز بين الإنسان والذكاء الاصطناعي؟

لقد أصبح حل CAPTCHA صعبًا جدًا على المستخدمين في السنوات القليلة الماضية. هل ستكون قادرة على أن تظل فعالة في اكتشاف البريد العشوائي والروبوتات في المستقبل القريب؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

التفرد التكنولوجي: مستقبل بعيد للحضارة الإنسانية؟

مع تطور العلم بمعدل سريع ، واستلام الكثير من جهودنا ، تزداد أيضًا مخاطر تعريض أنفسنا إلى تفرد غير قابل للتفسير. اقرأ ، ماذا يمكن أن يعني التفرد بالنسبة لنا.

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

التطبيب عن بعد والرعاية الصحية عن بعد: المستقبل هنا

ما هو التطبيب عن بعد والرعاية الصحية عن بعد وأثره على الأجيال القادمة؟ هل هو مكان جيد أم لا في حالة الوباء؟ اقرأ المدونة لتجد طريقة عرض!

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

هل تساءلت يومًا كيف يربح المتسللون الأموال؟

ربما سمعت أن المتسللين يكسبون الكثير من المال ، لكن هل تساءلت يومًا كيف يجنون هذا النوع من المال؟ دعنا نناقش.

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

يتسبب التحديث الإضافي لنظام macOS Catalina 10.15.4 في حدوث مشكلات أكثر من حلها

أصدرت Apple مؤخرًا macOS Catalina 10.15.4 تحديثًا تكميليًا لإصلاح المشكلات ولكن يبدو أن التحديث يتسبب في المزيد من المشكلات التي تؤدي إلى إنشاء أجهزة macOS. قراءة هذه المادة لمعرفة المزيد