ওপেনলডিপ, সাম্বা এবং পাসওয়ার্ড বার্ধক্য


13

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

সমস্যাটি হ'ল এলডিএপি-র সাম্বা এবং পসিক্স অ্যাকাউন্টগুলি বিভিন্ন পাসওয়ার্ড হ্যাশিং এবং বার্ধক্যের তথ্য ব্যবহার করে। পাসওয়ার্ডগুলি নিজে সিঙ্ক্রোনাইজ করার সময় সহজেই ( ldap password sync = Yesইন smb.conf), মিশ্রণে পাসওয়ার্ড বার্ধক্য যুক্ত করে জিনিসগুলি ভেঙে দেয়: সাম্বা শ্যাডলাস্টচঞ্জ আপডেট করে না। একসাথে obey pam restrictions = Yesএকটি সিস্টেম তৈরি করে যেখানে উইন্ডোজ ব্যবহারকারী পুরানো পাসওয়ার্ড পরিবর্তন করতে পারে না, তবে যদি আমি এটি ব্যবহার না করি তবে হোম ডিরেক্টরি স্বয়ংক্রিয়ভাবে তৈরি হবে না। বিকল্পটি হল পাসওয়ার্ড পরিবর্তনের জন্য এলডিএপি বর্ধিত ক্রিয়াকলাপটি ব্যবহার করা, তবে smbk5pwdমডিউলটি সেট করে না। সবচেয়ে খারাপ বিষয়, ওপেনলডিএপ রক্ষণাবেক্ষণকারী এটি আপডেট / প্যাচগুলি গ্রহণ করবেন না কারণ এই ক্ষেত্রটিকে অবচিত বলে মনে করা হয়।

সুতরাং, আমার প্রশ্নটি হল, সর্বোত্তম সমাধানটি কী? এগুলির উত্থান-পতনগুলি কী কী?

  1. LDAP ppolicyএবং অভ্যন্তরীণ LDAP পাসওয়ার্ড বার্ধক্য ব্যবহার করবেন?

    1. এনএসএস, পিএএম মডিউল, সাম্বা, অন্যান্য সিস্টেমগুলির সাথে এটি কতটা ভাল কাজ করে?
    2. ছায়া নয়, পিপলিসি ব্যবহারের জন্য কী এনএসএস এবং পিএএম মডিউলগুলি বিশেষ উপায়ে কনফিগার করা দরকার?
    3. গোসা কি পলিসির সাথে কাজ করে?
    4. ppolicyসক্রিয় এলডিএপি নিয়ে কাজ করতে পারে এমন আরও প্রশাসনিক সরঞ্জাম রয়েছে ?
  2. একসাথে একটি পরিবর্তন পাসওয়ার্ড স্ক্রিপ্ট হ্যাক করুন যা এলডিএপিতে ক্ষেত্রটিকে আপডেট করে। (ব্যবহারকারী নিজে পাসওয়ার্ড পরিবর্তন না করেই ক্ষেত্রটি আপডেট করবেন এমন সম্ভাবনা রেখে)


এটি একটি দক্ষতার সাথে লিখিত প্রশ্ন is আমি আশা করি আমি এটির সাথে আপনাকে সহায়তা করতে পারি ...
gWaldo

উত্তর:


1

আমি আমার নিজের ওপেনলডিএপ ওভারলে লিখেছি যখনই কোনও এক্সপ পাসওয়ার্ড পরিবর্তন ঘটে তখন অ্যাট্রিবিউটটি shadowlastchangeআপডেট করার জন্য ডাকা shadowLastChangeহয়। এটি এতে সক্রিয় করা হয়েছে slapd.conf:

moduleload smbk5pwd
moduleload shadowlastchange
...

database bdb
...
overlay smbk5pwd
overlay shadowlastchange

আমি smb.confএক্সপ এর মাধ্যমে পাসওয়ার্ড পরিবর্তন করতে কনফিগার করেছি:

ldap passwd sync = Only

তারপরে, প্রতিটি অ্যাকাউন্টের জন্য, shadowMaxপাসওয়ার্ডটি বৈধ হওয়ার দিন নির্ধারণ করুন । ওপেনলডিএপি মডিউলগুলি বাকিটির যত্ন নেয়!


আপনি কি এটি একসাথে চালানোর চেষ্টা করেছেন?
হুবার্ট কারিও

না, দয়া করে এটি চেষ্টা করুন এবং আমাকে কীভাবে তা জানাতে দিন।
200_সুসেসি

দেখে মনে হচ্ছে হয় ppolicyবা smbk5pwdডেবিয়ান লুৎফর OpenLDAP মধ্যে প্রতিস্থাপক না আপডেটের shadowLastChange। ইয়া দেবিয়ান!
হুবার্ট কারিও

1

স্টপ-গ্যাপ হিসাবে আমি সাম্বার জন্য স্ক্রিপ্ট তৈরি করেছি যা shadowLastChangeপাসওয়ার্ড পরিবর্তনের বিষয়ে আপডেট করবে :

#!/bin/sh
# script to update shadowLastChange when samba updates passwords
# it's not needed when using 'passwd', it does update the field,
# even if pam_ldap is using LDAP Extented Operation to change password

