এই বৈশিষ্ট্যের জন্য সমর্থিত সংস্করণগুলি: ফ্রন্টলাইন স্ট্যান্ডার্ড এবং ফ্রন্টলাইন প্লাস; বিজনেস প্লাস; এন্টারপ্রাইজ স্ট্যান্ডার্ড এবং এন্টারপ্রাইজ প্লাস; এডুকেশন ফান্ডামেন্টালস, এডুকেশন স্ট্যান্ডার্ড এবং এডুকেশন প্লাস; এন্টারপ্রাইজ এসেনশিয়ালস প্লাস। আপনার সংস্করণের তুলনা করুন
আপনার LDAP ক্লায়েন্টকে সিকিউর LDAP পরিষেবার সাথে সংযুক্ত করার চেষ্টা করার আগে, ঐচ্ছিকভাবে আপনি ldapsearch , ADSI , অথবা ldp.exe এর মতো সহজ সরঞ্জামগুলি ব্যবহার করে একটি দ্রুত সংযোগ পরীক্ষা করতে চাইতে পারেন। আপনার LDAP ক্লায়েন্টকে পরিষেবার সাথে সংযুক্ত করার চেষ্টা করার সময় যদি কোনও ত্রুটির সম্মুখীন হন তবে এই সরঞ্জামগুলি সমস্যা সমাধানের জন্যও ব্যবহার করা যেতে পারে।
নীচের বিভাগগুলিতে বর্ণিত পরীক্ষাগুলি আপনাকে বুঝতে সাহায্য করে যে আপনার পক্ষ থেকে কোনও কনফিগারেশন সমস্যা আছে কিনা, সাধারণ ত্রুটির বার্তা এবং সেই সমস্যাগুলি কীভাবে সমাধান করা যেতে পারে তার সুপারিশ।
এই প্রবন্ধে নিম্নলিখিত বিভাগগুলি রয়েছে:
- সংযোগ যাচাই করুন এবং একটি LDAP কোয়েরি চালান
একটি LDAP কোয়েরি চালানোর মাধ্যমে আপনি নিশ্চিত করতে পারবেন যে আপনি Secure LDAP-এর সাথে সংযোগ স্থাপন করতে এবং কোয়েরি সম্পাদন করতে পারবেন। - প্রয়োজনে, বেসিক কানেক্টিভিটি টেস্টিং চালান
যদি LDAP কোয়েরি চালানো ব্যর্থ হয়, তাহলে নেটওয়ার্ক অ্যাক্সেস এবং প্রমাণীকরণ পরীক্ষা করার জন্য মৌলিক সংযোগ পরীক্ষা চালান।
দ্রষ্টব্য: এই প্রক্রিয়া চলাকালীন যদি আপনার Google Workspace সাপোর্ট বা ক্লাউড আইডেন্টিটি প্রিমিয়াম সাপোর্টের সাথে যোগাযোগ করার প্রয়োজন হয়, তাহলে কমান্ডের আউটপুট সংরক্ষণ করতে ভুলবেন না। সাপোর্ট টিমের সাথে শেয়ার করার আগে আউটপুট থেকে ব্যক্তিগতভাবে শনাক্তযোগ্য যেকোনো তথ্য মুছে ফেলতে ভুলবেন না।
সংযোগ যাচাই করুন এবং একটি LDAP কোয়েরি চালান
একবার আপনি গুগল অ্যাডমিন কনসোলে সিকিউর LDAP পরিষেবা সেট আপ করার পরে, আপনি সিকিউর LDAP এর সাথে সংযোগ যাচাই করার জন্য এই তিনটি সহজ সরঞ্জামের একটি ব্যবহার করতে পারেন: ldapsearch , ADSI , অথবা ldp.exe । বিস্তারিত এবং নির্দেশাবলীর জন্য, নীচের বিভাগগুলি দেখুন।
ldapsearch সম্পর্কে
একটি মৌলিক LDAP কোয়েরি তৈরি করতে কমান্ড লাইন থেকে ldapsearch ইউটিলিটি ব্যবহার করুন। একটি সফল LDAP কোয়েরি ফলাফল নির্দেশ করে যে LDAP ক্লায়েন্ট এবং অন্তর্নিহিত TLS সেশন এবং TCP সংযোগটি ইচ্ছাকৃতভাবে কাজ করছে।
ldapsearch এর সাথে সংযোগ পরীক্ষা করতে:
- একটি LDAP কনফিগারেশন তৈরি করুন এবং LDAP ক্লায়েন্ট যোগ করুন এর নির্দেশাবলী অনুসরণ করে সার্টিফিকেটটি ডাউনলোড করুন।
দ্রষ্টব্য: পরীক্ষার পরিবেশ সহজ করার জন্য, নিশ্চিত করুন যে আপনি যে সাংগঠনিক ইউনিটের জন্য LDAP ক্লায়েন্ট অ্যাক্সেস অনুমোদন করেছেন সেখানে কমপক্ষে একজন ব্যবহারকারী আছেন।
- একটি LDAP কোয়েরি সম্পাদন করুন। এই উদাহরণটি একটি নির্দিষ্ট ব্যবহারকারীকে কোয়েরি করে (আরও বিস্তারিত জানার জন্য, OpenLDAP ldapsearch দেখুন)।
LDAPTLS_CERT={crt_file} LDAPTLS_KEY={key_file} ldapsearch -H ldaps://ldap.google.com:636 -b dc={domain},dc={domain} '(mail={user_email})'স্থানধারকগুলি নিম্নরূপে প্রতিস্থাপন করুন:
- {crt_file} .crt ফাইলের নাম
- {key_file} .key ফাইলের ফাইলের নাম
- {domain} ডোমেন নামের প্রতিটি অংশ, উদাহরণস্বরূপ: example.com "dc=example,dc=com" হয়ে যাবে।
- {user_email} ডোমেনের একজন ব্যবহারকারীর প্রাথমিক ইমেল ঠিকানা।
ldapsearch ব্যবহারের বিষয়ে নোটস
- যদি কোন BindDN মান প্রদান করা না থাকে, তাহলে ldapsearch অনুসন্ধান অনুমোদনের জন্য কী এবং সার্টিফিকেট ব্যবহার করে।
- যদি BindDN মানটি একটি LDAP ব্যবহারকারীর নাম হয় যা আপনি অ্যাডমিন কনসোলে তৈরি করেছেন , তাহলে ldapsearch অ্যাডমিন কনসোলে কনফিগার করা LDAP ক্লায়েন্টের অনুমতি ব্যবহার করবে।
ldapsearch -H ldaps://ldap.google.com:636 -b dc={domain},dc={domain} -D {ldap_access_credentials_username} -W '(mail={user_email}) - যদি BindDN মানটি কোনও ওয়ার্কস্পেস ব্যবহারকারীর ইমেল ঠিকানা বা LDAP বিশিষ্ট নাম হয়, তাহলে ldapsearch সেই ব্যবহারকারীর অনুমতির ভিত্তিতে অনুসন্ধানের জন্য তার শংসাপত্র ব্যবহার করবে।
ldapsearch -H ldaps://ldap.google.com:636 -b dc={domain},dc={domain} -D {workspace_username@domain} -W '(mail={user_email})'
স্টানেলের সাথে ldapsearch ব্যবহার করুন
যদি আপনার স্থাপনার জন্য stunnel ব্যবহার করার প্রয়োজন হয়, তাহলে এই পদক্ষেপগুলি অনুসরণ করুন:
- অ্যাডমিন কনসোলে, ldapsearch-এর প্রয়োজনীয় ব্যবহারকারীর নাম এবং পাসওয়ার্ড তৈরি করতে অ্যাক্সেস শংসাপত্র তৈরি করুন ।
- নিম্নলিখিত কমান্ডটি ব্যবহার করুন:
ldapsearch -x -D "{username}" -w {password} -H ldap://{stunnel_host}:{stunnel_port} -b dc={domain},dc={domain} '(mail={user_email})'স্থানধারকগুলি নিম্নরূপে প্রতিস্থাপন করুন:
- অ্যাডমিন কনসোলে তৈরি করা শংসাপত্র থেকে {username} ব্যবহারকারীর নাম
- {password} অ্যাডমিন কনসোলে তৈরি শংসাপত্র থেকে পাসওয়ার্ড
- {stunnel_host} : আপনার নেটওয়ার্কে stunnel চলমান মেশিনের IP ঠিকানা বা হোস্টনাম।
- {stunnel_port} : যে পোর্টে stunnel চলছে, আপনার stunnel কনফিগারেশন পরীক্ষা করুন।
- {user_email} ডোমেনের একজন ব্যবহারকারীর প্রাথমিক ইমেল ঠিকানা
ldapsearch কমান্ডের সফল দৃশ্যকল্প
ldapsearch কমান্ডের একটি সফল আউটপুট ব্যবহারকারীর ইমেল ঠিকানা (LDAP ক্লায়েন্ট তৈরি করার সময় নির্দিষ্ট করা হয়েছে) LDIF ফর্ম্যাটে তালিকাভুক্ত করবে।
উদাহরণস্বরূপ:
# extended LDIF
#
# LDAPv3
# base <dc=example,dc=com> with scope subtree
# filter: (objectclass=*)
# requesting: ALL
#
# example.com
dn: dc=example,dc=com
objectClass: top
objectClass: domain
objectClass: dcObject
dc: example
# admin-group, Groups, example.com
dn: cn=admin-group,ou=Groups,dc=example,dc=com
objectClass: top
objectClass: groupOfNames
objectClass: posixGroup
cn: admin-group
displayName: admin-group
description:
gidNumber: 12345
member: uid=admin,ou=Users,dc=example,dc=com
memberUid: admin
googleAdminCreated: FALSE
# example-user, Users, example.com
dn: uid=example-user,ou=Users,dc=example,dc=com
objectClass: top
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
objectClass: posixAccount
uid: example-user
googleUid: example-user
posixUid: example-user
cn: example-user
cn: FirstName LastName
sn: FirstName
displayName: FirstName LastName
givenName: FirstName
mail: example-user@example.com
uidNumber: 12345
gidNumber: 12345
homeDirectory: /home/example-user
loginShell: /bin/bash
gecos:
সম্ভাব্য ত্রুটি
- OpenLDAP ক্লায়েন্ট এবং/অথবা লাইব্রেরি SNI সমর্থন ছাড়াই কম্পাইল করা হয়
SNI (সার্ভার নেম ইন্ডিকেশন) LDAP ক্লায়েন্ট দ্বারা সমর্থিত হওয়া আবশ্যক (এই ক্ষেত্রে OpenLDAP )। যদি SNI উপলব্ধ না থাকে, তাহলে আপনি নিম্নলিখিতগুলির মতো একটি ত্রুটি দেখতে পাবেন:
SASL/EXTERNAL authentication started
ldap_sasl_interactive_bind_s: Unknown authentication method (-6)
additional info: SASL(-4): no mechanism available:
সুপারিশ:- আপনি যদি MacOS ব্যবহার করেন, তাহলে SASL ডিফল্টরূপে সক্রিয় থাকে এবং "-x" বিকল্পটি ব্যবহার করে এটিকে বাইপাস করা যেতে পারে।
- ldapsearch- এ
-d5বিকল্পটি যোগ করুন এবং নিম্নলিখিত লাইনের আউটপুট পরীক্ষা করুন:
TLS certificate verification: depth: 0, err: 18, subject: /OU=No SNI provided; please fix your client.
ldapsearch স্ট্যাটাস 0 (সফল) ফেরত দেয় কিন্তু কোনও ব্যবহারকারী আউটপুট পায় না
ক্লায়েন্ট সার্টিফিকেটের সাথে ldapsearch বিকল্প-x(SASL প্রমাণীকরণ ব্যবহার করুন) নির্দিষ্ট করলে সফলভাবে প্রমাণীকরণ হবে কিন্তু ডোমেনে ব্যবহারকারীদের তালিকাভুক্ত করা হবে না।
সুপারিশ:-xবিকল্পটি সরিয়ে আবার চেষ্টা করুন।
ADSI সম্পাদনা (উইন্ডোজ)
- ক্লায়েন্ট সার্টিফিকেট ইনস্টল করতে ldp.exe (উইন্ডোজ) এর ১-১১ ধাপ অনুসরণ করুন।
- অ্যাকশন > কানেক্ট টু…-এ যান।
- নিম্নলিখিত সংযোগ সেটিংস লিখুন:
নাম: আপনার সংযোগের জন্য একটি নাম টাইপ করুন, যেমন Google LDAP ।
সংযোগ বিন্দু: "একটি বিশিষ্ট নাম বা নামকরণ প্রসঙ্গ নির্বাচন করুন বা টাইপ করুন"
আপনার ডোমেইন নামটি DN ফর্ম্যাটে লিখুন (উদাহরণস্বরূপ, dc=example,dc=com example.com )।
কম্পিউটার: "একটি ডোমেন বা সার্ভার নির্বাচন করুন বা টাইপ করুন"
ldap.google.com সম্পর্কে
SSL-ভিত্তিক এনক্রিপশন ব্যবহার করুন: চেক করা হয়েছে - Advanced... এ ক্লিক করুন, এবং নিম্নলিখিত বিবরণ লিখুন:
শংসাপত্র নির্দিষ্ট করুন: চেক করা হয়েছে
ব্যবহারকারীর নাম: অ্যাডমিন কনসোল থেকে অ্যাক্সেস শংসাপত্র ব্যবহারকারীর নাম
পাসওয়ার্ড: অ্যাডমিন কনসোল থেকে অ্যাক্সেস ক্রেডেনশিয়াল পাসওয়ার্ড
পোর্ট নম্বর: ৬৩৬
প্রোটোকল: LDAP
সহজ বাইন্ড প্রমাণীকরণ: চেক করা হয়েছে - ঠিক আছে ক্লিক করুন, এবং তারপর আবার ঠিক আছে ক্লিক করুন।
- যদি সংযোগ সফল হয়, তাহলে বেস DN-এর ডিরেক্টরি বিষয়বস্তু ডান প্যানেলে প্রদর্শিত হবে।
ldp.exe (উইন্ডোজ)
- OpenSSL ইনস্টল করুন।
- সার্টিফিকেট এবং কী ফাইলগুলিকে একটি PKCS12 ফর্ম্যাট করা ফাইলে রূপান্তর করুন। একটি কমান্ড প্রম্পটে, নিম্নলিখিতটি লিখুন:
openssl pkcs12 -inkey ldap-client.key -in ldap-client.crt -export -out ldap-client.p12
আউটপুট ফাইল এনক্রিপ্ট করার জন্য একটি পাসওয়ার্ড লিখুন। - কন্ট্রোল প্যানেলে যান।
- অনুসন্ধান বাক্সে, "certificate" অনুসন্ধান করুন এবং ব্যবহারকারীর সার্টিফিকেট পরিচালনা করুন এ ক্লিক করুন।
- অ্যাকশন > সকল কাজ > আমদানি... এ যান।
- বর্তমান ব্যবহারকারী নির্বাচন করুন, এবং পরবর্তী ক্লিক করুন।
- ব্রাউজ করুন... এ ক্লিক করুন।
- ডায়ালগ বক্সের নীচের ডান কোণে ফাইল টাইপ ড্রপডাউনে, ব্যক্তিগত তথ্য বিনিময় (*.pfx;*.p12) নির্বাচন করুন।
- ধাপ ২ থেকে ldap-client.p12 ফাইলটি নির্বাচন করুন, Open এ ক্লিক করুন, এবং তারপর Next এ ক্লিক করুন।
- ধাপ ২ থেকে পাসওয়ার্ডটি প্রবেশ করান এবং পরবর্তী ক্লিক করুন।
- ব্যক্তিগত সার্টিফিকেট স্টোর নির্বাচন করুন, পরবর্তী ক্লিক করুন, এবং তারপর শেষ ক্লিক করুন।
- Ldp.exe চালান।
- সংযোগ > সংযোগ করুন... এ যান।
- নিম্নলিখিত সংযোগের বিবরণ লিখুন:
সার্ভার: ldap.google.com
পোর্ট: ৬৩৬
সংযোগহীন: চেক করা হয়নি
SSL: চেক করা হয়েছে - ঠিক আছে ক্লিক করুন।
- ভিউ > ট্রি- তে যান।
- বেস DN লিখুন। এটি আপনার DN ফর্ম্যাটে ডোমেন নাম। (উদাহরণস্বরূপ, dc=example,dc=com example.com এর জন্য)।
- ঠিক আছে ক্লিক করুন।
- যদি সংযোগ সফল হয়, তাহলে বেস DN-এর ডিরেক্টরি বিষয়বস্তু ডান প্যানেলে প্রদর্শিত হবে।
প্রয়োজনে, বেসিক কানেক্টিভিটি টেস্টিং চালান
যদি আপনি Verify connectivity-এ সফল ফলাফল পেতে এবং LDAP কোয়েরি চালাতে না পারেন, তাহলে সংযোগ পরীক্ষার জন্য এই বিভাগের নির্দেশাবলী অনুসরণ করুন। যদি ldapsearch প্রত্যাশিত ব্যবহারকারীকে ফিরিয়ে আনতে সফল না হয় এবং অন্তর্নিহিত TLS সেশন সফল হয়েছে এমন স্পষ্ট ইঙ্গিত না দেয়, তাহলে OpenSSL ক্লায়েন্ট ব্যবহার করে যাচাই করুন যে OpenLDAP যে নেটওয়ার্ক স্তরগুলির উপর নির্ভর করে সেগুলি প্রত্যাশিতভাবে কাজ করছে।
মৌলিক সংযোগ পরীক্ষা পরিচালনা করতে:
আপনার অপারেটিং সিস্টেমের জন্য openssl ক্লায়েন্ট ইউটিলিটি ইনস্টল করুন।
বেশিরভাগ GNU/Linux ডিস্ট্রিবিউশন "openssl" প্যাকেজ নাম ব্যবহার করে। অন্যান্য অপারেটিং সিস্টেম সম্পর্কে বিস্তারিত দেখুন।
openssl ক্লায়েন্ট ব্যবহার করে সিকিউর LDAP পরিষেবার সাথে ম্যানুয়াল সংযোগ তৈরি করুন:
openssl s_client -connect ldap.google.com:636openssl s_client আউটপুটের শেষে নিম্নলিখিত লাইনটি উপস্থিত থাকলে SSL আলোচনা সফল হয়েছে কিনা তা নিশ্চিত করুন:
Verify return code: 0 (ok)
সম্ভাব্য ত্রুটি
OpenSSL ক্লায়েন্ট/লাইব্রেরি SNI (সার্ভার নেম ইন্ডিকেশন) সমর্থন করে না।
সংযোগ পরীক্ষার সময়, নিম্নলিখিত আউটপুটটি ফেরত পাঠানো হতে পারে:
Verify return code: 18 (self signed certificate)
সিকিউর LDAP পরিষেবার জন্য একটি TLS ক্লায়েন্ট প্রয়োজন যা SNI (সার্ভার নেম ইন্ডিকেশন) ব্যবহার করে একটি TLS সেশন সমর্থন করে এবং শুরু করে। যদি TLS ক্লায়েন্ট SNI সমর্থন না করে, তাহলে TLS সার্ভার (ldap.google.com) একটি স্ব-স্বাক্ষরিত শংসাপত্র ফেরত দেয় যা CA বৈধতা পরীক্ষায় উত্তীর্ণ হবে না, যা নির্দেশ করে যে SNI প্রয়োজনীয়।
আউটপুটের শুরুর কাছাকাছি নিম্নলিখিত লাইনের জন্য OpenSSL ক্লায়েন্ট আউটপুট পরীক্ষা করে এই আচরণটি নিশ্চিত করা যেতে পারে:
depth=0 OU = "No SNI provided; please fix your client.", CN = invalid2.invalid
এই ত্রুটির কারণগুলির মধ্যে একটি OpenSSL সংস্করণ অন্তর্ভুক্ত থাকতে পারে যা SNI সমর্থন করে না, অথবা এমন একটি অ্যাপ্লিকেশন যা SNI স্পষ্টভাবে অক্ষম করে OpenSSL লাইব্রেরি ব্যবহার করে।
সংযোগ প্রত্যাখ্যান করা হয়েছে
যদি নিম্নলিখিত আউটপুটটি ফেরত দেওয়া হয়—যেখানে {timestamp} হল মাইক্রোসেকেন্ডে একটি UNIX টাইমস্ট্যাম্প—TLS আলোচনা শুরু হওয়ার আগে TCP সংযোগটি সক্রিয়ভাবে প্রত্যাখ্যান করা হচ্ছে:
{timestamp}:error:0200206F:system library:connect:Connection refused:crypto/bio/b_sock2.c:110:
{timestamp}:error:2008A067:BIO routines:BIO_connect:connect error:crypto/bio/b_sock2.c:111:connect:errno=111
এটি নিম্নলিখিত কারণে হতে পারে:
- স্থানীয় মেশিনে একটি অ্যাপ্লিকেশন-স্তর বা সিস্টেম-স্তরের ফায়ারওয়াল
- একই ফিজিক্যাল নেটওয়ার্ক বা আপস্ট্রিম নেটওয়ার্কে একটি ফায়ারওয়াল
তদন্ত করতে, কোন হোস্ট সংযোগ প্রত্যাখ্যান করছে তা নির্ধারণ করতে tcptraceroute ব্যবহার করুন—উদাহরণস্বরূপ, tcptraceroute ldap.google.com 636 ।