এলডিএপি এবং প্যাম ব্যবহার করে অ্যাকাউন্ট লগইনগুলিকে সীমাবদ্ধ


14

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

এলডিএপি প্রমাণীকরণ পুরোপুরি কাজ করছে is তবে আমি অ্যাকাউন্টের সীমাবদ্ধতাগুলি কাজ করতে পারি না: কর্মীদের অ্যাকাউন্টগুলির মধ্যে আইডি থাকবে 2001এবং তাদের সার্ভারে লগ ইন করার অনুমতি দেওয়ার 2999জন্য ssh-usersগ্রুপটির সদস্য হবে ।

প্রশ্নে বিধিনিষেধ রয়েছে /etc/ldap.conf, এবং pam_min_uid, pam_max_uidএবং pam_groupdn

pam_groupdnআমার ssh-usersগ্রুপে সম্পূর্ণ ডিএন রয়েছে । pam_min_uid= 2000এবং pam_max_uid= 2999

এখন, আমি এগুলি যুক্ত করে তাদের কাজ করতে সক্ষম হয়েছি:

account [success=1 default=ignore] pam_ldap.so

pam_unix.soলাইন উপরে /etc/pam.d/common-account। তবে স্থানীয় ইউনিক্স অ্যাকাউন্টগুলি তখন লগইন করতে পারবেন না: এসএসএইচ সার্ভারটি চেষ্টা করার সাথে সাথে সংযোগটি নষ্ট করে দেয়।

আমি উপরের ফাইলে pam_ldap.soমডিউলটি সেট করে রেখেছি sufficient, তবে তারপরে অবৈধ ব্যবহারকারীরা লগইন করতে পারবেন না বলে ম্যাসেজ পান তবে এটি সেভাবেই লগ ইন করে।

সুতরাং, ইউএনআইএক্স ব্যবহারকারীদের লগইন করার অনুমতি দেওয়ার সময় আমি কীভাবে এলডিএপি ব্যবহারকারীদের জন্য এই অ্যাকাউন্ট সীমাবদ্ধতাগুলি সেট করতে পারি?

আপনি সম্ভবত অনুমান করতে পারেন যে আমি প্যামের একজন নবাগত, যদিও আমি "স্বয়ংক্রিয়ভাবে হোম ডিরেক্টরিগুলি তৈরি করুন" মডিউলটি পরিচালনা করতে সক্ষম হয়েছি :-)

অনেক ধন্যবাদ, অ্যান্ডি

উত্তর:


11

প্যামের অ্যাক্সেস কন্ট্রোল লিস্টের ভিত্তিতে (অন্তত উবুন্টু) ভিত্তিতে অ্যাক্সেসকে সীমাবদ্ধ করার ক্ষমতা রয়েছে যা কুবসকম্যাকের উত্তর (+1) গোষ্ঠীগুলিকে পিক্সিক গ্রুপ হিসাবে বিবেচনা করে, তারা এলডিএপি /etc/groupবা এনআইএসে সঞ্চিত আছে কিনা ।

/etc/security/access.confঅ্যাক্সেস তালিকা ফাইল। আমার ফাইলে, আমি শেষে রেখেছি:

-:ALL EXCEPT root sysadmin (ssh-users):ALL

এটি রুট, সিসাদমিন এবং গ্রুপ এসএস-ব্যবহারকারীদের (যা এলডিএপিতে রয়েছে) বাদে সবাইকে অস্বীকার করে যেখানেই তারা (দ্বিতীয় ALL) লগইন করে ।

তারপরে আমার পিএএম অ্যাকাউন্ট ফাইলে (এটি একটি অ্যাকাউন্ট মডিউল), আমি একেবারে শেষে যুক্ত করব:

account required pam_access.so

যা পিএএম-কে এই ফাইলটি ব্যবহার করতে বলে। এটি একটি ট্রিট কাজ করে :-)


এটি লক্ষণীয় যে আপনার প্যাম অ্যাকাউন্ট ফাইলটি কার্যকর করার জন্য আপনাকে প্রথমে pam_access.so লাগাতে হবে।
21

5

আমি সহজভাবে ব্যবহার করতে হবে

