Skip to content
VDS · مسائل کا حل

SSH کنیکٹ نہیں ہو رہا

مرحلہ وار تجزیہ: “connection timed out” سے “access denied” تک — کیسے سمجھیں کہ خرابی بالکل کہاں ہے اور پینل کنسول کے ذریعے رسائی کیسے بحال کریں۔

اپ ڈیٹ 23 اگست، 2026

SSH کا ضائع ہونا ہر بار ایک جیسا لگتا ہے، لیکن اس کی پانچ وجوہات ہوتی ہیں، اور ان کا حل مختلف طریقے سے کیا جاتا ہے۔ ایرر میسج سے شروع کریں — یہ فوراً تلاش کو محدود کر دیتا ہے۔ سب سے اہم بات: آپ کے پاس پینل /hosting/vds/m/<id> میں “Console” ٹیب کے ذریعے مشین تک رسائی ہمیشہ موجود رہتی ہے؛ یہ نیٹ ورک اور سسٹم کے اندر کی سیٹنگز سے آزادانہ کام کرتا ہے۔

ایرر پڑھنا

میسجخرابی کہاں ہے
Connection timed outپیکٹ نہیں پہنچ رہے: مشین بند ہے، فلٹر ہے، ایڈریس غلط ہے
Connection refusedمشین جواب دے رہی ہے، لیکن پورٹ پر کوئی سن نہیں رہا: sshd سروس چل نہیں رہی
Permission denied (publickey)نیٹ ورک ٹھیک ہے، کی میچ نہیں ہوئی
Permission denied (password)پاس ورڈ میچ نہیں ہوا یا پاس ورڈ لاگ ان بند ہے
Host key verification failedمشین کا فنگر پرنٹ بدل گیا — عام طور پر ری انسٹال کے بعد

تفصیلات دیکھنا مفید رہتا ہے: ssh -vvv root@YOUR_ADDRESS دکھائے گا کہ کس مرحلے پر کام رکا۔

ٹائم آؤٹ

  1. “Overview” ٹیب پر مشین کی اسٹیٹس چیک کریں۔ اگر گراف رک گئے ہیں تو مشین چل نہیں رہی — اسے آن کریں یا پینل سے ری بوٹ کریں۔
  2. یقینی بنائیں کہ ایڈریس درست ہے اور مشین تک رسائی ممکن ہے: ping YOUR_ADDRESS۔
  3. کنسول کے ذریعے لاگ ان کریں اور فلٹر چیک کریں:
ss -tulpn | grep sshd
nft list ruleset | head -40      # or iptables -S
ufw status                       # Debian, Ubuntu
firewall-cmd --list-all          # AlmaLinux, CentOS Stream

کلاسک کیس — آپ نے پورٹ 22 کی اجازت دیے بغیر ufw enable چلا دیا۔ اسے کنسول سے ایک کمانڈ سے ٹھیک کیا جاتا ہے: ufw allow 22/tcp۔

  1. چیک کریں کہ ناکام کوششوں کے بعد fail2ban آپ کو بلاک نہیں کر رہا: fail2ban-client status sshd؛ اَن بین کرنے کے لیے — fail2ban-client set sshd unbanip YOUR_IP۔

کنکشن ریفیوزڈ

سروس چل نہیں رہی یا کسی دوسرے پورٹ پر سن رہی ہے۔

systemctl status sshd || systemctl status ssh
journalctl -u sshd -n 50 --no-pager
sshd -t                          # check configuration for errors
systemctl restart sshd

sshd -t اکثر جان بچا لیتا ہے: /etc/ssh/sshd_config میں ایک ٹائپو ری اسٹارٹ کے بعد سروس کو اسٹارٹ ہونے سے روک دیتی ہے۔ اگر آپ نے پورٹ بدلا ہے تو -p NUMBER کے ساتھ کنیکٹ کریں اور اسے فلٹر میں اجازت دینا نہ بھولیں۔

پرمیشن ڈینائیڈ

اگر کی کا ایرر آئے تو مشین پر چیک کریں:

ls -la /root/.ssh
chmod 700 /root/.ssh && chmod 600 /root/.ssh/authorized_keys
grep -E 'PermitRootLogin|PubkeyAuthentication|PasswordAuthentication' /etc/ssh/sshd_config

اگر پرمیشنز اجازت سے زیادہ سخت ہوں تو sshd خاموشی سے انکار کر دے گا۔ پینل میں “Access” ٹیب پر کی لسٹ مکمل طور پر بدلی جاتی ہے: نئی کی شامل کرتے وقت غلطی سے کوئی کام کرتی کی ڈیلیٹ نہ کریں۔ لسٹ محفوظ کرنے سے چلتی ہوئی مشین ری بوٹ ہوتی ہے، اس لیے اسے مکمل طور پر اور ایک ہی بار ایڈٹ کریں۔

root پاس ورڈ بھول گئے — اسے “Access” ٹیب پر دیکھیں؛ یہ انکرپٹڈ محفوظ ہوتا ہے اور بٹن کلک کرنے پر دکھایا جاتا ہے۔ اگر آپ نے سسٹم کے اندر پاس ورڈ بدلا ہے تو پینل کو اس کا علم نہیں ہوتا: یا کنسول کے ذریعے لاگ ان کر کے passwd کمانڈ سے اسے بدلیں، یا “Change password” پر کلک کریں — پینل نیا پاس ورڈ جاری کرے گا اور مشین ری بوٹ کرے گا۔

ہوسٹ کی ویریفیکیشن فیل ہو گئی

سسٹم ری انسٹال کرنے کے بعد فنگر پرنٹ بدل جاتا ہے۔ اپنی طرف پرانا اندراج ہٹا دیں:

ssh-keygen -R YOUR_ADDRESS

اگر ری انسٹال نہیں ہوا تھا تو نئے فنگر پرنٹ کی آنکھ بند کر کے تصدیق نہ کریں — کنسول کے ذریعے اس کی تصدیق کریں: ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub۔

جب کچھ بھی کام نہ آئے

مشین کو ریکوری موڈ میں بوٹ کریں: “Access” ٹیب → بوٹ موڈ → SystemRescue ڈسک۔ مشین امیج سے اسٹارٹ ہوتی ہے، root لاگ ان بغیر پاس ورڈ، آپ کی ڈسک /dev/sda کے طور پر نظر آتی ہے۔ اسے ماؤنٹ کریں اور کنفیگریشن ایڈٹ کریں:

mount /dev/sda1 /mnt
nano /mnt/etc/ssh/sshd_config

پھر نارمل بوٹ موڈ پر واپس جائیں اور مشین ری بوٹ کریں۔

SSH سیٹنگز بدلنے سے پہلے دوسرا سیشن کھولیں اور اسے کھلا رکھیں۔ اگر نئی کنفیگریشن آپ کو باہر کر دے تو آپ پرانے کنکشن کے ذریعے اسے ٹھیک کر لیں گے، کنسول اٹھانے کی ضرورت نہیں پڑے گی۔