استكشاف مشكلات الشبكة في Linux وإصلاحها

استكشاف مشكلات الشبكة في Linux وإصلاحها

في هذه المقالة ، سنشرح كيفية استكشاف مشكلات الشبكة وإصلاحها في Linux باستخدام الأمر tcpdump.

tcpdump هو محلل حزم سطر أوامر مرن وقوي ؛ و libpcap ، مكتبة C / C ++ محمولة لالتقاط حركة مرور الشبكة. أداة قوية ومتعددة الاستخدامات تتضمن العديد من الخيارات والفلاتر ، يمكن استخدام tcpdump في مجموعة متنوعة من الحالات. نظرًا لأنها أداة سطر أوامر ، فهي مثالية للتشغيل في الخوادم أو الأجهزة البعيدة التي لا تتوفر لها واجهة المستخدم الرسومية ، لجمع البيانات التي يمكن تحليلها لاحقًا. يمكن أيضًا تشغيله في الخلفية أو كوظيفة مجدولة باستخدام أدوات مثل cron.

لنبدأ في عملية التثبيت.

1. قم بتثبيت برنامج tcpdump

إذا لم يكن tcpdump مثبتًا بالفعل على نظامك ، فيمكنك تثبيته باستخدام الأمر التالي:

لنظام CentOS أو Red Hat Enterprise Linux:

# dnf install tcpdump -y

بالنسبة للنظام القائم على Ubuntu:

# apt-get install tcpdump -y

2. تحقق من التثبيت

للتحقق من التثبيت ، استخدم الأمر التالي:

# which tcpdump

انتاج:

/usr/sbin/tcpdump

التقاط الحزم باستخدام tcpdump

قبل التقاط الحزم ، تحقق من واجهة الشبكة باستخدام الأوامر التالية:

# tcpdump -D

سيعرض جميع واجهات الشبكة المتاحة.

الآن ، لنبدأ في التقاط بعض الحزم باستخدام الأوامر التالية:

# tcpdump --interface any

يستمر Tcpdump في التقاط الحزم حتى يتلقى إشارة مقاطعة. يمكنك مقاطعة الالتقاط بالضغط على Ctrl + C. للحد من عدد الحزم التي تم التقاطها وإيقاف tcpdump ، استخدم الخيار -c (للحساب):

# tcpdump -i any -c 10

تعطيل تحليل الاسم

استكشاف مشكلات الشبكة وإصلاحها ، غالبًا ما يكون من الأسهل استخدام عناوين IP وأرقام المنافذ ؛ تعطيل تحليل الاسم باستخدام الخيار -n ودقة المنفذ مع -nn:

# tcpdump -i any -c5 -nn

كما هو مذكور أعلاه ، فإن الأمر سوف يلتقط الإخراج الآن يعرض عناوين IP وأرقام المنافذ.

حزم الترشيح

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

لالتقاط حزم ICMP فقط ، استخدم الأوامر التالية:

# tcpdump -i any -c10 icmp

قصر الالتقاط على الحزم المتعلقة بمضيف معين فقط باستخدام مرشح المضيف:

# tcpdump -i any -c5 -nn host 192.168.0.12

سيقوم الأمر أعلاه بالتقاط وعرض الحزم فقط من وإلى المضيف 192.168.0.12.

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

# tcpdump -i any -c10 -nn port 80

لتصفية الحزم بناءً على المصدر أو الوجهة عنوان IP أو اسم المضيف. على سبيل المثال ، لالتقاط الحزم من المضيف 192.168.0.12:

# tcpdump -i any -c10 -nn src 192.168.0.12

حفظ يلتقط في ملف

لحفظ الحزم في ملف بدلاً من عرضها على الشاشة ، استخدم الخيار -w (للكتابة):

# tcpdump -i any -c10 -nn -w webserver.pcap port 80

سيسمح الأمر أعلاه بالتقاط الحزم في وضع الدُفعات بين عشية وضحاها ، على سبيل المثال ، والتحقق من النتائج في الصباح. كما أنه يساعد عندما يكون هناك عدد كبير جدًا من الحزم لتحليلها نظرًا لأن الالتقاط في الوقت الفعلي يمكن أن يحدث بسرعة كبيرة.

المزيد من الأمثلة على الأوامر

لطباعة حزم البداية والنهاية (حزم SYN و FIN) لكل محادثة TCP تتضمن مضيفًا غير محلي.

# tcpdump 'tcp[tcpflags] & (tcp-syn|tcp-fin) != 0 and not src and dst net localnet'

لطباعة حزم TCP مع العلمين RST و ACK على حد سواء. (على سبيل المثال ، حدد فقط علامتي RST و ACK في حقل الأعلام ، وإذا كانت النتيجة "RST و ACK كلاهما مجموعة" ، تطابق)

# tcpdump 'tcp[tcpflags] & (tcp-rst|tcp-ack) == (tcp-rst|tcp-ack)'

