लक्ष्य और चरणों का क्रम
प्रशासकों को कुंजियों से अपने अलग-अलग खातों में लॉगिन करना चाहिए और ज़रूरत पड़ने पर sudo का उपयोग करना चाहिए। इससे किसने क्या किया, इसका रिकॉर्ड रहता है और पासवर्ड का अनुमान लगाने के प्रयास सीमित होते हैं। क्रम महत्त्वपूर्ण है: पहले नई पहुँच चालू करें, उसे जाँचें और सबसे अंत में root को सीमित करें। कुछ गलत होने की स्थिति के लिए प्रदाता के कंसोल की पहुँच उपलब्ध रखें।
खाता बनाएँ और कुंजी स्थापित करें
खाता बनाएँ, उसकी सार्वजनिक कुंजी जोड़ें और अनुमतियाँ सख्ती से निर्धारित करें, क्योंकि sshd उन कुंजी फ़ाइलों को अनदेखा करता है जिनमें अन्य लोग लिख सकते हैं। निजी कुंजी कभी सर्वर पर कॉपी न करें। Red Hat परिवार के सिस्टम पर sudo समूह के बजाय wheel समूह का उपयोग करें।
sudo adduser admin1
sudo usermod -aG sudo admin1
sudo install -d -m 700 -o admin1 -g admin1 /home/admin1/.ssh
sudo install -m 600 -o admin1 -g admin1 ~/admin1.pub /home/admin1/.ssh/authorized_keysदूसरी विंडो से जाँचें
अपना मौजूदा सत्र खुला रखें और दूसरे टर्मिनल से नया लॉगिन जाँचें। केवल समूह का सदस्य होना यह साबित नहीं करता कि sudo काम करता है, क्योंकि यह sudoers के नियम तय करते हैं। sudo -l से पुष्टि करें।
ssh -o IdentitiesOnly=yes -i ~/.ssh/id_ed25519 admin1@server.example
sudo -l
sudo -vroot लॉगिन सीमित करें
PermitRootLogin prohibit-password केवल कुंजी से root लॉगिन की अनुमति देता है, और no SSH पर root को पूरी तरह रोकता है। बदलाव के लिए अलग फ़ाइल रखें, जिसका स्थान इस डायरेक्टरी के अंतर्गत हो: /etc/ssh/sshd_config.d. अधिकांश विकल्पों के लिए sshd पहले मिले मान का उपयोग करता है, इसलिए पहले पढ़ी गई फ़ाइल को प्राथमिकता मिल सकती है। इसी कारण फ़ाइलें पढ़ने के बजाय sshd -T से प्रभावी मान की पुष्टि करें। पुराना सत्र बंद करने से पहले नया लॉगिन जाँचें।
echo 'PermitRootLogin no' | sudo tee /etc/ssh/sshd_config.d/50-root.conf
sudo sshd -t
sudo systemctl reload ssh
sudo sshd -T | grep -iE '^(permitrootlogin|passwordauthentication) 'पासवर्ड लॉगिन और किन बातों से बचें
PasswordAuthentication तभी बंद करें जब आपके लिए ज़रूरी हर खाते की कुंजी जाँची जा चुकी हो। कई लोगों के बीच एक खाता साझा करने से बचें, क्योंकि तब दूसरों को प्रभावित किए बिना किसी एक व्यक्ति की पहुँच रद्द नहीं कर सकते। पूरे खाते के लिए बिना पासवर्ड वाला sudo होने का यह भी अर्थ है कि केवल चोरी हुई कुंजी ही पूरा नियंत्रण दे देती है।
CH-J Server Manager में खाते
Users मॉड्यूल सक्रिय SSH सत्र के ज़रिए खाते, समूह, SSH कुंजियाँ और SSH पहुँच प्रबंधित करता है। यह कभी sudoers नहीं बदलता और न ही NOPASSWD सेट करता है; यह sudo -l से मिली वास्तविक sudo स्थिति बताता है। root खाता हटाया नहीं जा सकता और पासवर्ड से root लॉगिन की अनुमति देने के लिए अतिरिक्त पुष्टि चाहिए; अनुशंसित विकल्प केवल कुंजी है। SSH पहुँच में बदलाव को sshd -T और नए SSH लॉगिन से सत्यापित किया जाता है। जाँच विफल होने पर या आपकी पहुँच बंद हो जाने की स्थिति में पिछला कॉन्फ़िगरेशन अपने आप बहाल हो जाता है। sudo के बिना मॉड्यूल केवल पढ़ने के लिए उपलब्ध है।