कनेक्ट करने से पहले क्या तैयार रखें
SSH आपके कंप्यूटर और सर्वर के बीच एन्क्रिप्टेड तरीके से कमांड भेजने का तरीका है। Linux VPS शुरू से SSH सर्वर चालू हालत में बनता है, और डिफ़ॉल्ट पोर्ट 22 है। कनेक्ट करने के लिए सिर्फ़ तीन जानकारियाँ चाहिए।
- सर्वर का IPv4 एड्रेस: सर्वर पेज के ओवरव्यू में दिखता है।
- यूज़रनेम: शुरुआत में root इस्तेमाल करें।
- root पासवर्ड: सर्वर पेज के root पासवर्ड वाले हिस्से में देखें दबाने पर दिखता है। सेट होने के बाद 7 दिन तक दिखता है, इसलिए पासवर्ड मैनेजर में सेव कर लें।
सर्वर की स्थिति चालू में बदलने के बाद कनेक्ट करें। सर्वर बन रहा हो या री-इंस्टॉल हो रहा हो, तो इंस्टॉल पूरा होने तक थोड़ा रुकें। नीचे की कमांड में YOUR_SERVER_IP को अपने सर्वर के IPv4 एड्रेस से बदलकर लिखें।
तरीका 1. PowerShell की बिल्ट-इन ssh कमांड से कनेक्ट करें
Windows 10 वर्ज़न 1809 के बाद और Windows 11 में OpenSSH क्लाइंट पहले से शामिल है। अलग से इंस्टॉल किए बिना PowerShell या Windows Terminal में Mac और Linux वाली ही ssh कमांड इस्तेमाल करें।
स्टेप 1. PowerShell खोलें
स्टार्ट मेन्यू में PowerShell या Terminal खोजकर खोलें। नीचे की कमांड से जाँचें कि ssh तैयार है या नहीं। एक लाइन में OpenSSH वर्ज़न दिखे, तो तैयारी पूरी है।
ssh -Vवर्ज़न की जगह कमांड नहीं मिली जैसा संदेश दिखे, तो सेटिंग के Optional features से OpenSSH Client जोड़ें। Windows 11 में Settings > System > Optional features, और Windows 10 में Settings > Apps > Optional features में मिलता है। एडमिन अधिकार वाले PowerShell में नीचे की एक कमांड से भी जोड़ सकते हैं।
Add-WindowsCapability -Online -Name OpenSSH.Client~~~~0.0.1.0स्टेप 2. सर्वर से कनेक्ट करें
ssh root@YOUR_SERVER_IPपहली बार कनेक्ट करते समय सर्वर का फ़िंगरप्रिंट सेव करने के बारे में पूछा जाता है। yes लिखकर Enter दबाएँ, तो फ़िंगरप्रिंट आपके PC की known_hosts फ़ाइल में सेव हो जाता है और अगली बार नहीं पूछा जाता। इसके बाद password वाला हिस्सा दिखे, तो सर्वर पेज से कॉपी किया root पासवर्ड पेस्ट करें।
Windows Terminal और PowerShell विंडो में माउस के राइट क्लिक या Ctrl+Shift+V से पेस्ट करें। पासवर्ड टाइप करते समय स्क्रीन पर न दिखना सामान्य है, इसलिए एक बार पेस्ट करके Enter दबाएँ। प्रॉम्प्ट root@servername:~# जैसा दिखने लगे, तो कनेक्शन सफल है।
स्टेप 3. पहली कमांड चलाएँ
कनेक्ट होते ही सिस्टम अपडेट कर लेना अच्छा है। Ubuntu और Debian पर apt update && apt upgrade -y, और AlmaLinux और Rocky Linux पर dnf upgrade -y चलाएँ। सामान्य यूज़र बनाने और अपडेट का क्रम पहले लॉग इन की गाइड में विस्तार से है। काम पूरा होने पर exit से कनेक्शन बंद करें।
PowerShell में SSH की से बिना पासवर्ड कनेक्ट करें
SSH की इस्तेमाल करें, तो हर बार पासवर्ड पेस्ट करने की ज़रूरत नहीं, और पासवर्ड का अंदाज़ा लगाने वाली कोशिशों से भी कहीं ज़्यादा सुरक्षा मिलती है। Windows पर भी वही ssh-keygen कमांड से की बनाएँ।
ssh-keygen -t ed25519सेव करने की जगह पूछे तो Enter दबाकर डिफ़ॉल्ट रखें, और की पासफ़्रेज़ (passphrase) तय करने की सलाह है। दो फ़ाइलें C:\Users\YourName\.ssh फ़ोल्डर में बनती हैं। id_ed25519 प्राइवेट की है जो सिर्फ़ आपके PC पर रहती है, और id_ed25519.pub सर्वर पर डाली जाने वाली पब्लिक की है। पब्लिक की का कंटेंट नीचे की कमांड से देखकर कॉपी करें।
Get-Content $env:USERPROFILE\.ssh\id_ed25519.pubनया सर्वर है, तो अकाउंट के SSH की मेन्यू में पब्लिक की पेस्ट करें और सर्वर बनाते समय वह की चुनें, शुरू से की से कनेक्ट होगा। क्रम SSH की गाइड में है। पहले से चल रहे सर्वर में नीचे की एक कमांड से पब्लिक की जोड़ें। इस समय सिर्फ़ एक बार root पासवर्ड डालना होता है।
type $env:USERPROFILE\.ssh\id_ed25519.pub | ssh root@YOUR_SERVER_IP "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"कई सर्वर हों, तो कनेक्शन जानकारी नाम से सेव कर लेना आसान है। C:\Users\YourName\.ssh\config फ़ाइल Notepad से बनाएँ और नीचे जैसा लिखें, तो सिर्फ़ ssh myvps से कनेक्ट हो जाएगा।
Host myvps
HostName YOUR_SERVER_IP
User root
IdentityFile ~/.ssh/id_ed25519
ServerAliveInterval 30ServerAliveInterval 30 हर 30 सेकंड में सिग्नल भेजता है, जिससे थोड़ी देर के लिए दूर जाने पर भी कनेक्शन लंबे समय तक बना रहता है।
तरीका 2. PuTTY से कनेक्ट करें
PuTTY, Windows पर लंबे समय से इस्तेमाल हो रहा मुफ़्त SSH प्रोग्राम है। कनेक्शन जानकारी नाम के हिसाब से सेव करके डबल क्लिक से खोलना पसंद हो, तो PuTTY बढ़िया है। आधिकारिक साइट (putty.org) से 64-बिट इंस्टॉलर (MSI) लेकर इंस्टॉल करें, तो PuTTY के साथ की बनाने वाला PuTTYgen भी आ जाता है।
स्टेप 1. कनेक्शन जानकारी डालें और सेव करें
- PuTTY खोलें, Session स्क्रीन दिखेगी।
- Host Name में सर्वर का IPv4 एड्रेस, Port में 22 डालें और Connection type को SSH ही रहने दें।
- बाईं ओर Connection > Data के Auto-login username में root लिखें।
- Connection के Seconds between keepalives में 30 डालें, तो कनेक्शन लंबे समय तक बना रहता है।
- फिर Session स्क्रीन पर लौटें, Saved Sessions में नाम (जैसे myvps) लिखें और Save दबाएँ।
स्टेप 2. कनेक्ट करें
सेव किया नाम चुनें और Open दबाएँ। पहली बार सर्वर फ़िंगरप्रिंट जाँचने वाली विंडो आती है, और Accept दबाने पर फ़िंगरप्रिंट सेव हो जाता है। password वाला हिस्सा दिखे, तो माउस के राइट क्लिक से root पासवर्ड पेस्ट करें और Enter दबाएँ। PuTTY में राइट क्लिक पेस्ट है, और टेक्स्ट ड्रैग करते ही कॉपी हो जाता है।
स्टेप 3. PuTTYgen से SSH की इस्तेमाल करें
PuTTYgen खोलें, Key टाइप में EdDSA (Ed25519) चुनें, Generate दबाएँ, और प्रोग्रेस बार भरने तक खाली जगह पर माउस घुमाएँ। Key passphrase तय करें और Save private key से प्राइवेट की .ppk फ़ाइल के रूप में सेव करें।
विंडो के ऊपर Public key for pasting into OpenSSH authorized_keys file वाले हिस्से में दिखने वाली एक लाइन पब्लिक की है। इस लाइन को अकाउंट के SSH की मेन्यू में रजिस्टर करें, या पहले से चल रहे सर्वर की ~/.ssh/authorized_keys फ़ाइल के आख़िर में पेस्ट करें। इसके बाद PuTTY के Connection > SSH > Auth > Credentials में Private key file for authentication में .ppk फ़ाइल चुनें, और Session स्क्रीन पर फिर से Save दबाएँ, तो अगली बार से बिना पासवर्ड कनेक्ट होगा।
PowerShell में बनी OpenSSH की PuTTY में भी इस्तेमाल करनी हो, तो PuTTYgen के Conversions > Import key से id_ed25519 खोलकर .ppk के रूप में सेव करें। एक ही की से दोनों प्रोग्राम इस्तेमाल करें।
Windows और सर्वर के बीच फ़ाइलें भेजना
PowerShell में ssh के साथ scp कमांड भी शामिल है। अपने PC की फ़ाइल सर्वर पर भेजने या सर्वर की फ़ाइल अपने PC पर डाउनलोड करने के लिए इसका इस्तेमाल करें।
scp .\site.zip root@YOUR_SERVER_IP:/root/
scp root@YOUR_SERVER_IP:/root/backup.tar.gz .\पूरा फ़ोल्डर भेजना हो, तो scp -r लगाएँ। एक्सप्लोरर की तरह खींचकर डालना पसंद हो, तो WinSCP जैसे SFTP प्रोग्राम में वही एड्रेस, पोर्ट 22 और यूज़र root डालें। WinSCP, PuTTY में सेव किए सेशन और .ppk की सीधे इंपोर्ट कर सकता है।
कनेक्ट न हो तो जाँच का क्रम
ज़्यादातर मामले नीचे की चार बातों में से एक होते हैं, इसलिए क्रम से देखें तो जल्दी फिर से कनेक्ट हो जाएगा।
- Connection timed out: पहले देखें कि सर्वर की स्थिति चालू है या नहीं और IP एड्रेस सही है या नहीं। फ़ायरवॉल चालू किया है, तो SSH (पोर्ट 22) अलाउ होना चाहिए। कुछ ऑफ़िस या कॉलेज नेटवर्क पोर्ट 22 बंद रखते हैं, इसलिए फ़ोन के हॉटस्पॉट जैसे दूसरे नेटवर्क से एक बार आज़माएँ।
- Permission denied: पासवर्ड फिर से कॉपी करके एक ही बार पेस्ट करें। आगे-पीछे का स्पेस साथ में कॉपी न हुआ हो, यह भी देखें। 7 दिन बीतने पर पासवर्ड न दिखे, तो सर्वर पेज पर नया root पासवर्ड बनाएँ से नया पासवर्ड लें।
- REMOTE HOST IDENTIFICATION HAS CHANGED: सर्वर री-इंस्टॉल करने पर सर्वर का फ़िंगरप्रिंट नया बनता है, तब यह संदेश आता है।
ssh-keygen -R YOUR_SERVER_IPसे सेव किया पुराना फ़िंगरप्रिंट हटाएँ और फिर से कनेक्ट करें। - Connection refused: सर्वर के अंदर SSH सर्विस रुक गई है या पोर्ट बदला गया है। पोर्ट बदला है, तो
ssh -p PORT root@YOUR_SERVER_IPसे कनेक्ट करें।
पासवर्ड फिर से बनाने और री-इंस्टॉल के बाद कनेक्शन का क्रम री-इंस्टॉल और root पासवर्ड गाइड में दिया गया है। कनेक्ट हो गया, तो बुनियादी फ़ायरवॉल गाइड से सिर्फ़ इस्तेमाल होने वाले पोर्ट खोलें।
आगे करने लायक काम
SSH की से कनेक्शन हो जाए, तो पासवर्ड लॉग इन बंद करके सर्वर को और मज़बूत बना सकते हैं। पहले की से कनेक्शन जाँच लें, फिर सर्वर पर /etc/ssh/sshd_config फ़ाइल में PasswordAuthentication को no करें और SSH सर्विस रीस्टार्ट करें। Ubuntu और Debian पर systemctl restart ssh, और AlmaLinux पर systemctl restart sshd है।
वेबसाइट या ऐप चलाने की योजना है, तो Docker इंस्टॉल गाइड या WordPress इंस्टॉल गाइड पर आगे बढ़ें। Windows डेस्कटॉप ही चाहिए, ऐसे काम के लिए रिमोट डेस्कटॉप से कनेक्ट होने वाला Windows VPS ज़्यादा सही है।
