Home Knowledge base Skyline Cloud Ubuntu 22.04/24.04 पर SSH की (Key) ऑथेंटिकेशन कैसे सेट करें KNOWLEDGE BASE

Ubuntu 22.04/24.04 पर SSH की (Key) ऑथेंटिकेशन कैसे सेट करें

SSH की पेयर जनरेट करने, उसे अपने सर्वर पर इंस्टॉल करने और पासवर्ड लॉगिन बंद करने के लिए एक सटीक, चरण-दर-चरण गाइड — Skyline Cloud VPS पर मज़बूत, पासवर्ड-रहित सुरक्षा के लिए।

Ubuntu 22.04/24.04 पर SSH की (Key) ऑथेंटिकेशन कैसे सेट करें

एक SSH की पेयर जनरेट करने, उसे अपने सर्वर पर इंस्टॉल करने और पासवर्ड लॉगिन बंद करने के लिए एक सटीक, चरण-दर-चरण गाइड — Skyline Cloud VPS पर मज़बूत, पासवर्ड-रहित सुरक्षा के लिए।

SKYLINE Engineering @skyline

प्रकाशित Jun 9, 2026 | पढ़ने का समय 6 मिनट

SSH की ऑथेंटिकेशन क्या है

SSH की ऑथेंटिकेशन उस पासवर्ड की जगह लेता है जो आप किसी सर्वर से कनेक्ट करते समय टाइप करते हैं, और इसके बदले एक क्रिप्टोग्राफ़िक की पेयर का उपयोग करता है: एक प्राइवेट की जो आपके कंप्यूटर पर रहती है और एक पब्लिक की जिसे आप सर्वर पर रखते हैं। जब आप कनेक्ट करते हैं, तो दोनों को गणितीय रूप से मिलाया जाता है, बिना नेटवर्क पर कभी कोई गुप्त जानकारी भेजे। यह पासवर्ड की तुलना में अधिक सुविधाजनक भी है (कोई पासवर्ड टाइप नहीं करना) और कहीं अधिक सुरक्षित भी, क्योंकि पासवर्ड का अनुमान लगाया जा सकता है या ब्रूट-फ़ोर्स किया जा सकता है।

Skyline Cloud VPS या क्लाउड सर्वर लॉन्च करने के बाद सबसे पहले यही काम करना चाहिए। नीचे दिए गए चरण Ubuntu 22.04 LTS और 24.04 LTS को लक्ष्य करते हैं, लेकिन मामूली बदलावों के साथ ये लगभग किसी भी Linux सर्वर पर लागू होते हैं।

आवश्यक शर्तें (Prerequisites)

  • एक ऐसा सर्वर जिस तक आप पहले से SSH के ज़रिए पहुँच सकते हों, और जिसमें ऐसा यूज़र हो जिसके पास sudo विशेषाधिकार हों। एक नए Skyline Cloud VPS पर यह आमतौर पर root होता है या कोई यूज़र जिसे आपने प्रोविज़निंग के समय बनाया हो।
  • आपकी अपनी मशीन पर एक टर्मिनल: macOS या Linux पर Terminal ऐप, या Windows 10/11 पर PowerShell / Windows Terminal (OpenSSH बिल्ट-इन आता है)।

चरण 1 — अपनी लोकल मशीन पर एक की पेयर जनरेट करें

इसे अपने अपने कंप्यूटर पर चलाएँ, सर्वर पर नहीं:

ssh-keygen -t ed25519 -C "you@example.com"

हम -t ed25519 का उपयोग करते हैं क्योंकि Ed25519 कीज़ आधुनिक, तेज़ और छोटी की के साथ सुरक्षित होती हैं। -C फ़्लैग केवल एक कमेंट (आपका ईमेल) जोड़ता है ताकि आप बाद में की को पहचान सकें। अगर आपको किसी पुराने सिस्टम को सपोर्ट करना है जिसमें Ed25519 नहीं है, तो इसके बजाय एक मज़बूत RSA की का उपयोग करें:

ssh-keygen -t rsa -b 4096 -C "you@example.com"

डिफ़ॉल्ट फ़ाइल लोकेशन (~/.ssh/id_ed25519) को स्वीकार करने के लिए Enter दबाएँ। जब पासफ़्रेज़ माँगा जाए, तो एक मज़बूत पासफ़्रेज़ सेट करें। पासफ़्रेज़ आपकी प्राइवेट की को डिस्क पर एन्क्रिप्ट करता है, इसलिए चोरी हुआ लैपटॉप सर्वर एक्सेस नहीं दे देता। अगर आप एजेंट (चरण 5) का उपयोग करते हैं तो आपको यह प्रति सत्र केवल एक बार टाइप करना होगा।

यह दो फ़ाइलें बनाता है:

फ़ाइल भूमिका इसे शेयर करें?
~/.ssh/id_ed25519 प्राइवेट की इसे कभी शेयर न करें
~/.ssh/id_ed25519.pub पब्लिक की सर्वरों पर कॉपी करना सुरक्षित है

चरण 2 — पब्लिक की को अपने सर्वर पर कॉपी करें

सबसे आसान तरीका ssh-copy-id है, जो आपकी पब्लिक की को सर्वर की ~/.ssh/authorized_keys में जोड़ देता है और आपके लिए परमिशन ठीक कर देता है:

ssh-copy-id -i ~/.ssh/id_ed25519.pub user@your_server_ip

आपसे आपका पासवर्ड आख़िरी बार माँगा जाएगा। user को अपने सर्वर के यूज़रनेम (जैसे root या ubuntu) से और your_server_ip को अपने VPS के IP पते से बदलें।

अगर ssh-copy-id उपलब्ध न हो

Windows पर, या अगर यह टूल मौजूद न हो, तो की को मैन्युअल रूप से इंस्टॉल करें। पब्लिक की को प्रदर्शित करें:

cat ~/.ssh/id_ed25519.pub

आउटपुट की एक पंक्ति कॉपी करें, अपने पासवर्ड से सर्वर पर लॉग इन करें, और चलाएँ:

mkdir -p ~/.ssh && chmod 700 ~/.ssh
echo "ssh-ed25519 AAAA... you@example.com" >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

उदाहरण की जगह अपनी खुद की की पंक्ति पेस्ट करें। सही परमिशन मायने रखती हैं: अगर फ़ाइल या ~/.ssh डायरेक्टरी बहुत खुली हुई हो तो SSH authorized_keys को नज़रअंदाज़ कर देता है

चरण 3 — की लॉगिन को टेस्ट करें

एक नया टर्मिनल खोलें और कनेक्ट करें:

ssh user@your_server_ip

अगर आपने पासफ़्रेज़ सेट किया है, तो आपका सिस्टम उसके लिए प्रॉम्प्ट करेगा (सर्वर का पासवर्ड नहीं)। आपको सर्वर के कमांड प्रॉम्प्ट पर पहुँच जाना चाहिए। अगला चरण करते समय इस सत्र को खुला रखें, ताकि कोई ग़लती आपको लॉक आउट न कर दे।

चरण 4 — पासवर्ड ऑथेंटिकेशन बंद करें

जब की लॉगिन काम करने लगे, तो पासवर्ड बंद कर दें ताकि ब्रूट-फ़ोर्स प्रयास बेकार हो जाएँ। सर्वर पर, SSH डीमन कॉन्फ़िग को एडिट करें:

sudo nano /etc/ssh/sshd_config

इन पंक्तियों को ढूँढें और सेट करें (किसी भी आगे लगे # को हटा दें):

PasswordAuthentication no
PubkeyAuthentication yes

Ubuntu 22.04/24.04 पर, ड्रॉप-इन डायरेक्टरी /etc/ssh/sshd_config.d/ को भी जाँचें — वहाँ मौजूद कोई फ़ाइल (उदाहरण के लिए 50-cloud-init.conf) मुख्य फ़ाइल को ओवरराइड कर सकती है। सुनिश्चित करें कि कोई भी फ़ाइल PasswordAuthentication yes सेट न करती हो:

sudo grep -r PasswordAuthentication /etc/ssh/sshd_config /etc/ssh/sshd_config.d/

फिर कॉन्फ़िग को वैलिडेट करें और सर्विस को रीलोड करें:

sudo sshd -t
sudo systemctl restart ssh

Ubuntu पर सर्विस का नाम ssh है (ssh.service)। अगर restart ssh ऐसी कोई यूनिट नहीं मिलने की रिपोर्ट करता है, तो sudo systemctl restart sshd का उपयोग करें।

अब एक और नया टर्मिनल खोलें और पुष्टि करें कि आप अभी भी अपनी की से लॉग इन कर सकते हैं। नया सत्र सफल होने के बाद ही अपना मूल सत्र बंद करें।

चरण 5 — एक SSH एजेंट का उपयोग करें (वैकल्पिक लेकिन अनुशंसित)

ताकि आपको हर कनेक्शन पर पासफ़्रेज़ दोबारा टाइप न करना पड़े, की को प्रति सत्र एक बार एजेंट में लोड करें:

eval "$(ssh-agent -s)"
ssh-add ~/.ssh/id_ed25519

macOS पर, इसे कीचेन में स्टोर करें ताकि यह रीबूट के बाद भी बना रहे:

ssh-add --apple-use-keychain ~/.ssh/id_ed25519

चरण 6 — एक सुव्यवस्थित SSH कॉन्फ़िग (वैकल्पिक)

अपनी लोकल मशीन पर ~/.ssh/config में एक एंट्री जोड़ें ताकि आप एक छोटे अलियास से कनेक्ट कर सकें:

Host skyline-vps
    HostName your_server_ip
    User ubuntu
    IdentityFile ~/.ssh/id_ed25519

अब बस ssh skyline-vps ही काफ़ी है।

समस्या निवारण (Troubleshooting)

  • चरण 2 के बाद भी पासवर्ड माँगा जा रहा है। परमिशन ग़लत हैं। सर्वर पर chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys चलाएँ, और जाँचें कि फ़ाइल का स्वामित्व आपके यूज़र के पास है।
  • Permission denied (publickey) सर्वर आपकी की ऑफ़र नहीं कर रहा, या आपने इसे ग़लत यूज़र की होम डायरेक्टरी में कॉपी कर दिया है। SSH क्या प्रयास करता है यह देखने के लिए -v जोड़ें: ssh -v user@your_server_ip
  • पासवर्ड बंद करने के बाद लॉक आउट हो गए। लॉग इन करने और PasswordAuthentication को अस्थायी रूप से फिर से चालू करने के लिए अपने प्रोवाइडर के कंसोल (आपके कंट्रोल पैनल में वेब-आधारित VNC/सीरियल कंसोल) का उपयोग करें।

इसे एक मैनेज्ड, इन-किंगडम VPS पर चलाएँ

SSH कीज़ कनेक्शन की रक्षा करती हैं, लेकिन बॉक्स को खुद अभी भी पैचिंग, बैकअप और मॉनिटरिंग की ज़रूरत होती है। एक Skyline Cloud VPS या क्लाउड सर्वर पर आपको सऊदी अरब के अंदर होस्ट किया गया हार्डवेयर मिलता है, जो PDPL, NCA और SDAIA की डेटा-रेज़िडेंसी आवश्यकताओं के लिए उपयुक्त है, साथ ही स्थानीय अरबी सपोर्ट, और मैनेज्ड विकल्प जो OS हार्डनिंग और आपके लिए क्लाउड बैकअप संभालते हैं। इसे उसी इन-किंगडम प्लेटफ़ॉर्म पर बिज़नेस ईमेल होस्टिंग के साथ जोड़ें और आपका पूरा स्टैक अनुपालन में बना रहता है।

क्या मिनटों में एक सुरक्षित सर्वर डिप्लॉय करने के लिए तैयार हैं? अपना Skyline Cloud अकाउंट बनाएं और आज ही एक VPS लॉन्च करें।

SKYLINE Engineering

@skyline

The engineering team at SKYLINE Industrial Solutions. We publish field-tested guides drawn from real KSA and GCC deployments.

See author profile
SKYLINE engineering services

Need this implemented for you?

Reading is free — building it right takes a team. SKYLINE engineers ship Skyline Cloud for Aramco vendors, banks, hospitals and government agencies across Saudi Arabia. Talk to us before you start.

Aramco Approved Contractor ISO 9001 · ISO 27001 SAMA CSF aligned NCA ECC ready 247+ KSA clients

Comments

0 total · 0 threads
Be the first to leave a comment.