AD এর বিপরীতে লিনাক্স সার্ভারকে প্রমাণীকরণ করা কতটা বাস্তব?


18

আমরা আমাদের সফ্টওয়্যার ডেভলপমেন্ট সংস্থায় উইন্ডোজ এবং লিনাক্স উভয় সার্ভার ব্যবহার করি।

এই সেটআপটির সাথে একটি ঘর্ষণ পয়েন্ট হ'ল আমাদের কাছে কোনও সিঙ্গল অন সমাধান নেই solution লিনাক্সের চেয়ে মাইক্রোসফ্টের শপ বেশি হওয়া আমরা AD এর বিরুদ্ধে প্রমাণীকরণ করতে চাই।

আমি অনলাইনে বেশ কয়েকটি নিবন্ধ পড়েছি এবং এটি সম্ভব হতে পারে তা আমি বুঝতে পারি।

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

আমি যা জানতে চাই তা হল এই ধরণের সেটআপটি কতটা কার্যকর? এটি কি সত্যিই কাজ করে বা এটি ত্রুটি-প্রবণ হয়?


প্রত্যেকের দুর্দান্ত উত্তরের জন্য ধন্যবাদ, এটি সত্যিকারের বিশ্বে এই সেটআপটির অভিজ্ঞতা কী তা আমাকে আরও ভাল অনুভূতি দেয়। এটি সত্যই সহায়তা করে। এখানে সঠিক উত্তর নির্বাচন করা কঠিন কারণ এরা সকলেই প্রশ্নের উত্তর দেয়।
ফিলিপ ফৌরি

উত্তর:


11

এটি কঠিন নয় এবং এটি পুরোপুরি ব্যবহারিক।

আমাদের কাছে কয়েক শতাধিক দ্বৈত বুট ডেস্কটপ মেশিন রয়েছে যা এডি অনুমোদনের পাশাপাশি বেশ কয়েকটি সার্ভারগুলি ব্যবহার করে যা উইন্ডোজ ক্লায়েন্টকে তাদের সাম্বা শেয়ারগুলি ব্যবহারকারীর দ্বারা সুস্পষ্ট প্রমাণ ছাড়াই তাদের সাম্বা শেয়ারগুলি ব্যবহার করতে সক্ষম করতে ব্যবহার করে AD

আপনার কী করা উচিত তা সম্পর্কে এসএফ-তে আরও একটি নিবন্ধ ছিল।

মূলত আপনাকে কার্বেরোস, উইনবাইন্ড, এনএসএস এবং প্যাম কনফিগার করতে হবে।

তারপরে আপনি একটি kinitএবং একটি করবেন net ads joinএবং আপনার আপ করুন।

আপনি চাইলে লেখককে একাধিক পদ্ধতি ব্যবহার করতে পাম কনফিগার করতে পারেন, সুতরাং যদি কেউ কাজ না করে তবে এটি পরবর্তীটিতে পড়ে যাবে।

আমরা সাধারণত উইন্ডোজ সার্ভারগুলিতে ফাইলসারে সার্ভারগুলির জন্য ফাইল, উইনবাইন্ড এবং এলডিপ ব্যবহার করি।

যদি সম্ভব হয় তবে আমি অ্যাকাউন্টের তথ্যের জন্য এলডিএপ এবং উইন্ডবাইন্ডকে কঠোরভাবে লেখকের জন্য ব্যবহার করব তবে আমি বিশ্বাস করি আপনি যদি প্রয়োজন হয় তবে আপনি /etc/ldap.conf- এর মধ্যে বৈশিষ্ট্যগুলি মানচিত্র করতে পারেন। আপনি যদি অ্যাকাউন্টের তথ্যের জন্য উইনবাইন্ড ব্যবহার করে শেষ করেন তবে ইউআইডি / গিডগুলি তৈরি করতে আরআইডি (হ্যাশিং পদ্ধতি) ব্যবহার করা সম্ভব তবে অন্যান্য পদ্ধতি ব্যবহার করাও সম্ভব। আমরা একটি বৃহত ফাইলসভারে আরআইডি ব্যবহার করেছি এবং এটি একটি সত্যিকারের ব্যথা হয়েছে, তাই আমি যদি সম্ভব হয় তবে অন্য বিকল্পগুলির মধ্যে একটিরও চেষ্টা করে দেখতে পারি। আমাদের ক্ষেত্রে সমস্ত এডি ব্যবহারকারী এবং গোষ্ঠীগুলি একটি প্রবাহ আইডিএম সিস্টেম দ্বারা এলডিএপ এ প্রতিবিম্বিত হয়, তাই আমরা নতুন সার্ভারগুলিতে অ্যাকাউন্ট তথ্যের জন্য এলডিএপ ব্যবহার করি এবং উইনবাইন্ডকে খাঁটি লেখার জন্য ব্যবহার করি।


6

অনুরূপভাবে ওপেন ব্যবহার করে প্রমাণীকরণ করা একেবারে সহজ। http://www.likewise.com/products/likewise_open/index.php

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

