पासवर्ड से root लॉगिन बंद करें
पासवर्ड से root लॉगिन ख़तरनाक क्यों है, PermitRootLogin के विकल्प कैसे अलग हैं, और मशीन तक पहुँच खोए बिना इसे कैसे बंद करें।
23 अगस्त 2026 को अपडेट किया गया
root नाम सभी जानते हैं: यह हर मशीन पर मौजूद होता है और इसके पास पूरी अनुमतियाँ होती हैं। ब्रूट-फ़ोर्स करने वाले के पास अब सिर्फ़ एक चीज़ बचती है — पासवर्ड। root के लिए पासवर्ड लॉगिन बंद करने से एक ही पैरामीटर से हमलों की पूरी श्रेणी हट जाती है।
तैयारी
पहले बैकअप रास्ता, फिर रोक। क्रम उससे उल्टा है जो करने का मन करता है।
- sudo वाला यूज़र बनाएँ — यूज़र और sudo।
- उसमें अपनी SSH key जोड़ें और अलग टर्मिनल विंडो में लॉगिन जाँचें।
- पक्का करें कि
sudo -iकाम करता है। - अब जाकर सेटिंग बदलें।
ssh artem@<address>
sudo whoami
अगर दूसरे कमांड ने root लौटाया, तो आपके पास बैकअप रास्ता है।
कॉन्फ़िगरेशन विकल्प
फ़ाइल /etc/ssh/sshd_config.d/99-hardening.conf में:
| मान | इसका मतलब |
|---|---|
PermitRootLogin yes | सब कुछ allowed है, पासवर्ड भी। कोई इसे ऐसे नहीं छोड़ता |
PermitRootLogin prohibit-password | key काम करती है, पासवर्ड reject होता है। समझदारी भरा न्यूनतम |
PermitRootLogin forced-commands-only | सिर्फ़ पहले से तय कमांड, ऑटोमेशन के लिए |
PermitRootLogin no | root SSH से बिल्कुल लॉगिन नहीं कर सकता। सबसे सख़्त विकल्प |
सुझाया गया संयोजन:
PermitRootLogin prohibit-password
PasswordAuthentication no
दूसरा पैरामीटर सभी यूज़र्स के लिए एक साथ पासवर्ड लॉगिन बंद कर देता है, सिर्फ़ root के लिए नहीं। ज़्यादा जानकारी के लिए SSH हार्डनिंग देखें।
लागू करें और जाँचें
sudo sshd -t
sudo systemctl restart ssh
sudo sshd -T | grep -i permitrootlogin
दूसरी विंडो से जाँचें कि root अब पासवर्ड स्वीकार नहीं करता और आपका यूज़र key से लॉगिन करता है:
ssh root@<address>
ssh artem@<address>
sshd restart करने से मौजूदा सेशन नहीं टूटता — जाँच पूरी होने तक इसे खुला रखें।
क्या उपलब्ध रहता है
यह बदलाव सिर्फ़ SSH पर लागू होता है। root पासवर्ड अब भी ज़रूरी है और अब भी काम करता है:
- मशीन कंसोल में, दोनों टैब — टेक्स्ट वाला और “Screen”;
- recovery disk से लॉगिन करते समय;
- सिस्टम के अंदर
su -कमांड के लिए।
पासवर्ड ख़ुद एन्क्रिप्ट होकर सेव रहता है और पैनल के /hosting/vds/m/<id> पर “Access” टैब में एक बटन से दिख जाता है। यह आपका इमरजेंसी रास्ता है, और इसे खोना नहीं चाहिए — बैकअप key और पासवर्ड देखें।
आम गलतियाँ
| गलती | नतीजा | समाधान |
|---|---|---|
| आपने root बंद कर दिया पर sudo वाला यूज़र कभी बनाया ही नहीं | मशीन कोई मैनेज नहीं कर सकता | पैनल कंसोल से यूज़र बनाएँ |
| key सिर्फ़ root के लिए मौजूद है | नया यूज़र लॉगिन नहीं कर सकता | authorized_keys कॉपी करें और permissions ठीक करें |
| सेटिंग को कोई दूसरी फ़ाइल override कर रही है | नियम का कोई असर नहीं | फ़ाइल नहीं, sshd -T जाँचें |
| यह उम्मीद करना कि रोक कंसोल पर भी लागू होगी | पूरी तरह लॉकडाउन का झूठा भरोसा | कंसोल हमेशा काम करता है, ऐसा ही डिज़ाइन है |
बग़ल की विंडो में वैकल्पिक लॉगिन जाँचे बिना root लॉगिन कभी बंद न करें। जाँच में दस सेकंड लगते हैं; कंसोल से recovery में कहीं ज़्यादा समय लगता है।