লিনাক্সের কোনও ব্যবহারকারীর কাছে আমি কীভাবে একটি প্রাথমিক / ডিফল্ট পাসওয়ার্ড অর্পণ করতে পারি?


10

আমি একটি গাইড পেয়েছি যা কোনও ব্যবহারকারীর পাসওয়ার্ড সেট করতে হয় তা ব্যাখ্যা করে । আমি এটি স্বয়ংক্রিয় করার চেষ্টা করছি এবং ব্যবহারকারীর মতো একটি ইমেল প্রেরণ করব:

userid created with password XYZ.
request to change the initial password.

উপরের ডক অনুসারে পাইথন ব্যবহার করে একটি এনক্রিপ্ট করা পাসওয়ার্ড তৈরি করা দরকার এবং usermodকমান্ডটি এভাবে খাওয়ানো দরকার :

 usermod -p "<encrypted-password>" <username>

এটি করার জন্য অন্য কোনও সহজ উপায় আছে? এটি করার জন্য আমি কোনও বিশেষ ইউটিলিটি ডাউনলোড করতে চাই না; এটি যথাসম্ভব সাধারণীকরণ করা উচিত।


সম্পাদনা করুন : উপরের লিঙ্কে প্রদত্ত পদ্ধতিটিও আমার পক্ষে কাজ করে বলে মনে হচ্ছে না:

