मैं एक सर्वर का सुपरडैमिन हूं और मौजूदा उपयोगकर्ता का पासवर्ड बदलना पसंद करता हूं। मैं उसे कैसे कर सकता हूँ ?
मैंने कोशिश की
usermod -p 'new-password' john
लेकिन यह काम नहीं किया?
मैं एक सर्वर का सुपरडैमिन हूं और मौजूदा उपयोगकर्ता का पासवर्ड बदलना पसंद करता हूं। मैं उसे कैसे कर सकता हूँ ?
मैंने कोशिश की
usermod -p 'new-password' john
लेकिन यह काम नहीं किया?
जवाबों:
usermod -p
झंडा पासवर्ड पहले से ही एक एन्क्रिप्टेड स्वरूप में होना करने के लिए डेटा की उम्मीद है।
openssl passwd
एन्क्रिप्टेड डेटा उत्पन्न करने के लिए उपयोग करें , या इसे इस तरह से करें:
usermod -p `openssl passwd` (USERNAME)
openssl passwd
0 से 10 वर्णों के पासवर्ड की अपेक्षा करता है।
इसका कारण यह नहीं था क्योंकि usermod
's -p विकल्प पासवर्ड को पहले से ही एन्क्रिप्ट किए जाने की उम्मीद करता है।
से usermod
की आदमी पेज:
-p, --password PASSWORD
The encrypted password, as returned by crypt(3).
इस तरह से पासवर्ड सेट करने की अनुशंसा नहीं की जाती है।
इसके बजाय आपको उपयोग करना चाहिए passwd <username>
। इसे (के रूप में usermod
) रूट के रूप में किया जाना चाहिए ( यदि आप वर्तमान में उपयोगकर्ता पासवर्ड में लॉग इन नहीं कर रहे हैं)।
उपयोगकर्ता फू के लिए पासवर्ड बदलने के लिए।
sudo passwd foo
यह नए पासवर्ड के लिए संकेत देगा।
passwd
उदाहरण के लिए समय समाप्त करने के बारे में अधिक जानकारी के लिए मैन-पेज पर एक नज़र डालें ।
शुभ लाभ!
Usermod के साथ एक पासवर्ड असाइन करने का तरीका (जो ओपी वास्तव में पूछा गया है) तर्क के crypt()
लिए एक हैशेड पासवर्ड का उपयोग करना -p
है।
SALT="Q9"
PLAINTEXT="secret_password"
HASH=$(perl -e "print crypt(${PLAINTEXT},${SALT})")
echo "Password Hash = \"${HASH}\""
फिर अपने usermod -p
कमांड लाइन तर्क में इसका उपयोग करें :
usermod -p ${HASH} john
उपयोगकर्ता का पासवर्ड बदलने के लिए एक गैर-संवादात्मक एकल लाइन कमांड:
sudo usermod -p `perl -e "print crypt("new-password","Q4")"` john
usermod -p
काम करने के लिए एन्क्रिप्टेड पासवर्ड की आवश्यकता है। कृपया ध्यान दें कि new-password
उन उपयोगकर्ताओं के लिए दृश्यमान होगा जो प्रक्रियाओं को सूचीबद्ध कर सकते हैं।
यहाँ कुछ जोड़ा जाना चाहिए जो निम्नलिखित है। यह विधि:
सूद usermod -p perl -e "print crypt("new-password","Q4")"
जॉन
इसका मतलब है कि कई समान पासवर्ड सभी काम करेंगे। उदाहरण के लिए, ओरेकल लिनक्स 7.4 सर्वर और उबंटू 17.10 डेस्कटॉप पर विचार करें:
सूद usermod -p perl -e "print crypt("borkling","Q4")"
orabuntu
अब अगर कोई करता है:
सु - ओराबंटू
आप पाएंगे कि कोई भी पासवर्ड जो "borkling" से शुरू होता है, जैसे काम करेगा
borkling88 borklingjars
यद्यपि "बोर्कलाइन" काम नहीं करेगा, क्योंकि जैसा कि पहले कहा गया है कि किसी भी पासवर्ड में "बोरिंग" है क्योंकि यह उपसर्ग तब भी काम करेगा जब पासवर्ड इस तरह से सेट हो।
इसका एक तरीका यह है कि afaik में यह अवांछित दुष्प्रभाव नहीं है, निम्नलिखित है:
(इनका श्रेय यहाँ "संदीप" को जाता है:
/programming/2150882/how-to-automatically-add-user-account-and-password-with-a-bash-script )
RedHaty Linuxes पर: ("-G व्हील को छोड़ें" यदि आप sudo Privates नहीं चाहते हैं)
sudo useradd -m $ -p $ (Opensl passwd -1 $ {PASSWORD}) -s / bin / bash -G पहिया $ {USERNAME}
डेबियन लिनक्स पर (अगर आप sudo प्राइवेट नहीं चाहते हैं तो -G sudo को छोड़ दें):
sudo useradd -m $ -p $ (opensl passwd -1 $ {PASSWORD}) -s / bin / bash -G sudo $ {USERNAME}