अवलोकन
लिनक्स सर्वर एडमिनिस्ट्रेशन में सिस्टम सुरक्षा को मजबूत बनाए रखने के लिए यूजर अकाउंट्स पर पासवर्ड एजिंग और अकाउंट डिसेबल नीतियां लागू करना अनिवार्य है। इस व्यावहारिक ट्यूटोरियल में हम chage यूटिलिटी का उपयोग करके देखेंगे कि किस तरह एक नए परीक्षण खाते पर पासवर्ड की वर्तमान स्थिति जांची जाती है, सुरक्षा चक्र निर्धारित किया जाता है और पहली बार लॉगिन करते ही उपयोगकर्ता को पासवर्ड बदलने के लिए बाध्य किया जा सकता है।
1. नया टेस्ट यूजर बनाएं और पासवर्ड की मौजूदा स्थिति जांचें (chage -l)
मुख्य सिस्टम सेटिंग्स को प्रभावित किए बिना सुरक्षित अभ्यास सुनिश्चित करने के लिए हम सबसे पहले testuser नामक एक नया यूजर अकाउंट तैयार करते हैं (यदि यह पहले से मौजूद न हो)।

खाता तैयार होने के बाद, chpasswd यूटिलिटी की सहायता से इस नए अकाउंट के लिए एक आरंभिक पासवर्ड निर्धारित किया जाता है।

सिस्टम में पासवर्ड की जीवन अवधि (aging) और खाता सक्रियता नीतियों को प्रबंधित करने का प्राथमिक साधन chage कमांड है।
वर्तमान में testuser पर लागू सभी पासवर्ड समाप्ति तिथियों और सुरक्षा नियमों का विवरण देखने के लिए हम -l फ्लैग का उपयोग करते हैं।
⚙️ [प्रमुख विकल्प]
-l : उपयोगकर्ता खाते के विस्तृत पासवर्ड एजिंग पैरामीटर्स प्रदर्शित करता है।-m : दो पासवर्ड परिवर्तनों के बीच आवश्यक न्यूनतम दिनों की संख्या तय करता है।-M : वर्तमान पासवर्ड की अधिकतम वैधता अवधि (दिनों में) निर्धारित करता है।-W : पासवर्ड समाप्त होने से पहले उपयोगकर्ता को चेतावनी सूचना भेजने के दिनों की संख्या सेट करता है।-I : पासवर्ड की समय-सीमा खत्म होने के बाद खाता निष्क्रिय होने तक का ग्रेस पीरियड (अनुग्रह अवधि) तय करता है।-E : एक निश्चित दिनांक निर्धारित करता है जिस दिन खाता स्थायी रूप से लॉक या समाप्त हो जाएगा।-d : सिस्टम रिकॉर्ड में अंतिम बार पासवर्ड बदले जाने की तारीख को अद्यतन करता है।

2. पासवर्ड की वैधता, न्यूनतम अवधि और चेतावनी दिवस निर्धारित करें (-m, -M, -W)
बार-बार पासवर्ड बदलने की प्रवृत्ति को नियंत्रित करने और साथ ही नियमित नवीनीकरण सुनिश्चित करने के लिए हम testuser पर तीन प्रमुख पैरामीटर्स लागू करते हैं: न्यूनतम 7 दिन (-m 7), अधिकतम 90 दिन की वैधता (-M 90), तथा समय समाप्ति से 14 दिन पूर्व चेतावनी संदेश (-W 14)।

यह पुष्टि करने के लिए कि नई नीतियां सही ढंग से सक्रिय हो गई हैं, पुनः -l विकल्प चलाकर अकाउंट स्थिति का निरीक्षण करें।
परिणामों में न्यूनतम दिनों की सीमा (7), अधिकतम वैधता (90), और चेतावनी विंडो (14) के साथ सिस्टम द्वारा स्वतः आकलित अगली पासवर्ड एक्सपायरी तिथि स्पष्ट रूप से दिखाई देगी।

3. अकाउंट एक्सपायरी डेट और इनएक्टिविटी ग्रेस पीरियड सेट करना (-E, -I)
अस्थायी अनुबंधित कर्मचारियों या सीमित समय के प्रोजेक्ट खातों को सुरक्षित करने के लिए खाते की अंतिम समाप्ति तिथि निर्धारित करना सर्वोत्तम अभ्यास है। हम testuser के लिए समाप्ति तिथि 31 दिसंबर 2026 (-E 2026-12-31) और पासवर्ड समाप्त होने के बाद 7 दिनों का अतिरिक्त निष्क्रियता ग्रेस पीरियड (-I 7) कॉन्फ़िगर करते हैं।

कॉन्फ़िगरेशन की पुष्टि के लिए -l फ्लैग का दोबारा निष्पादन करें।
कंसोल आउटपुट में अकाउंट एक्सपायरी विवरण (Account expires : Dec 31, 2026) और निष्क्रियता विंडो (Password inactive : Jan 21, 2027) हमारी शर्तों के अनुरूप अपडेट हो चुके हैं।

4. पहली लॉगिन पर अनिवार्य पासवर्ड बदलाव और लैब क्लीनअप (-d 0)
प्रशासक द्वारा दिए गए अस्थायी पासवर्ड के दुरुपयोग को रोकने के लिए सबसे प्रभावी तरीका यह है कि उपयोगकर्ता अगली बार जैसे ही लॉगिन करे, उससे नया पासवर्ड तुरंत मांगा जाए। इसके लिए लास्ट पासवर्ड चेंज फ़ील्ड को शून्य (-d 0) पर रीसेट किया जाता है।

परिवर्तन लागू होने की जांच -l विकल्प से करें।
यहाँ Last password change और Password expires दोनों स्तंभों के आगे password must be changed का स्पष्ट संदेश दिखाई देगा, जो यह दर्शाता है कि पासवर्ड अपडेट किए बिना यूजर सिस्टम में आगे नहीं बढ़ पाएगा।

व्यावहारिक अभ्यास पूर्ण होने के उपरांत, सिस्टम स्वच्छता और सुरक्षा बनाए रखने हेतु बनाए गए परीक्षण खाते तथा उसकी होम डायरेक्टरी को userdel -r की सहायता से पूरी तरह हटा दें।

इस ट्यूटोरियल में हमने लिनक्स की शक्तिशाली chage कमांड का उपयोग करके उपयोगकर्ता क्रेडेंशियल जीवनचक्र को नियंत्रित करने की संपूर्ण प्रक्रिया सीखी। इन सुरक्षा नीतियों को अपने प्रोडक्शन सर्वर पर लागू करके आप अनधिकृत पहुंच के जोखिम को काफी हद तक कम कर सकते हैं।