لطباعة جميع حزم IPv4 HTTP من وإلى المنفذ 80 ، أي طباعة الحزم التي تحتوي على بيانات فقط ، وليس ، على سبيل المثال ، حزم SYN و FIN وحزم ACK فقط. (يتم ترك IPv6 كتدريب للقارئ.)

# tcpdump 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<2)) -="" ((tcp[12]&0xf0)="">>2)) != 0)'

لطباعة حزم IP التي يزيد طولها عن 576 بايت والتي تم إرسالها عبر بوابة snup:

# tcpdump 'gateway snup and ip[2:2] > 576'

لطباعة بث IP أو حزم البث المتعدد التي لم يتم إرسالها عبر بث Ethernet أو البث المتعدد:

# tcpdump 'ether[0] & 1 = 0 and ip[16] >= 224'

لطباعة جميع حزم ICMP التي ليست طلبات / ردود صدى (على سبيل المثال ، ليست حزم ping):

# tcpdump 'icmp[icmptype] != icmp-echo and icmp[icmptype] != icmp-echoreply'

تحقق من صفحة الدليل باستخدام الأمر التالي:

# man tcpdump

في هذه المقالة ، رأينا كيفية استكشاف مشكلات الشبكة وإصلاحها في Linux باستخدام الأمر tcpump.

احصل على خادم مخصص مزدوج عالي الأداء من سلسلة E5 و KVM VPS رخيص.


كيفية إنشاء مجموعة في Linux

كيفية إنشاء مجموعة في Linux

تُستخدم المجموعات لتنظيم المستخدمين وامتيازاتهم مثل قراءة إذن الكتابة والتنفيذ. لإضافة groud ، يكون الأمر هو groupadd.

3 طرق للتحقق من استخدام وحدة المعالجة المركزية في Linux

3 طرق للتحقق من استخدام وحدة المعالجة المركزية في Linux

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

كيفية تثبيت DenyHosts وتكوينه في CentOS 7

كيفية تثبيت DenyHosts وتكوينه في CentOS 7

يستخدم DenyHosts على نطاق واسع كبديل لـ Fail2ban. إذا كان هناك عدد كبير جدًا من محاولات تسجيل الدخول إلى SSH غير الصالحة ، فإنها تفترض أن هجمات القوة الغاشمة أو

قم بتركيب قرص جديد على خادم Linux

قم بتركيب قرص جديد على خادم Linux

سوف نتعلم كيفية تركيب قرص جديد على خادم Linux. في هذا العرض التوضيحي ، نستخدم خادم السحاب CentOS 7. الآن قم بتثبيت القسم كما هو موضح أدناه.

من السهل تثبيت Fail2ban على Ubuntu 20.04

من السهل تثبيت Fail2ban على Ubuntu 20.04

اشرح جيدًا كيف أنه من السهل تثبيت Fail2ban على Ubuntu 20.04. تمت كتابة Fail2ban بلغة برمجة Python وهو مفتوح المصدر ومجاني. إعدادات.

كيفية تثبيت WireGuard VPN على Ubuntu 20.04

كيفية تثبيت WireGuard VPN على Ubuntu 20.04

اشرح جيدًا كيفية تثبيت WireGuard VPN على Ubuntu 20.04. WireGuard عبارة عن شبكة افتراضية خاصة بسيطة للغاية وسريعة وحديثة تستخدم أحدث تقنيات التشفير

كيفية تثبيت OpenSSL 1.1.1d في CentOS

كيفية تثبيت OpenSSL 1.1.1d في CentOS

OpenSSL عبارة عن مجموعة أدوات قوية من الدرجة التجارية وكاملة الميزات لبروتوكولات أمان طبقة النقل (TLS) و (SSL). تعلم كيفية تثبيت OpenSSL 1.1.1d في CentOS

كيفية تثبيت وتكوين CSF على CentOS 8

كيفية تثبيت وتكوين CSF على CentOS 8

كيفية تثبيت وتهيئة CSF على خادم CentOS 8. إن ConfigServer Security & Firewall عبارة عن جدار حماية (SPI) ، وتطبيق كشف تسجيل الدخول / التطفل والأمان.

لم ينعكس تكوين قاعدة التدقيق - كيفية استكشاف الأخطاء وإصلاحها

لم ينعكس تكوين قاعدة التدقيق - كيفية استكشاف الأخطاء وإصلاحها

تكوين قاعدة التدقيق لا ينعكس؟ تعرف على كيفية قيام مهندسي الدعم لدينا باستكشاف المشكلة وحلها. ملف تكوين القاعدة /etc/audit/rules.d/audit.rules

تحميل CloudLinux عالي على الخادم

تحميل CloudLinux عالي على الخادم

في هذه المقالة سوف نتعرف على كيفية قيام مهندسي الدعم لدينا بإصلاح الحمل العالي لـ CloudLinux على الخادم. يرجى التأكد من تكوين حدود LVE بشكل صحيح.