একটি নোট হিসাবে, ইউআইডি এবং জিআইডি হ্যাশ ফাংশন অনুসারে বরাদ্দ করা হয়েছে, সুতরাং তারা পুরো অবকাঠামোতে অভিন্ন, সুতরাং এনএফএস মাউন্টগুলি পুরোপুরি কার্যকরভাবে কাজ করে।


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

3
লিঙ্কটি এখন ভাঙা হয়েছে
গোগাজ

দেখে মনে হচ্ছে (ওয়েব সাইটের সামগ্রী অনুসারে) সংস্থাটি আর এই পণ্যটি করছে না।
আলেক্সি মার্টিয়ানভ

4

আমি ইউনিক্সের জন্য উইন্ডোজ পরিষেবাদি ইনস্টল করে এডি তে "ইউনিক্স প্রমাণীকরণকারী" নামে একটি ব্যবহারকারী যুক্ত করেছি, তারপরে লিনাক্স মেশিনে নিম্নলিখিত কনফিগার ফাইল পরিবর্তন করেছি:

/etc/ldap.conf:
host ldap.<foo>.com
base cn=Users,dc=<foo>,dc=com
binddn cn=Unix Authenticator,cn=Users,dc=<foo>,dc=com
bindpw <password>
nss_base_passwd cn=Users,dc=<foo>,dc=com?sub
nss_base_shadow cn=Users,dc=<foo>,dc=com?sub
nss_base_group cn=Users,dc=<foo>,dc=com?sub
nss_map_objectclass posixAccount User
nss_map_objectclass shadowAccount User
nss_map_objectclass posixGroup Group
nss_map_attribute cn msSFUName
nss_map_attribute uid msSFUName
nss_map_attribute gid gidNumber
nss_map_attribute gecos sAMAccountName
nss_map_attribute homeDirectory msSFUHomeDirectory
nss_map_attribute uniqueMember Member
pam_login_attribute msSFUName
pam_filter objectclass=user
pam_password ad
/etc/ldap.secret:
<password>
/etc/nsswitch.conf -এ:
passwd: compat ldap
shadow: compat ldap
group: compat ldap
/etc/nsswitch.ldap:
host files dns
/etc/pam.d/system-auth:
auth required /lib/security/pam_env.so
auth sufficient /lib/security/pam_unix.so likeauth nullok
auth sufficient /lib/security/pam_ldap.so use_first_pass
auth required /lib/security/pam_deny.so

account sufficient /lib/security/pam_ldap.so
account required /lib/security/pam_unix.so

password required /lib/security/pam_cracklib.so retry=3
password sufficient /lib/security/pam_unix.so nullok md5 shadow use_authtok
password sufficient /lib/security/pam_ldap.so use_first_pass use_authtok
password required /lib/security/pam_deny.so

session required /lib/security/pam_limits.so
session required /lib/security/pam_unix.so

আশাকরি এটা সাহায্য করবে.


এটি একটি আকর্ষণীয় পদ্ধতির, ধন্যবাদ আমি এই অ্যাভিনিউটিও এক্সপ্লোর করব।
ফিলিপ ফৌরি

1
দয়া করে লেখকের জন্য পাম_ল্ডপ ব্যবহার করবেন না (/etc/pam.d/system-auth এ)। এটি আপনার পাসওয়ার্ডটি ক্লিয়ারটেক্সটে প্রেরণ করবে। আপনি যদি LDAP এর মাধ্যমে প্রমাণীকরণ করতে চান তবে আপনার LDAPS বা GSSAPI ব্যবহার করা উচিত। আপনি এনএসএস এবং কার্বেরোসের প্রমাণীকরণের জন্য
এলডিএপ

2

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

সবেমাত্র ইউএসইন প্লেইন সমবা


2

আপনার সাম্বা ব্যবহার করার দরকার নেই, এডি সরাসরি কারবেরোস এবং এলডিএপি সমর্থন করে। আপনার বেশিরভাগ বিতরণে কোনও বাহ্যিক সফ্টওয়্যার ব্যবহার করার কোনও কারণ নেই।

ডেবিয়ান / উবুন্টুর জন্য আপনি এটি libnss-ldap এবং libpam-krb5 দিয়ে করতে পারেন। এটি 100% পেতে কয়েকটি কৌশল রয়েছে। এটি ধরে নিয়েছে যে লিনাক্স ব্যবহারকারীদের জন্য আপনার "ইউনিক্সহোমডাইরেক্টরি" রয়েছে, আপনার লিনাক্স বাক্সগুলি আপনার উইন্ডোজ সিস্টেমগুলির সাথে এনটিপি সাধারণ ব্যবহার করছে (কার্বেরোস দ্বারা প্রয়োজনীয়) এবং আপনি সরল পাঠ্য এনএসএস লুপআপের সাথে ঠিক আছেন (পাসওয়ার্ড নয় তবে গোষ্ঠী সদস্যতার তথ্য ইত্যাদি) - টিএলএস ব্যবহার করুন তবে এটি সেট আপ করা আরও জটিল)। আপনি টিএলএস ব্যবহারের জন্য সেট আপ না করা থাকলে পামে পাসওয়ার্ড বা প্রমাণীকরণের উত্স হিসাবে আপনার পাম_ল্ডাপ থাকা উচিত নয়।