bash-3.00# python
Python 2.4.6 (#1, Dec 13 2009, 23:43:51) [C] on sunos5
Type "help", "copyright", "credits" or "license" for more information.
>>> import crypt; print crypt.crypt("<password>","<salt>")
<sOMrcxm7pCPI
>>> ^D
bash-3.00# useradd -g other -p "sOMrcxm7pCPI" -G bin,sys -m -s /usr/bin/bash mukesh2
UX: useradd: ERROR: project sOMrcxm7pCPI does not exist.  Choose another.
UX: useradd: sOMrcxm7pCPI name should be all lower case or numeric.

এখানে আরো লিংক আমি দেখেছি কিন্তু কোন সুরক্ষা সমস্যা মধ্যে -p বিকল্প ব্যবহার করে সেখানে মনে হয় usermodযখন কারো ব্যবহারসমূহ psদেখতে প্রক্রিয়া তালিকা পাসওয়ার্ড দৃশ্যমান
munish

উত্তর:


13

আপনি chpasswdএটি করতে এটি ব্যবহার করতে পারেন :

echo "username:newpassword" | chpasswd

সুবিধাজনক হলে আপনি chpasswdঅন্য প্রোগ্রামগুলি থেকে পাইপ করতে echoপারেন তবে এটি কৌশলটি করবে will

সম্পাদনা করুন: শেল স্ক্রিপ্টের মধ্যে পাসওয়ার্ড তৈরি করতে এবং এটি সেট করতে, আপনি এই জাতীয় কিছু করতে পারেন:

# Change username to the correct user:
USR=username
# This will generate a random, 8-character password:
PASS=`tr -dc A-Za-z0-9_ < /dev/urandom | head -c8`
# This will actually set the password:
echo "$USR:$PASS" | chpasswd

আরও তথ্যের জন্য chpasswdদেখুন http://linux.die.net/man/8/chpasswd

(পাসওয়ার্ড উত্পন্ন করার কমান্ডটি ছিল http://nixraft.com/shell-scriptting/13454-command-generate-random-password-string.html )


ধন্যবাদ @ ডমিনিক হুম, chpasswd সম্ভবত এআইএক্সে আছে ... আমি এটি ব্যবহার করি নি। এবং খালি আমার পাসওয়ার্ড লিখতে হবে ... প্রশ্ন লিঙ্কের মতো এটি স্ক্রিপ্টের মাধ্যমে তৈরি করা যায় না ... দুর্ভাগ্যক্রমে এমনকি এটি আমার
পক্ষেও কার্যকর

@ মোমিশ আমি স্ক্রিপ্টে উত্পন্ন করার অর্থ আপনি কী বোঝাতে চাইছেন তা সম্পর্কে আমি নিশ্চিত নই, তবে আশা করি আরও সহায়ক হওয়ার জন্য আমি আমার উত্তর আপডেট করেছি।
ডোমিনিক পাস্তোর

কাজ করে না. "প্রমাণীকরণ টোকেন ম্যানিপুলেশন ত্রুটি"
সেরিন

@ সেরিন যে কোনও সুযোগে আপনি কি এমন কিছু করছেন sudo echo "username:newpass" | chpasswd? যেহেতু থেকে উন্নত অনুমতিগুলি sudoপাইপের মধ্য দিয়ে যায় না, তাই chpasswdসাধারণ ব্যবহারকারী হিসাবে চলতে থাকবে। এটি sudoযেমন সরানো যায় ঠিক করে ঠিক করা যায় echo "username:newpass" | sudo chpasswd। এছাড়াও অন্যান্য সমস্যা রয়েছে যা ত্রুটি বার্তার কারণ হতে পারে, তবে এর মতো অনুমতি ত্রুটিগুলি সম্ভবত সবচেয়ে সাধারণ।
ডোমিনিক পাস্তোর

1
কমান্ড লাইনের পাসওয়ার্ডগুলি একই মেশিনে ডাব্লু, পিএস বা অন্যান্য কমান্ডগুলি ব্যবহার করে যা অন্য প্রক্রিয়া সম্পর্কিত তথ্য দেখায় অন্য লগইন করা ব্যবহারকারীদের কাছে দৃশ্যমান হতে পারে। এইভাবে সেট করা পাসওয়ার্ডগুলি যত তাড়াতাড়ি সম্ভব ব্যবহারকারী দ্বারা পরিবর্তন করা উচিত।
Mnebuerquo

3

আপনি এলোমেলো পাসওয়ার্ড তৈরি করতে ওপেনএসএসএল ব্যবহার করতে পারেন (16 অক্ষর, এক্ষেত্রে):

# 1000 bytes should be enough to give us 16 alphanumeric ones
p=$(openssl rand 1000 | strings | grep -io [[:alnum:]] | head -n 16 | tr -d '\n')

তারপরে useraddবা হ্যাশ পাসওয়ার্ডটি ফিড করুনusermod

# omit the "-1" if you want traditional crypt()
usermod -p $(openssl passwd -1 "$p") <username>

যেখানে Creditণ জমা আছে: পাসওয়ার্ড জেনারেশন অনুরূপ পদ্ধতি থেকে /dev/urandomপরিবর্তিত পরিবর্তে ব্যবহার করা হয়েছে openssl


2

useradd কাজ করা উচিত (আমি এটি উবুন্টুতে করেছি)। হতে পারে যাচাই করে নিন যে আপনার প্রতিটি আর্গোগুলি সঠিক (আপনার গ্রুপ উপস্থিত রয়েছে, পাথটি বশ করার জন্য সঠিক)। আপনি কেবল একটি পাসওয়ার্ড এবং ব্যবহারকারীর সাহায্যে কমান্ডটি চালাতে পারেন এবং তারপরে সমস্যাটি কী কী ঘটছে তা দেখতে (ব্রুট ফোর্স পদ্ধতির) দেখতে মুছে ফেলার জন্য ইউজারডেল ব্যবহার করে আরও পরামিতিগুলি নিয়ে আবার চেষ্টা করুন।

রয়েছে newusers (man পৃষ্ঠা দেখুন), উবুন্টু, যেখানে আপনি এটি তথ্য মত passwd ফাইলের, প্লেইন টেক্সট পাসওয়ার্ড এবং এটা ঐ ব্যবহারকারীদের তৈরি করবে সহ একটি ফাইল দিতে অধীনে কমপক্ষে। একবারে অনেক ব্যবহারকারীকে করার দুর্দান্ত উপায়।


newusersউবুন্টুর জন্য কমান্ড উল্লেখের জন্য +1
লেভন

1

সবচেয়ে সহজ উপায় আমি খুঁজে পেয়েছি:


PASSWD="mySeCr3t-default-pa55" 
echo ${PASSWD} | passwd --stdin username_here

আপনি কি এটি পরীক্ষা করেছেন? passwd: unrecognized option '--stdin'
সেরিন

হ্যাঁ, আমি এটি বহুবার ব্যবহার করেছি তবে প্রায় অন্যান্য কমান্ডের মতো এটিও সমস্যার সমাধানের সমাধান নয়। Passwd বাইনারি কিছু বৈকল্পিক, --stdin সুইচ সমর্থন করে না।
মেলবার্সন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.