اختبر المنفذ نفسه
لا تدل الاستجابة إلى ping أو عمل الموقع على حالة SSH، لأن كلّاً منها يستخدم بروتوكولاً أو منفذاً مختلفاً. اختبر منفذ TCP مباشرة من العميل. تعني Connection refused أن جهة ما أجابت لكن لم تقبل أي خدمة الاتصال. أما timeout فيعني عدم وصول أي إجابة، وهو ما يشير عادةً إلى جدار ناري أو مشكلة توجيه أو جهاز مثقل بالحمل.
nc -vz -w 5 server.example 22
ssh -v -o ConnectTimeout=5 user@server.exampleConnection refused: افحص sshd من وحدة التحكم
استخدم وحدة التحكم لدى المزوّد أو برنامج المحاكاة الافتراضية، بدلاً من SSH. تحقق من تشغيل الخدمة، والعنوان والمنفذ اللذين تستمع عليهما، وصحة الإعدادات. في إصدارات Ubuntu الحديثة، يبدأ SSH عبر ssh.socket، لذا افحص وحدة socket أيضاً. قد تُسمّى الخدمة sshd في توزيعات أخرى.
sudo systemctl status ssh.service ssh.socket
sudo ss -lntp | grep -E ':22\b|sshd'
sudo sshd -t
sudo journalctl -u ssh -n 50 --no-pagerTimeout: افحص الجدران النارية
افحص الجدار الناري على الخادم وأي مرشح خارجه، مثل مجموعة أمان سحابية أو الموجّه أو لوحة المزوّد. لمعرفة ما إذا كانت الحزم تصل أصلاً، شغّل tcpdump على الخادم أثناء محاولة الاتصال. إذا لم يظهر شيء، فالحجب يحدث قبل الخادم. وإذا وصلت الحزم ولم تخرج أي استجابة، فابحث عن السبب على الخادم.
sudo ufw status verbose
sudo nft list ruleset | less
sudo tcpdump -ni any tcp port 22حجب بسبب fail2ban أو تغيير المنفذ
بعد محاولات تسجيل دخول فاشلة، قد يكون fail2ban قد حجب عنوانك، فيبدو الأمر كأنه timeout أو رفض اتصال من عنوانك وحده. يكشف الاختبار من شبكة أخرى ذلك بسرعة. تحقق أيضاً مما إذا كان المنفذ قد تغيّر باستخدام Port أو اقتصر الاستماع على عنوان واحد باستخدام ListenAddress في sshd_config أو في ملف ضمن /etc/ssh/sshd_config.d.
sudo fail2ban-client status sshd
sudo sshd -T | grep -E '^(port|listenaddress) 'ينجح الاتصال بالمنفذ لكن تسجيل الدخول يعلق
إذا نجح اتصال TCP ولم تصل رسالة تعريف SSH، فإن sshd يعمل جزئياً فقط أو أن النظام مثقل بالحمل. افحص الذاكرة ومساحة القرص والحمل من وحدة التحكم. قد يمنع امتلاء القرص أو نفاد الذاكرة إنشاء جلسات جديدة بينما تظل الخدمات القائمة تستجيب.
uptime
free -h
df -hالفحص باستخدام CH-J Server Manager
يمكن لـ Server Diagnostics اختبار ping واتصال TCP وسلسلة تعريف SSH دون تسجيل دخول، لكل من IPv4 وIPv6، لتتمكن من معرفة المرحلة التي تفشل. يعمل من حاسوبك فقط. ولا يمكنه الاطلاع على داخل الخادم أو تحديد الجدار الناري الذي أسقط الحزمة، لذا لا تزال بحاجة إلى وحدة التحكم لإجراء الفحوص السابقة.