auth required    pam_listfile.so   sense=accept item=group file=/etc/groups.allow onerr=fail

কেবলমাত্র নির্দিষ্ট গোষ্ঠীগুলিকে (স্থানীয় এবং এলডিএপি গ্রুপ উভয়ের জন্য) অনুমতি দেওয়ার জন্য। এইভাবে আপনাকে কোনও কিছু নির্দিষ্ট করতে হবে না ldap.conf

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

সম্পাদনা: তৃতীয়ত, আপনি যদি "অ্যাকাউন্ট" পাসে স্টাফ রাখার জন্য জোর দিয়ে থাকেন (যা আমি বিশ্বাস করি যে এতে অদ্ভুত পার্শ্ব প্রতিক্রিয়া থাকতে পারে), আপনার ক্রমটি শেষ হওয়া উচিত: ..., "পর্যাপ্ত পাম_লাপ", "প্রয়োজনীয় পাম_লোকালুজার", "প্রয়োজনীয় পাম_উনিক্স" । আমার অর্থ, আপনার যদি অন্য কোনও মডিউল থাকে তবে তাদেরকে পাম_ল্ডাপের আগে সরিয়ে দিন - অন্যথায় তারা "পর্যাপ্ত" ধারাটির কারণে এলডিএপি অ্যাকাউন্টগুলির জন্য অগ্রাহ্য হবে।


আমি মনে করি পাম_উনিক্স অ্যাকাউন্টের তথ্য পুনরুদ্ধার করার জন্য জেন্টেন্ট কলগুলি ব্যবহার করছে - যা /etc/nsswitch.conf হিসাবে LDAP ব্যবহার করে। এই লাইনগুলি PAM কনফিগারেশন ফাইলগুলিতে libpam-ldap প্যাকেজ ইনস্টলার দ্বারা যুক্ত করা হয়েছিল। পাম_গ্রুপডন-এর ডিফল্ট ক্রিয়াটি কিছুই করছে না, এবং উত্তরগুলি অনুসন্ধান করার সময়, কেউ বলেছে যে "অ্যাকাউন্ট" পাসের সময় পাম_ল্ডপ.সো মডিউল ব্যবহার না করা হলে এটি কার্যকর হবে না। যদি সম্ভব হয় তবে আমি সেটিংস ldap.conf এ রাখি কারণ এটি LDAP এর সাথে বিশেষভাবে সম্পর্কিত।
অ্যান্ডি শেলাম

(1) আপনি পাম_উনিক্স সম্পর্কে ঠিক বলেছেন। (২) আমি আমার উত্তরকে পাম_লোক্যালসার পরামর্শ দিয়ে আপডেট করছি।
কুবানচেক

আমি পিএএম সম্পর্কে যা কিছু পড়ি তা ইঙ্গিত করে যে অ্যাকাউন্টটি এটির জন্য সঠিক বিভাগ। প্রমাণীকরণ - ব্যবহারকারীকে সনাক্ত করে এবং অ্যাকাউন্ট অ্যাকাউন্টটি প্রমাণী করে - ব্যবহারকারীর অ্যাকাউন্টের বৈশিষ্ট্য যেমন পাসওয়ার্ড বার্ধক্য, লগইন সময়ের সীমাবদ্ধতা এবং দূরবর্তী লগইন বিধিনিষেধগুলি এটি কোনও প্রমাণীকরণের সমস্যা নয় - কারণ ব্যবহারকারীর নাম / পাসওয়ার্ড সঠিক, এবং ব্যবহারকারী হতে পারে শনাক্ত করেছে। এটি একটি অ্যাকাউন্ট বিধিনিষেধের কারণ আমি চাই না যে কয়েকটি অ্যাকাউন্ট লগইন করতে সক্ষম হোক।
অ্যান্ডি শেলাম

0

কেবলমাত্র @ অ্যান্ডি-শেল্লামে যুক্ত করতে, আমার common-accountফাইলটি এখানে :

account [success=2 new_authtok_reqd=done default=ignore] pam_unix.so
account [success=1 default=ignore]            pam_ldap.so
account requisite                     pam_deny.so
account required                      pam_access.so
account required                      pam_permit.so
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.