ابدأ من العميل
استبدل user وserver.example بحسابك ومضيفك. Connection refused يعني رفضاً نشطاً؛ قد يدل timeout على التوجيه أو التصفية أو هدف لا يستجيب. Permission denied يعني رفض المصادقة. أزل بيانات التعريف من السجلات المفصلة قبل مشاركتها.
ssh -vvv -o ConnectTimeout=5 -p 22 user@server.example
ssh -4 -o ConnectTimeout=5 user@server.example
ssh -6 -o ConnectTimeout=5 user@server.exampleافحص Linux من وحدته الطرفية المحلية
في Ubuntu أو Debian افحص خدمة ssh والمنافذ المستمعة وصياغة الإعداد والسجل. تحقق من المنفذ الحقيقي واتجاهي الجدار الناري. لا يثبت timeout أن الجهاز مطفأ. قد تستخدم توزيعات أخرى sshd.service. احتفظ بوصول إلى وحدة التحكم أثناء التغييرات.
sudo systemctl status ssh.service
sudo ss -lntp
sudo /usr/sbin/sshd -t
sudo journalctl -u ssh.service -n 50 --no-pagerأصلح المصادقة دون إضعاف الثقة
افحص المستخدم والمفتاح الخاص المحدد ومالك وصلاحيات authorized_keys على الخادم. يختبر IdentitiesOnly المفتاح المقصود. تحقق من تغير مفتاح المضيف عبر قناة مستقلة موثوقة؛ لا تعطّل StrictHostKeyChecking ولا تحذف known_hosts عشوائياً. يختبر CH-J Diagnostics اتصال TCP دون تسجيل SSH.
ssh -o IdentitiesOnly=yes -i ~/.ssh/id_ed25519_chj user@server.example
ssh-keygen -F server.example