PuTTY عميل SSH خفيف وعريق لنظام ويندوز، مناسب عندما تريد جلسات محفوظة ونافذة إعدادات رسومية. في هذا الدليل ستتصل بـ VPS Linux Infrawire، وتُبقي الجلسة حية، وتنتقل إلى المصادقة بالمفتاح عبر PuTTYgen وPageant، وتنقل الملفات باستخدام pscp.
📋 المتطلبات
- ويندوز 10 أو 11.
- خادم VPS لينكس قيد التشغيل (Ubuntu 24.04 أو Debian 12 أو AlmaLinux 9 أو Rocky 9).
- عنوان IP للخادم وكلمة مرور root: من مساحة العميل الخاصة بك تجد عنوان IP وكلمة مرور root الخاصة بالـ VPS.
- PuTTY مثبّت، وهو يتضمن
putty.exeوputtygen.exeوpageant.exeوpscp.exe.
إذا كنت تستخدم winget فالتثبيت سطر واحد في PowerShell:
PowerShellwinget install PuTTY.PuTTY
🔌 إنشاء جلسة وحفظها
- شغّل PuTTY. في فئة Session اكتب
VPS_IPفي الحقل Host Name (or IP address). - اترك Port على
22(أو منفذك المخصص) وConnection type على SSH. - في مربع Saved Sessions اكتب اسمًا مثل
myvpsثم اضغط Save. - اختياريًا: في Connection > Data اكتب
rootفي Auto-login username حتى لا يُطلب منك اسم المستخدم. - ارجع إلى Session واختر
myvpsواضغط Save مرة أخرى ثم Open.
عند أول اتصال يعرض PuTTY نافذة PuTTY Security Alert مع بصمة مفتاح الخادم. اضغط Accept فقط إذا كنت تثق بالخادم، فسيُحفظ المفتاح في السجل.
⏱️ منع الانقطاع باستخدام keepalive
كثيرًا ما تقطع أجهزة التوجيه والجدران النارية الجلسات الخاملة. افتح Connection واضبط Seconds between keepalives على 30، ثم ارجع إلى Session واحفظ myvps من جديد. سيرسل PuTTY حينها حزمة صغيرة كل 30 ثانية.
🔑 إنشاء زوج مفاتيح باستخدام PuTTYgen
افتح PuTTYgen واختر EdDSA (Ed25519) نوعًا للمفتاح، ثم اضغط Generate مع تحريك الفأرة فوق المنطقة الفارغة. بعد ذلك:
- أدخل Key passphrase وأكّدها.
- اضغط Save private key واحتفظ بملف
.ppkفي مكان آمن. - انسخ النص الموجود في Public key for pasting into OpenSSH authorized_keys file.
سجّل الدخول بكلمة المرور ثم ثبّت المفتاح العام على الـ VPS (الصق السطر المنسوخ داخل الملف):
Bashmkdir -p ~/.ssh && chmod 700 ~/.ssh nano ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys
في PuTTY اذهب إلى Connection > SSH > Auth > Credentials واختر ملف .ppk في Private key file for authentication، ثم ارجع إلى Session واحفظ. ولإعادة استخدام مفتاح OpenSSH خاص موجود، استعن بـ PuTTYgen: Conversions > Import key ثم Save private key.
🧩 تحميل المفتاح مرة واحدة باستخدام Pageant
Pageant هو وكيل المفاتيح في PuTTY. شغّل pageant.exe الذي يستقر في منطقة الإشعارات، وانقر بزر الفأرة الأيمن على أيقونته، واختر Add Key، ثم حدّد ملف .ppk واكتب عبارة المرور مرة واحدة. ما دام Pageant يعمل، يستخدم PuTTY وpscp المفتاح دون طلبه ثانيةً. أغلق Pageant لينسى المفتاح.
📂 نقل الملفات باستخدام pscp
pscp.exe هو أداة النسخ بسطر الأوامر في PuTTY. لاحظ أن المنفذ يُحدَّد بالحرف الكبير -P. من PowerShell:
PowerShell# رفع ملف pscp -P 22 C:\Users\USER\Documents\site.zip root@VPS_IP:/root/ # تنزيل ملف pscp -P 22 root@VPS_IP:/var/log/syslog C:\Users\USER\Downloads\ # رفع مجلد كامل pscp -r -P 22 C:\Users\USER\project root@VPS_IP:/root/ # استخدام مفتاح محدد pscp -i C:\keys\vps.ppk site.zip root@VPS_IP:/root/
إذا لم يُعثر على pscp فاستدعه بمساره الكامل، مثل & 'C:\Program Files\PuTTY\pscp.exe'.
✅ التحقق من الاتصال
بعد الدخول، تأكد من استخدام المفتاح ومن أنك على الجهاز الصحيح:
Bashwhoami hostname cat /etc/os-release sudo grep 'Accepted publickey' /var/log/auth.log | tail -n 3
يعمل الأمر الأخير على Ubuntu/Debian؛ وفي AlmaLinux/Rocky استخدم sudo journalctl -u sshd | grep Accepted | tail -n 3. يعرض شريط عنوان PuTTY الجلسة المتصلة، ويسرد Event Log (زر الفأرة الأيمن على شريط العنوان) خطوات المصادقة.
🛠️ استكشاف الأخطاء
Network error: Connection timed out / refused. تحقق من VPS_IP والمنفذ ومن أن الـ VPS يعمل وأن SSH يستمع (sudo systemctl status ssh في Ubuntu/Debian وsshd في AlmaLinux/Rocky). وقد يحجب جدار ناري محلي أو شبكة شركة المنفذ أيضًا.
Server refused our key / Disconnected: No supported authentication methods available. لم يُلصق المفتاح العام في سطر واحد، أو استُخدم مستخدم خاطئ، أو أن الأذونات مفتوحة أكثر من اللازم. أعد فحص authorized_keys ونفّذ chmod 700 ~/.ssh وchmod 600 ~/.ssh/authorized_keys وتأكد أن ملف .ppk يطابق المفتاح العام.
Unable to use key file (OpenSSH SSH-2 private key). لا يستطيع PuTTY قراءة هذا التنسيق. حوّل المفتاح بواسطة PuTTYgen (Conversions > Import key) أو حدّث PuTTY إلى إصدار حديث.
تتجمد الجلسة بعد بضع دقائق. اضبط فاصل keepalive كما شُرح أعلاه.
🚀 أصبح PuTTY جاهزًا بجلسة محفوظة وتسجيل دخول بالمفتاح ونقل للملفات. الخطوة التالية: عطّل تسجيل الدخول بكلمة المرور بعد أن يعمل مفتاحك.