جدول المحتويات:

جدار حماية Raspberry Pi4: 12 خطوة
جدار حماية Raspberry Pi4: 12 خطوة

فيديو: جدار حماية Raspberry Pi4: 12 خطوة

فيديو: جدار حماية Raspberry Pi4: 12 خطوة
فيديو: Raspberry Pi 5 IPTables Setup: Easy Step-by-Step Security Guide 2024, يونيو
Anonim
جدار حماية Raspberry Pi4
جدار حماية Raspberry Pi4

مع إصدار Raspbery Pi 4 الجديد (RPi4) للتو ، قررت أن أجعل من نفسي جدار حماية للاستخدام المنزلي. بعد التعثر على الإنترنت ، وجدت مقالًا رائعًا حول هذا الموضوع بقلم Guillaume Kaddouch (https://networkfilter.blogspot.com/2012/08/building-your-piwall-gateway-firewall.html). المقالة رائعة ، ويجب عليك قراءتها قبل المضي قدمًا - فهي ستجعل العملية الموضحة هنا أسهل. الشيء هو أن هذا المقال كتب في عام 2012 ويستند إلى توزيعة ArchLinux. لا شيء ضد ArchLinux ، لكنني أردت القيام بذلك باستخدام بنية Raspbian الأكثر شيوعًا. يمكن لـ RPi4 التعامل مع متطلبات المعالجة. لذا ، شكراً لك غيوم على الإلهام !! ستشير هذه التعليمات مرة أخرى إلى المنشور الأصلي لـ Guillaume ("GK" للاختصار) ، ومن المحتمل أن ترغب في فتح كلتا الصفحتين في متصفحك.

زوجان من الأشياء الرئيسية حول جدار الحماية الخاص بي:

  • لدي مقبس إيثرنت مدمج (eth0) يذهب إلى الشبكة المحلية
  • موجه ISP موجود على محول TRENDnet (eth1)
  • لقد قمت بتعطيل المحول اللاسلكي (wlan0) بشكل نشط
  • هذا ليس مضمونًا للحصول على 100٪ هناك … نأمل 99٪ على الأقل:) لذا يرجى تقديم ملاحظات / تعليقات
  • هذا هو أول تدريب لي. آسف على أي شيء لا يتبع المعايير المناسبة.

الآن ، لنستمتع ببعض المرح …

اللوازم

  • رازبيري باي 4

    • لقد استخدمت الإصدار 4 غيغابايت ، فلا تتردد في تجربة إصدار مختلف
    • حالة (أحب FLIRC ، لكن هذه هي مكالمتك)
    • محول الطاقة
  • بطاقة MicroSD بسعة 32 جيجابايت أو أكثر (استخدمت بطاقة 64 جيجابايت)
  • دونجل TRENDnet USB3.0 جيجابت إيثرنت (الطراز: TU3-ETG)
  • زوجان من كبلات الشبكة RJ45
  • لوحة مفاتيح USB وماوس
  • كبل Micro-HDMI إلى HDMI (يتم توصيله بشاشة HDMI)

يمكن إزالة لوحة المفاتيح والفيديو والماوس بمجرد أن تتمكن من تشغيل SSH و VNC.

الخطوة 1: إعداد RPi الأولي

إعداد RPi الأولي
إعداد RPi الأولي

أول شيء عليك فعله هو تشغيل RPi4 كنظام جديد. قم بتنزيل وتثبيت توزيع Raspbian الكامل (Raspbian Buster مع سطح المكتب والبرامج الموصى بها). ستحتاج إلى إعادة التشغيل عدة مرات حتى تتمكن من التوسع والاستفادة من بطاقة MicroSD الكاملة.

أثناء التشغيل ، ستحتاج إلى الإجابة عن أسئلة حول المنطقة المحلية والشبكة ولوحة المفاتيح والماوس. اتصل بشبكة واسمح لها بالتحديث.

لنؤكد أيضًا أن كل شيء تم تحديثه بشكل صحيح ، ونحصل على بعض الأدوات المساعدة التي قد تساعد في تصحيح الأخطاء لاحقًا:

sudo apt-get update