LDAP_MODIFY="/usr/bin/ldapmodify"
LDAP_SEARCH="/usr/bin/ldapsearch"
LDAP_USER="uid=shadow-update,ou=Services,dc=example,dc=com"
LDAP_PASSWORD="change-me"
LDAP_HOST="localhost"

# get date
SLC=$((`date '+%s'` / 24 / 3600))

# get user login name
user=$1

# find user's DN
dn=$($LDAP_SEARCH -x -h $LDAP_HOST -LLL -b dc=example,dc=com "(uid=$user)" dn)
dn=${dn#dn:}

# check if DN is not base64 encoded
if [ "${dn:0:1}" = ":" ]; then
        # update password change date
        echo "dn:$dn
changetype: modify
replace: shadowLastChange
shadowLastChange: $SLC" | cat | $LDAP_MODIFY -x -h "$LDAP_HOST" \
 -D "$LDAP_USER" -w "$LDAP_PASSWORD" > /dev/null 2>&1
else
        # update password change date
        echo "dn: $dn
changetype: modify
replace: shadowLastChange
shadowLastChange: $SLC" | cat | $LDAP_MODIFY -x -h "$LDAP_HOST" \
 -D "$LDAP_USER" -w "$LDAP_PASSWORD" > /dev/null 2>&1
fi

err=$?

if [ ! $err -eq 0 ]; then
   echo "error: can't update shadowLastChange: $err"
   echo "`date`: shadow.sh: can't update shadowLastChange: $err"\
       >> /var/log/shadow-update.log
   exit;
fi

echo OK

সাম্বা সালে এটি প্রয়োজন কনফিগ unix password syncসেট yes, passwd chatসেট *OK*এবং passwd programসাথে উপরে স্ক্রিপ্টে "%u"PARAM হিসাবে।

সুনির্দিষ্ট একটি অ্যাকাউন্ট LDAP_USERএলডিএপিতে তৈরি করতে হবে এবং uidসমস্ত সাম্বা ব্যবহারকারীদের লেখার অধিকার এবং লেখার অধিকারের অনুমতি দেওয়া উচিত shadowLastChange


1

(কাজ চলছে, আমি পরে বিশদ যুক্ত করব)

সবাইকে সুখবর! আমি পুরো জিনিসটি কমবেশি ... কাজ করার পরীক্ষার পরিবেশে পেয়েছি ...:

  1. পাসওয়ার্ড নীতি (উভয় মানের- এবং সময় অনুসারে) ওপেনলডিএপি স্তরে প্রয়োগ করা হয়েছে (ধন্যবাদ ppolicy, not24getএবং passwdqc)
  2. পাসওয়ার্ডগুলি সাম্বা এবং পসিক্সের মধ্যে উভয় উপায়ে সিঙ্ক্রোনাইজ করা হয়েছে (ধন্যবাদ smbk5pwd)। নোট: কোয়ালিটির সাম্বা এবং ppolicy সঙ্গে চেক অ সুস্পষ্ট: password check script( pwqcheck -1থেকে passwdqc) একই চেক দ্বারা LDAP করে সঞ্চালন করা দরকার অথবা ব্যবহারকারীর একটি অনুমতির পরিবর্তে অস্বীকৃত পাবেন "খুব সহজ পাসওয়ার্ড, বিভিন্ন চেষ্টা করুন।"
  3. পিএএম এবং সাম্বা উভয়ই ব্যবহারকারীকে সতর্ক করে দেয় যে পাসওয়ার্ডটি খুব শীঘ্রই শেষ হয়ে যাবে।
  4. ব্যবহারকারী ডিরেক্টরি হয় ব্যবহার করে তৈরি করাpam_mkhomedir
  5. আরএফসি 2307bis (এবং সম্পর্কিত স্কিমা) এর গোসা বাস্তবায়ন uidগ্রুপ এন্ট্রিগুলিতে সন্নিবেশ করে, সুতরাং এনআইএস ("UNIXy" বেশিরভাগ জিনিস) বা আরএফসি 2307bis স্কিমা (বেশিরভাগ "AD এর জন্য ডিজাইন করা" অ্যাপ্লিকেশন) প্রত্যাশিত অ্যাপ্লিকেশনগুলি ঠিক কাজ করে।

একমাত্র সমস্যা হ'ল একাউন্টটি অক্ষম করার জন্য সিএলআই সরঞ্জামগুলি ব্যবহার করা প্রয়োজন (বা গোসা পোস্টমডিফিকেশন স্ক্রিপ্ট লিখতে হবে) বা অ্যাকাউন্টটি কেবল পাম এবং সাম্বার জন্য এলডিএপি স্তরে লক করা হবে না। পাসওয়ার্ডের মেয়াদোত্তীর্ণকরণ এখনও প্রয়োগ করা হবে, সুতরাং এটি কোনও বড় সমস্যা নয়।


0

আমি গোসা বিকাশকারীদের একজনের কাছ থেকে উত্তর পেয়েছি। এই সময়ে গোসা কোনওভাবেই পলিসি ওভারলে সমর্থন করে না।

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