/etc/ldap.conf

# LDAP Configuration for libnss-ldap and libpam-ldap.
# Permit host to continue boot process with out contacting LDAP server
bind_policy soft
# Define LDAP servers to use for queries, these must be Global Catalog servers
uri ldap://ldap.site.company.local
# Define root search location for queries
base dc=company,dc=local
#debug 1
# LDAP version, almost always going to be v3, it is quite mature
ldap_version 3
# Username used to proxy authentication. You can have this in a separate file owned by root for security OR use TLS/SSL (see man page)
# Do NOT use LDAP for authentication if you are using plain text binds, use Kerberos instead (and LDAP for authorization only). See libpam-krb5.
binddn cn=ldap-auth-svc,ou=ldap,ou=services,dc=site,dc=company,dc=local
# Password for proxy acct
bindpw SooperSekeretPazzwerd
#  TCP port to perform queries on, 3268 is a Global Catalog port which will reply for all users in *.company.local
port 3268
# Search range scope (sub = all)
scope sub
# Tell the client to close TCP connctions after 30 seconds, Windows will do this on the server side anyways, this will prevent errors from showing up in the logs.
 idle_timelimit 30
# Expect queries for group membership to return DN for group members instead of usernames (lets you use MSAD group membership seamlessly)
nss_schema rfc2307bis
# Filters - User accounts must have a UID >= 2000 to be recognized in this configuration and must have a unixHomeDirectory defined.
nss_base_group dc=company,dc=local?sub?&(objectClass=group)(gidNumber=*)
nss_base_user dc=company,dc=local?sub?&(objectClass=user)(!(objectClass=localputer))(uidNumber>=2000)(unixHomeDirectory=*)
nss_base_shadow dc=company,dc=local?sub?&(objectClass=user)(!(objectClass=localputer))(uidNumber>=2000)(unixHomeDirectory=*)
# Object Class mappings.  You may want to have the posixAccount to map to "mail" and have users login with their email addresses, i.e.  "nss_map_objectclass posixAccount mail".
nss_map_objectclass posixAccount user
nss_map_objectclass shadowAccount user
nss_map_objectclass posixGroup group
# Attribute mappings.
nss_map_attribute uniqueMember member
nss_map_attribute uid sAMAccountName
nss_map_attribute homeDirectory unixHomeDirectory
nss_map_attribute shadowLastChange pwdLastSet
# Attribute in LDAP to query to match the username used by PAM for authentication
pam_login_attribute sAMAccountName
# Filter for objects which are allowed to login via PAM
pam_filter objectclass=User

আপনার /etc/krb5.conf এডিট করার দরকার নেই যে আপনার লিনাক্স বাক্সগুলি ডিএনএস সার্ভারগুলি ব্যবহার করছে যা AD সম্পর্কে জেনে আছে (উপযুক্ত এসআরভি রেকর্ডযুক্ত _msdcs অঞ্চলগুলি সমাধানযোগ্য)

/etc/nsswitch.conf- এ ব্যবহারকারী, গোষ্ঠী, ছায়া গোষ্ঠীর জন্য "ফাইলগুলি ldap" থাকা উচিত।

রেড হ্যাট এসএসএসডি ব্যবহারের জন্য:

/etc/sssd/sssd.conf

[domain/AD]
id_provider = ldap
auth_provider = krb5
chpass_provider = krb5
access_provider = ldap

ldap_uri = ldap://ldap.company.local:3268/
ldap_search_base = dc=company,dc=com
ldap_default_bind_dn = cn=ldap-auth-svc,ou=ldap,ou=services,dc=site,dc=company,dc=local
ldap_default_authtok = SooperSekeretPazzwerd
ldap_schema = rfc2307bis
ldap_user_object_class = user
ldap_group_object_class = group
ldap_user_name = sAMAccountName
ldap_user_home_directory = unixHomeDirectory
enumerate = true
ldap_tls_reqcert = never
ldap_tls_cacertdir = /etc/openldap/cacerts

ldap_id_use_start_tls = False
cache_credentials = True
krb5_realm = SITE.COMPANY.COM
case_sensitive = false
[sssd]
services = nss, pam
config_file_version = 2

domains = AD
[nss]
filter_users = root,named,avahi,nscd

এই দৃশ্যে আপনার কি AD এর কিছু পরিবর্তন করার দরকার আছে? আমার মনে আছে সাম্বা ব্যবহার করার সময় কিছু "উইন্ডোজের জন্য ইউনিক্স সরঞ্জাম" ইনস্টল করা প্রয়োজন?
মার্টিন নীলসেন

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

হ্যাঁ, আমি "এলডিপ / কার্বেরোস" লিখতে চেয়েছিলাম কি হয়েছে জানি না। আমার ভুল. তবে AD এর জন্য ইউনিক্স সরঞ্জামগুলি আসলে এলডিএপি / কার্বেরোসের প্রয়োজন হয় না?
মার্টিন নীলসেন
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.