$ sudo apt-get dist-Upgrade $ sudo apt-get install htop $ sudo apt-get install tcpdump

لم أقم بتثبيت vim ، ولم أقم بأي خطوة من خطوات GK 8 (تكوين vim). لقد استخدمت للتو محرر vi لأنه يحتوي على معظم هذه الميزات على أي حال. هذا وفر أيضًا بعض الوقت والجهد.

بمجرد اكتمال ذلك ، دعنا نضبط RPi4 حتى نتمكن من توصيل الشاشة أثناء التشغيل. كان هدفي هو جعلها تعمل بلا رأس ، ولكن إذا احتجت إلى توصيل شاشة ، فسيتم التعرف عليها.

sudo vi /boot/config.txt

في هذا الملف:

uncomment (إزالة الرمز # الأمامي): hdmi_force_hotplug = 1

uncomment: hdmi_drive = 2

اختياريًا ، أضف: enable_hdmi_sound

الخطوة 2: التواصل

الشبكات
الشبكات
الشبكات
الشبكات

إذا كنت تتابع على موقع GK ، فهذه هي الخطوة 3. لكن ضع في اعتبارك أنني لم أتبع الكثير من خطواته الأولى بالترتيب الدقيق.

عندما بدأت هذا لأول مرة ، قمت بتوصيل RPi مباشرة بجهاز توجيه مزود خدمة الإنترنت ("بجوار شبكتي الحالية"). سمح لي هذا باللعب مع التكوين دون التأثير على الشبكة. قم بتوصيل RJ45 المدمج في RPi4 بجهاز التوجيه الخاص بك (أو لاسلكيًا ، إذا كنت تريد). مع Raspbian ، أسهل طريقة للقيام بذلك هي استخدام واجهة المستخدم الرسومية. من سطح المكتب ، انقر فوق رمز Raspberry> تفضيلات> تكوين Raspberry Pi. تأكد من تمكين SSH و VNC. سيؤدي هذا إلى تثبيت عميل خادم Real-VNC. لقد وجدت أنه إذا حاولت الاتصال بعميل Tight VNC ، فسيؤدي ذلك إلى حدوث نوبات وسيتطلب بعض التهيئة الإضافية. لذلك ، في هذه المرحلة ، قم بتثبيت عميل Real-VNC على سطح المكتب / الكمبيوتر المحمول الأساسي (وليس RPi4 الخاص بك).

لن يعمل SSH خارج الصندوق (خطوة GK 7). نحن بحاجة إلى تعديل بعض التكوينات. أولاً ، يتيح تعديل ملف التكوين ssh. هذه هي التغييرات التي قمت بها. ضع في اعتبارك أنني لم أدرس تأثير كل تغيير هنا. فعلت ما اقترحه موقع GK. قد لا تكون بعض هذه التغييرات مطلوبة.

sudo $ السادس / etc / ssh / sshd_config

في هذا الملف ، قم بإلغاء التعليق على الأسطر التالية:

HostKey / etc / ssh / ssh_host_rsa_keyHostKey / etc / ssh / ssh_host_ecdsa_keySyslogFacility AUTHLogLevel INFOStrictModes yesPubkeyAuthentication yesHostBasedAuthentication no

تجاهل Rhosts نعم

PrintMotd noPrintLastLog yes نعم

وأضف الأسطر التالية:

البروتوكول 2 استخدام الامتياز الفصل نعم تجديد المفتاح الفاصل 3600 بت مفتاح الخادم 768RSA المصادقة نعم RhostsRSA المصادقة لا

وتعديل الأسطر التالية:

المنفذ 15507 LoginGraceTime 60PermitRootLogin no

دعنا نتحدث بسرعة عن هذا التعديل الأول … المنفذ 15507. يعمل SSH عادةً على المنفذ 22. نقله GK إلى 15507 - لا أعرف السبب. يمكنك إما تعديله أو عدم تعديله … إذا اخترت تعديله ، فستحتاج إلى إضافة "-p 15507" إلى أي أمر SSH تحاول الاتصال به. إذا قررت تخطيه ، فابحث عن الأماكن الأخرى التي تم ذكر الرقم 15507 في هذه التعليمات وتجاهلها ، وخاصة قواعد جدار الحماية!

أخيرًا في هذه الخطوة ، دعنا نحصل على عنوان IP الخاص بـ RPi4 حتى نعرف ما يجب الاتصال به:

$ ipconfig -a

ابحث عن اتصال الشبكة النشط (على الأرجح على eth0 أو wlan0) واكتب عنوان IP هذا. الآن لديك ما تحتاجه للاتصال عن بعد بـ RPi4. دعنا نعيد التشغيل قبل أن نكمل:

sudo إعادة التشغيل

الخطوة الثالثة: مستخدم آخر

مستخدم آخر
مستخدم آخر

من الأفضل عدم استخدام اسم مستخدم RPi الافتراضي (pi) ، ويجب عليك بالتأكيد تغيير كلمة المرور. لتكون آمنًا ، دعنا نضيف حساب مستخدم آخر يمكنك استخدامه للاتصال عن بُعد والمتابعة (الخطوة 6 من GK). مرة أخرى على RPi ، يتيح إضافة مستخدم جديد وتعيين أذونات للمستخدم إلى SSH وإصدار الأمر sudo:

$ sudo useradd -m -g users -G sudo، netdev -s / bin / bash [USERNAME]

$ sudo passwd [USERNAME]

لا تتردد في تسجيل الخروج أو إعادة التشغيل واستخدام هذا الحساب الذي تم إنشاؤه حديثًا من الآن فصاعدًا.

الخطوة 4: ملف Syctl

ملف Syctl
ملف Syctl

الخطوة التالية هي تعديل ملف /etc/sysctl.conf (الخطوة 9 لـ GK). يستخدم هذا الملف لتغيير بعض إعدادات kernel. سنفعل بالضبط ما يقول GK القيام به. هذه مجموعة مبسطة من الخطوات.

sudo vi /etc/sysctl.conf

في هذا الملف ، قم بإلغاء التعليق على الأسطر التالية:

net.ipv4.conf.default.rp_filter = 1net.ipv4.conf.all.rp_filter = 1net.ipv4.tcp_syncookies = 1

net.ipv4.ip_forward = 1

net.ipv4.conf.all.accept_redirects = 0net.ipv4.conf.all.send_redirects = 0net.ipv4.conf.all.accept_source_route = 0net.ipv4.conf.all.log_martians = 1

وأضف الأسطر التالية:

net.ipv4.icmp_echo_ignore_broadcasts = 1net.ipv4.icmp_ignore_bogus_error_responses = 1net.ipv4.conf.eth0.accept_redirects = 0vm.min_free_kbytes = 8192

أعد تشغيل الخدمة بهذه الإعدادات الجديدة وأعد التشغيل:

sudo sysctl -p

sudo إعادة التشغيل

الخطوة 5: DHCP و DNS (الجزء 1)

DHCP و DNS (الجزء 1)
DHCP و DNS (الجزء 1)

بالنسبة لي ، كان هناك جزءان مؤلمان لهذه العملية … إعداد DHCP و DNS ، وإعداد قواعد جدار الحماية. إذن ، ها نحن نذهب مع الجزء الأول. إذا كنت تتابع على موقع GK ، فنحن في الخطوة 10.

للقيام بذلك ، ستحتاج إلى بعض المعلومات من موجه ISP (أو جدار الحماية الحالي):

  • عنوان IP الداخلي لجهاز التوجيه
  • عنوان IP يمكنك استخدامه لواجهة RPi4 لجهاز التوجيه
  • عناوين IP لخادم الأسماء (أو اثنين)
  • اسم الواجهة لاتصال LAN (على سبيل المثال ، eth0 أو eth1)
  • اسم الواجهة لاتصال ISP (على سبيل المثال ، كل ما لم تستخدمه للشبكة المحلية)

قد تحتاج أيضًا إلى تعديل إعدادات جهاز التوجيه لمنح RPi4 عنوان IP ثابتًا (الرمز النقطي 2 أعلاه). على الأقل ، هذا ما فعلته.

أولاً ، لنعدّل ملف dhcpcd.conf …

sudo vi /etc/dhcpcd.conf

قم بإلغاء التعليق على هذه السطور:

الخيار الدائم fast_commitoption domain_name_servers ، domain_name ، domain_search ، host_nameoption interface_mtu

لكل واجهة شبكة ، تحتاج إلى تعيين تفاصيل الشبكة. يجب أن تبدو مثل هذا:

# ثابت للواجهة لمزود خدمة الإنترنت

الواجهة eth1 static ip_address = 192.168.1.static router = 192.168.1.254 static domain_name_servers = 8.8.8.8 8.8.4.4 metric 100 # Static للواجهة إلى واجهة LAN eth0 static ip_address = 10.210.212.static router = 10.210.212.1 ثابت domain_name_servers = 8.8.8.8 8.8.4.4 #interface wlan0 #static ip_address = 10.210.212. # الموجهات الثابتة = 10.210.212.1 #static domain_name_servers = 8.8.8.8 #Uncomment هذا القسم إذا كنت تريد فرض عنوان IP على الجهاز. الاسم بعد "المضيف" # لا معنى له بالنسبة للنظام. أدخل عنوان MAC للجهاز بالإضافة إلى عنوان IP المطلوب. تأكد من أنه خارج نطاق dhcp. كرر حسب الضرورة. #host [أي شيء] {# Hardware ethernet xx: xx: xx: xx: xx: xx؛ # العنوان الثابت 10.210.212.250 ؛ #}

تأكد من استخدام الأرقام التي تناسبك. عناوين IP المذكورة أعلاه خاصة بشبكتي ، باستثناء خوادم الأسماء من Google. لاحظ أنني قمت أيضًا بتعيين مقياس ISP على 100 لفرض ذلك ليكون المحاولة الأولى الافتراضية لحركة مرور الشبكة. كما أنني لم أفعل شيئًا على وجه التحديد مع المحول اللاسلكي (wlan0). أعتزم إيقاف تشغيل تلك الواجهة تمامًا ، لذلك كان ذلك منطقيًا بالنسبة لي.

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

الخطوة 6: DHCP و DNS (الجزء 2)

DHCP و DNS (الجزء 2)
DHCP و DNS (الجزء 2)

الخطوة التالية هي تعديل ملف dnsmasq.conf …

sudo vi /etc/dnsmasq.conf

نحتاج إلى إلغاء تعليق بضعة سطور وتعديل بضعة أسطر. ستحتاج أيضًا إلى نسخ بعض الإعدادات من ملف dhcpcd.conf. سؤالان آخران تحتاج إلى إجابتهما بنفسك هما:

هل تحتاج شبكة LAN الداخلية (على سبيل المثال ، eth0) إلى DHCP و DNS؟ ما هو نطاق DHCP الذي تريده لشبكة LAN الخاصة بك ، وكم من الوقت يجب أن يكون كل عقد إيجار؟

ابدأ بإلغاء التعليق على بضعة أسطر:

bogus-privno-dhcp-interface = wlan0bind-interfacesdhcp-name-match = set: wpad-ignore، wpaddhcp-ignore-names = tag: wpad-ignore

قم بتعيين خادم الاسم الخاص بك. ابحث عن السطر الذي يبدأ "server =" واجعله شيئًا مثل "server = 8.8.8.8".

اضبط نطاق DHCP الخاص بك. هناك الكثير من الطرق للقيام بذلك. اخترت تقديم عنواني IP لنقطة النهاية ، والقناع ، وطول عقد الإيجار. كان النطاق الخاص بي 10.210.212.20-10.210.212.240 ، مع قناع شبكة 255.255.255.0 ، ووقت تأجير يبلغ 12 ساعة. أوصي بترك بعض عناوين IP في الجزء العلوي والسفلي من النطاق الخاص بك في حالة احتياجك في أي وقت إلى إعطاء عنوان IP ثابت.

اضبط الواجهة التي ستحصل على DNS و DHCP (الشبكة المحلية) عن طريق تعديل السطر 'interface =' ليكون شيئًا مثل 'interface = eth0). لاحظ أنني أخبرته على وجه التحديد بعدم تعيين عنوان IP لبروتوكول DHCP لشبكتي اللاسلكية. مرة أخرى ، أعتزم إيقاف تشغيل تلك الواجهة تمامًا ، لذلك كان ذلك منطقيًا بالنسبة لي.

الخطوة 7: DHCP و DNS (الجزء 3)

DHCP و DNS (الجزء 3)
DHCP و DNS (الجزء 3)

تحويل عن تعليمات GK لهذه الخطوة الأخيرة …

عندما ذهبت لإعادة تشغيل RPi الخاص بي في هذه المرحلة ، لم تكن عملية dnsmasq نشطة. بعد قليل من البحث ووجدت أن واجهات شبكتي eth0 و eth1 لم تكن نشطة قبل بدء تشغيل dnsmasq ، لذلك سيفشل dnsmasq عند البدء. سأضطر إلى توصيل لوحة المفاتيح والماوس بـ RPi وإعادة تشغيل dnsmasq يدويًا. هذا ليس مثاليا مع الإعداد مقطوعة الرأس. لقد قرأت مجموعة من المنشورات التي قالت لإجراء تغييرات مختلفة على الإعدادات (على سبيل المثال ، تعطيل واجهة الربط) وأشياء أخرى. لا شيء من ذلك يعمل. في النهاية ، قررت ببساطة كتابة نص برمجي شل يعمل كل دقيقتين والتحقق من حالة dnsmasq. إذا لم يكن قيد التشغيل ، ابدأ تشغيله. أفترض أن هذا الوضع ليس فريدًا بالنسبة لي. إذن ، هذا ما عليك القيام به:

قم بتحويل الكود التالي إلى ملف يسمى "dns_masq_keepalive.sh" على RPi الخاص بك.

#! / بن / باش

# File: dns_masq_keepalive.sh # August 2019 # استخدم هذا مع crontab -e (* / 2 * * * * /etc/dns_masq_keepalive.sh) للتأكد من تشغيل dnsmasq. ستتوقف الخدمة من تلقاء نفسها إذا لم يتم تشغيل # جميع الواجهات المذكورة في dhcpcd.conf قبل أن تبدأ. هذا يحل المشكلة. # سيعيد السطر التالي جميع الوظائف النشطة مع وجود كلمة "dnsmasq" فيها. لذلك ، لا تقم بتضمين "dnsmasq" في اسم هذا الملف # ، وإلا فإنه سيعيده في كل مرة ولن تتم إعادة تشغيله. dns_running = $ (ps -e | grep dnsmasq) صدى $ dns_running إذا [-z "$ dns_running"] ثم #echo No DNSMasq sudo /etc/init.d/dnsmasq أعد تشغيل #else #echo DNSMasq قيد التشغيل fi

قم بقصها ولصقها إذا كنت بحاجة إلى ذلك. مهما فعلت ، لا تقم بتضمين "dnsmasq" في الاسم. يبحث البرنامج النصي عن كلمة "dnsmasq" وإذا كان اسم البرنامج النصي هو الاسم ، فسيفترض أن الخدمة قيد التشغيل. أيضًا ، أعد تسمية الملف بحيث ينتهي بـ ".sh". لن تسمح لي المقتطفات بتحميل ملف ".sh" - وهو أمر جيد. تفترض التعليمات المتبقية أن الملف موجود في: /etc/dns_masq_keepalive.sh.

ثانيًا ، قم بتعيين الأذونات على الملف حتى يمكن تنفيذه:

sudo chmod u + x /etc/dns_masq_keepalive.sh

الآن سوف نستخدم نظام crontab لجعل البرنامج يعمل كل دقيقتين من كل يوم. ابدأ crontab:

$ sudo crontab -e

يجب أن يطالبك بالتحرير باستخدام vi أو أي شيء آخر. أي سيعمل. بمجرد أن تتمكن من تحريره ، أضف ما يلي إلى نهاية الملف:

* / 2 * * * * sudo /etc/dns_masq_keepalive.sh

لا توجد مسافات في "* / 2" ، ولكن توجد مسافات بين العلامات النجمية. احفظ واخرج. يجب أن يخبرك أن الوظيفة تمت جدولتها ، أو شيء من هذا القبيل.

الخطوة 8: جدار الحماية

جدار الحماية
جدار الحماية

العملية المؤلمة التالية هي جدار الحماية (خطوة GK 11). يستخدم Raspbian نظام iptables المعروف. توفر مدونة GK ثلاثة ملفات لمساعدتك في الوصول إلى هناك … firewall.simple و firewall.advanced و firewall.flows. كل الاحترام لـ GK ، ولكن اجعل الأمر سهلاً على نفسك واستخدم جدار الحماية. قضيت الكثير من الوقت في محاولة اكتشاف نظام وقواعد iptables. أنا سعيد لأنني فعلت ذلك ، لكنه كان مؤلمًا. لذا ، أعطيك الملفين المرفقين لمساعدتك … firewall.simple و firewall.clear. انسخ كلا هذين الملفين إلى المجلد / etc الخاص بك وقم بتغيير الأذونات لجعلها قابلة للتنفيذ:

sudo chmod u + x /etc/firewall.simple

sudo chmod u + x /etc/firewall.clear

قبل إعداد أي قواعد لجدار الحماية ، قم بتوصيل سطح مكتب / كمبيوتر محمول بمنفذ RPi eth0 وتأكد من حصوله على عنوان IP وتشغيل DNS. أسهل طريقة للقيام بذلك هي محاولة تنفيذ الأمر ping على موقع عام ثم عنوان IP معروف. قم أيضًا باختبار اتصال جهاز التوجيه RPi و ISP. إذا حصلت على نتائج ، فكل شيء جيد وأي مشاكل في الشبكة تواجهها الآن من المحتمل أن تكون نتيجة لمشكلات جدار الحماية.

بدأ الملف الأول المقدم في الأصل كملف firewall.simple الخاص بـ GK (شكرًا ، مرة أخرى ، GK!). لقد أجريت مجموعة من التغييرات لجعلها تعمل مع هذا النظام. يجب أن يسمح بـ HTTP و HTTPS و DNS و DHCP و ping و SSH الداخلي و VNC الداخلي و plex على الأقل. قد لا يحتوي Plex على جميع المنافذ المفتوحة لكل جهاز ممكن ، ولكن هناك مجموعة من المنشورات لإصلاح ذلك. توجد في الجزء العلوي من الملف القيم التي ستحتاج إلى تغييرها في تكوين الشبكة.

الملف الثاني ، firewall.clear ، مخصص للاستخدام أثناء اختبار قواعد جدار الحماية الخاص بك. عند تشغيل "sudo /etc/firewall.clear" ، سيتم مسح جميع قواعد جدار الحماية ويجب أن يكون النظام متصلاً بالإنترنت بشكل كامل. لذلك ، إذا لم تكن قادرًا على إنشاء خدمة شبكة (مثل نظام أسماء النطاقات) تعمل مع جدار الحماية ، توجد قواعد بسيطة ، لكنها تبدأ في العمل بعد تشغيل جدار الحماية ، من الواضح أنك تعلم أن لديك مشكلة في القاعدة. سيكون هذا حقًا مهمًا فقط عند اختبار القواعد الخاصة بك.

لذلك ، لدينا قواعد جدار الحماية هناك ، وعلينا أن نجعلها تبدأ عندما يبدأ RPi. للقيام بذلك ، سنقوم بتحرير الملف /etc/rc.local:

sudo vi /etc/rc.local

بمجرد الدخول ، أضف ما يلي إلى نهاية الملف:

صدى "تحميل قواعد iptables" /etc/firewall.simple >> / dev / null

إذا اخترت إضافة نظام الكشف عن التطفل ، فستحتاج إلى تعديل هذا الملف مرة أخرى. في الوقت الحالي فقط احفظه وأعد التشغيل.

sudo إعادة التشغيل

الخطوة 9: سجل النظام

سجل النظام
سجل النظام

بقيت خطوتان …

هذا سهل إذا كنت لا تزال هناك ، وتتبع مدونة GK ، فهذه هي الخطوة 12. عليك أن تفعل بالضبط ما يقوله فيما يتعلق بملف سجل النظام. فيما يلي الخطوات المختصرة:

احتفظ ببيانات سجل النظام لمدة شهرين …

sudo vi /etc/logrotate.conf

نحتاج إلى إخباره باستخدام "أسبوع واحد" كمقياس ، ثم الاحتفاظ بـ 12 منهم. أنت بحاجة إلى السطرين التاليين في هذا الملف. أعتقد أنك ستحتاج إلى تغيير الخطوط الحالية.

التدوير الأسبوعي 12

احفظها.

الخطوة العاشرة: كشف التسلل باستخدام Snort

كشف التسلل مع الشخير
كشف التسلل مع الشخير

آخر شيء يقوم GK بتكوينه هو نظام snort. أوصي بهذا أيضًا. يمكنك اتباع قواعده ، ولن أقوم بنسخها جميعًا هنا ، مع بعض التعديلات الطفيفة. تعليماته هي توزيعات ArchLinux. فيما يلي التغييرات القليلة لتوزيع Raspbian الذي نستخدمه هنا. بقية التعليمات تعمل بشكل جيد.

أولاً ، لا تستخدم sudo pacman -S snort لتنزيل snort وتثبيته. قم بما يلي:

sudo apt-get install snort

ثانيًا ، لا يمكنك التحقق من snort باستخدام sudo snort -version. تحقق من التثبيت باستخدام:

sudo snort -V

أخيرًا ، لتشغيله عند بدء التشغيل ، لا تقم بتعديل ملف rc.conf ، وقم بتحرير ملف rc.local (مرة أخرى) …

sudo vi /etc/rc.local

أضف الأسطر التالية إلى نهاية الملف:

صدى "تحميل snort"

# / usr / sbin / snort -D -u snort -g snort -c /etc/snort/snort.conf -i eth0 -l / var / log / snort

الآن ، أعد التشغيل ويجب أن يعمل كل شيء بطريقة سحرية.

sudo إعادة التشغيل

الخطوة 11: استمتع

يتمتع
يتمتع

يجب أن يكون ذلك!

بادئ ذي بدء ، لا أستطيع أن أشكر غيوم قدوش بما فيه الكفاية! لقد ألهم هذا.

ثانيًا ، إذا لم تقم بالفعل بفصل لوحة المفاتيح والفيديو والماوس ، يمكنك ذلك. استخدم SSH و VNC للعودة ، عند الحاجة.

في النهاية ، قد لا يكون هذا مثاليًا بنسبة 100٪. يرجى إعادة النشر مع التغييرات / الاقتراحات / التوصيات. هدفي هو أن يكون هذا بداية المناقشة ويستمتع الكثير من الناس!

شكرا!!

PS… الصورة عبارة عن RPi4 داخل علبة ألومنيوم FLIRC مع مروحة Intel قديمة معدلة قليلاً ومربوطة بسحاب إلى الأعلى. يوجد أيضًا معجون حراري أسفل المروحة ، فقط في حال كنت تتساءل. لقد وجدت شيئًا مشابهًا على الإنترنت (https://www.reddit.com/r/raspberry_pi/comments/9bdgrr/it_turns_out_putting_a_heatsink_on_the_flirc_case/) وقررت تجربته بنفسي.

الخطوة 12: سجل التغيير

أثناء إجراء التغييرات على هذا التوجيه ، سأوثقها هنا.في حالة وجود مشكلة ، تحقق هنا لمعرفة ما إذا كنت قد حصلت على تعليمات أو ملفات قديمة.

25 سبتمبر 2019:

  • قواعد DHCP الثابتة في جدار الحماية
  • نطاق DHCP ثابت في التعليمات (كانت الملفات صحيحة)
  • تمت إضافة تعيينات IP الثابتة إلى إرشادات DHCP

13 أكتوبر 2019

  • إصلاح العديد من الأخطاء المطبعية
  • قمت بإنشاء pi ثانٍ لذلك سيكون لديّ اختبار SDcard للمبادلة ، إذا لزم الأمر

موصى به: