Quick answer
मैं नए VPS पर SSH कैसे सख़्त करूँ?
नए VPS पर SSH सख़्त करने के लिए एक sudo उपयोगकर्ता बनाएँ, अपनी सार्वजनिक कुंजी इंस्टॉल करें, फिर /etc/ssh/sshd_config.d/ के अंतर्गत एक drop-in फ़ाइल में PasswordAuthentication no, PermitRootLogin no और AllowUsers सेट करें, उसे sshd -t से जाँचें और रीलोड करें। Gloamport Dusk, 1 vCPU, 2 GB RAM, 40 GB NVMe, 2 TB traffic, 12 महीनों की अवधि पर $5.25 प्रति माह लगता है।
नए VPS पर कौन-से sshd_config विकल्प सबसे ज़्यादा मायने रखते हैं?
| विकल्प | Value | sshd_config मैनुअल में डिफ़ॉल्ट |
|---|---|---|
PasswordAuthentication | no | yes |
KbdInteractiveAuthentication | no | yes (Debian की फ़ाइल no सेट करती है) |
PermitRootLogin | no | prohibit-password |
PubkeyAuthentication | yes | yes |
AllowUsers | आपका sudo उपयोगकर्ता | सभी उपयोगकर्ता |
MaxAuthTries | 3 | 6 |
LoginGraceTime | 30 | 120 सेकंड |
sshd_config(5) में बताए गए डिफ़ॉल्ट, 2026-11-10 को जाँचे गए। बीच वाले कॉलम के मान इस गाइड की पसंद हैं।
SSH को सबसे पहले क्यों सख़्त करें?
SSH वह एक सेवा है जो हर VPS पहले मिनट से खोलती है, इसलिए यह सबसे पहला दरवाज़ा है जिसे बंद करना है। पोर्ट 22 पर पासवर्ड अनुमान के हमले उसी क्षण शुरू हो जाते हैं जब कोई पता चालू होता है, और केवल-कुंजी लॉगिन उस पूरी श्रेणी के हमले को हटा देता है।
Root over SSH. Paste a public key at checkout and password login stays switched off; leave it empty and the team sets a temporary root password, shown in your dashboard, that you change at first login। अगर आपने चेकआउट पर कुंजी चिपकाई है, तो पासवर्ड लॉगिन पहले से बंद है, और यह गाइड बाकी सीमाएँ जोड़ती है। अगर आपको अस्थायी root पासवर्ड मिला है, तो कुछ भी करने से पहले पहले लॉगिन पर passwd के साथ उसे बदलें। Gloamport के 10 नवंबर 2026 सर्वेक्षण के अनुसार, 6 होस्ट Monero लेते हैं और साइन-अप पर कोई ईमेल नहीं माँगते, इसलिए उन सर्वरों पर मशीन की रक्षा केवल SSH कुंजी और खाता नंबर करते हैं।
नए VPS पर SSH कैसे सख़्त करें, चरण-दर-चरण?
इसी क्रम में करें, और आखिर तक पहला सेशन खुला रखें।
एक सामान्य उपयोगकर्ता बनाएँ
adduserचलाएँ और उपयोगकर्ता कोsudoसमूह में जोड़ें, ताकि आप root के रूप में काम करना बंद कर दें।उस उपयोगकर्ता के लिए अपनी सार्वजनिक कुंजी इंस्टॉल करें
अपनी authorized कुंजी नए उपयोगकर्ता को कॉपी करें, या अपने कंप्यूटर से
ssh-copy-id -iचलाएँ। दूसरे टर्मिनल में लॉगिन की जाँच करें।drop-in फ़ाइल लिखें
/etc/ssh/sshd_config.d/00-hardening.confबनाएँ, जिसमें तालिका के विकल्प हों। Debian इस फ़ोल्डर को sshd_config की शुरुआत में शामिल करता है, और किसी विकल्प का पहला मान जीतता है, इसलिए फ़ाइल का नाम जल्दी क्रम में आना चाहिए।कॉन्फ़िगरेशन जाँचें
sshd -tचलाएँ। यह कॉन्फ़िगरेशन फ़ाइल और कुंजियों की जाँच करता है, बिना कुछ दोबारा शुरू किए। प्रभावी मान देखने के लिएsshd -Tचलाएँ।सेवा रीलोड करें
sshदोबारा शुरू करें, और पुराना सेशन बंद करने से पहले नए उपयोगकर्ता के रूप में नया सेशन खोलें।पुष्टि करें कि root और पासवर्ड अस्वीकार होते हैं
दूसरे टर्मिनल से root के रूप में और पासवर्ड से लॉगिन करने की कोशिश करें। दोनों विफल होने चाहिए।
मैं sudo उपयोगकर्ता कैसे बनाऊँ और उसे अपनी कुंजी कैसे दूँ?
उपयोगकर्ता बनाएँ, उसे sudo समूह में जोड़ें, और root खाते की authorized कुंजी उसे कॉपी करें। अगर आपने अभी तक कुंजी नहीं बनाई है, तो मैं अपने VPS के लिए SSH कुंजी कैसे बनाऊँ? से कुंजी लें। admin की जगह वह उपयोगकर्ता नाम रखें जो आप चाहते हैं।
adduser admin
usermod -aG sudo admin
mkdir -p /home/admin/.ssh
cp /root/.ssh/authorized_keys /home/admin/.ssh/authorized_keys
chown -R admin:admin /home/admin/.ssh
chmod 700 /home/admin/.ssh
chmod 600 /home/admin/.ssh/authorized_keyssshd_config drop-in फ़ाइल में क्या जाता है?
विकल्प एक drop-in में रखें, ताकि पैकेज अपग्रेड उन्हें कभी न बदले। sshd_config मैनुअल कहता है कि अधिकतर कीवर्ड के लिए मिला पहला मान इस्तेमाल होता है, और Debian की फ़ाइल शुरुआत में /etc/ssh/sshd_config.d/*.conf शामिल करती है, इसलिए 00- उपसर्ग आपके विकल्प को क्लाउड इमेज की अपनी drop-in जैसी फ़ाइलों से ऊपर रखता है।
PasswordAuthentication no
KbdInteractiveAuthentication no
PubkeyAuthentication yes
PermitRootLogin no
AllowUsers admin
MaxAuthTries 3
LoginGraceTime 30sshd -t
sshd -T | grep -E "passwordauthentication|permitrootlogin|allowusers"
systemctl restart sshक्या SSH पोर्ट बदलूँ या फ़ायरवॉल जोड़ूँ?
पोर्ट बदलने से लॉग का शोर कम होता है, पर असली सुरक्षा नहीं बढ़ती, इसलिए इसे वैकल्पिक मानें। मैनुअल इसे Port से सेट करने देता है, और कई Port पंक्तियाँ अनुमत हैं। अगर आप इसे बदलते हैं, तो ssh दोबारा शुरू करने से पहले अपने फ़ायरवॉल में नया पोर्ट खोलें। पूर्ण KVM वर्चुअलाइज़ेशन: अपना kernel, अपने firewall नियम और, अगर आप सेट करें, अपना डिस्क एन्क्रिप्शन, ताकि आप वही फ़ायरवॉल चलाएँ जो आपके लिए ठीक हो।
एक बार SSH कस जाने के बाद, अगली परतें हैं एक निजी टनल (मैं VPS पर WireGuard कैसे सेट करूँ?) और एक एन्क्रिप्टेड डेटा वॉल्यूम (क्या मैं LUKS से VPS डिस्क एन्क्रिप्ट कर सकता हूँ?)। Dusk, 2 GB RAM के साथ, 12 महीनों की अवधि पर $5.25 प्रति माह है; देखें मूल्य निर्धारण पेज।
सारांश
- sudo उपयोगकर्ता के रूप में काम करें, root के रूप में नहीं।
PasswordAuthentication noऔरKbdInteractiveAuthentication noसेट करें।- sudo उपयोगकर्ता काम करने लगे, तब
PermitRootLogin noसेट करें। AllowUsersका उपयोग करके तय करें कि कौन लॉगिन कर सकता है।- विकल्पों को ऐसी drop-in में रखें जिसका नाम पहले क्रम में आए, जैसे
00-hardening.conf। - हर रीस्टार्ट से पहले
sshd -tचलाएँ और दूसरा सेशन खुला रखें। - 12 महीनों की अवधि पर Dusk $5.25 प्रति माह लगता है।
VPS पर SSH सख़्त करना: आम सवाल
PermitRootLogin prohibit-password का क्या मतलब है?
इससे root कुंजी से लॉगिन कर सकता है, पासवर्ड से नहीं। मैनुअल इसे डिफ़ॉल्ट बताता है, और no एक कदम आगे जाता है।
मेरे sshd_config में बदलाव का असर क्यों नहीं हो रहा?
किसी विकल्प का पहला मान जीतता है, और Debian पहले sshd_config.d फ़ोल्डर शामिल करता है। कोई पुरानी drop-in वह विकल्प सेट कर सकती है, इसलिए अपनी फ़ाइल का नाम 00-hardening.conf रखें और sshd -T से जाँचें।
SSH तोड़े बिना config की जाँच कैसे करूँ?
sshd -t चलाएँ, जो केवल कॉन्फ़िगरेशन फ़ाइल और कुंजियों की जाँच करता है। रीस्टार्ट करते समय दूसरा सेशन खुला रखें।
अगर मैंने चेकआउट पर कुंजी चिपकाई है, तो क्या मुझे पासवर्ड लॉगिन बंद करना होगा?
Gloamport पर चिपकाई गई कुंजी पासवर्ड लॉगिन को पहले से बंद रखती है। drop-in में विकल्प सेट करने से अपग्रेड के बाद भी यही स्थिति बनी रहती है।
MaxAuthTries क्या करता है?
यह प्रति कनेक्शन प्रमाणीकरण प्रयासों की सीमा तय करता है। मैनुअल का डिफ़ॉल्ट 6 है, और यह गाइड 3 सेट करती है।
Sources (3)
- sshd_config(5) मैनुअल पेज — Debian (checked 2026-11-10)
- sshd(8) मैनुअल पेज (-t और -T) — Debian (checked 2026-11-10)
- ssh-copy-id(1) मैनुअल पेज — Debian (checked 2026-11-10)