পোস্টফিক্স / উবুন্টু 12.04 এর সাথে কাজ করে এসএএসএল অক্সপ্রপ / স্যাসল্ডবি পাবেন না


9

আমার একটি উবুন্টু 8.04LTS সিস্টেম পোস্টফিক্স 2.5.5 চলছে। ঐ সিস্টেমে SMTP এর প্রমাণীকরণ রান জরিমানা । বিষয়বস্তু হ'ল /etc/postfix/sasl/smtpd.conf:

pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: PLAIN

এসএএসএল সম্পর্কিত বৈশিষ্ট্যগুলি হ'ল:

smtpd_sasl_type = cyrus
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = smtpd
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_local_domain = $myhostname

আমি যখন পাই তখন sudo sasldblistusers2:

authusername@mail.mydomain.com: userPassword

আমি যেমন বলেছিলাম, 8.04LTS সিস্টেমে সমস্ত কাজ করে।

যাইহোক, আমি এটি পোস্টফিক্স 2.9.3 চলমান একটি উবুন্টু 12.04LTS সিস্টেমে স্থানান্তরিত করার চেষ্টা করছি এবং আমি এটি কাজ করতে পারি না। আমি সব কিছু একই করছি তবে পোস্টফিক্স প্রতিবার প্রমাণীকরণের ব্যর্থতা দেয়।

এটি /etc/sasldb2ফাইল নয়। আমি পুরানো সিস্টেম থেকে ফাইলটি নিয়ে আসার চেষ্টা করেছি এবং এটি কার্যকর হয় না। এবং আমি এটি ব্যবহার করে একটি নতুন ফাইল তৈরি করেছি:

saslpasswd2 -c -u mail.mydomain.com authusername

এবং যে যদিও এটা কাজ না করে, করবে পুরাতন সিস্টেমে কাজ যদি আমি এটা পুরানো সিস্টেম, যা আমি কিভাবে জানি সেখানে ফাইলের সাথে কিছুই ভুল অনুলিপি করুন।

একইভাবে, আমি জানি যে পোস্টফিক্সটি smtpd.confফাইলটি দেখছে । আমি যদি mech_listফাইলটির লাইনে আরও মেকানিজম যুক্ত করি তবে আমি এসএমটিপিডি ডিমন সংযোগ করার সময় সেই অতিরিক্ত প্রক্রিয়াগুলির বিজ্ঞাপন দেওয়া দেখছি। এবং আমি তাদের সরিয়ে দিলে তারা আবার চলে যায়। তাই /etc/postfix/sasl/smtpd.confপরিষ্কারভাবে ব্যবহার করা হচ্ছে।

আমি প্রকৃত মেল ক্লায়েন্ট ব্যবহার করে এবং এটির সাথে টোকেন তৈরি করার পরে সার্ভারের সাথে ম্যানুয়ালি কথা বলার মাধ্যমে উভয়ই পরীক্ষা করছি:

perl -MMIME::Base64 -e 'print encode_base64("\000authusername\000thePassword");'

তারপর:

openssl s_client -quiet -starttls smtp -connect the.newsystem.com:587

ফলাফলের কথোপকথনটি হ'ল:

250 DSN
EHLO example.com
250-the.newsystem.com
250-PIPELINING
250-SIZE 20971520
250-ETRN
250-AUTH PLAIN
250-AUTH=PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
AUTH PLAIN theBase64EncodedToken
535 5.7.8 Error: authentication failed: authentication failure

তবে আমি পরিবর্তে যদি সংযুক্ত হয়ে the.oldsystem.com:587একই জিনিস করি তবে আমি পাই:

235 2.7.0 Authentication successful

নতুন মেশিনে স্যাসলফিংারের আউটপুট হল:

# sudoh saslfinger -s
saslfinger - postfix Cyrus sasl configuration Sat Jul 21 00:24:24 EDT 2012
version: 1.0.4
mode: server-side SMTP AUTH

-- basics --
Postfix: 2.9.3
System: Ubuntu 12.04 LTS \n \l

-- smtpd is linked to --
        libsasl2.so.2 => /usr/lib/i386-linux-gnu/libsasl2.so.2 (0xb76c5000)


-- active SMTP AUTH and TLS parameters for smtpd --
broken_sasl_auth_clients = yes
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_path = smtpd
smtpd_sasl_security_options = noanonymous
smtpd_sasl_type = cyrus
smtpd_tls_CAfile = /etc/ssl/certs/MyCA.pem
smtpd_tls_auth_only = yes
smtpd_tls_cert_file = /etc/postfix/ssl/server.crt
smtpd_tls_key_file = /etc/postfix/ssl/server.key
smtpd_tls_loglevel = 1
smtpd_tls_security_level = may
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_tls_session_cache_timeout = 3600s


-- listing of /usr/lib/sasl2 --
total 16
drwxr-xr-x  2 root root 4096 Jul 20 23:00 .
drwxr-xr-x 67 root root 8192 Jul 20 21:25 ..
-rw-r--r--  1 root root    1 May  4 00:17 berkeley_db.txt

-- listing of /etc/postfix/sasl --
total 20
drwxr-xr-x 2 root root 4096 Jul 20 21:29 .
drwxr-xr-x 5 root root 4096 Jul 20 23:58 ..
-rw-r--r-- 1 root root   64 Jul 20 21:29 smtpd.conf



-- content of /etc/postfix/sasl/smtpd.conf --
pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: PLAIN

-- content of /etc/postfix/sasl/smtpd.conf --
pwcheck_method: auxprop
auxprop_plugin: sasldb
mech_list: PLAIN


-- active services in /etc/postfix/master.cf --
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
smtp      inet  n       -       -       -       -       smtpd
submission inet n       -       -       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING

[snipping the rest of the services]

-- mechanisms on localhost --

-- end of saslfinger output --

আমি কী মিস করতে / ভুল করতে পারি? আমি যতদূর বলতে সক্ষম হয়েছি, সমস্ত কনফিগারেশন একই, তবুও এটি নতুন সিস্টেমে কাজ করবে না।

উত্তর:


15

বিস্মৃতি এখানে:

-- active services in /etc/postfix/master.cf --
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
smtp      inet  n       -       -       -       -       smtpd
submission inet n       -       -       -       -       smtpd

smtpdউপর প্রক্রিয়া submissionবন্দর chroot মোডে চালানো হয় (যেহেতু সেখানে একটি -কলামের যা ডিফল্টভাবে (হয় যার মানে মধ্যে yes) প্রযোজ্য এবং তাই দেখতে পাচ্ছি না /etc/sasldb2

যখন আমি কপি /etc/sasldb2করতে /var/spool/postfix/etcপ্রমাণীকরণ কাজ জরিমানা শুরু করে।


3
এই মন্তব্যটি আজ রাতের পোস্টফিক্স পাগলামির অবসান ঘটিয়েছে। এছাড়াও মনে রাখবেন যে এই কনফিগারেশনটি ব্যবহার করে প্রমাণীকরণের ব্যবহারকারী @ @ মাইহোস্টনামের প্রয়োজন হবে, এবং কেবল "ব্যবহারকারী" নয়। যা প্রমাণীকরণযোগ্য রিলে জন্য এটি এবং আমার অনুরূপ এক্সিম কনফিগারেশনের মধ্যে পৃথক।
ডেভিড ডম্ব্রভস্কি

5

chroot স্পষ্টতই কারণ, তবে আমার মামলার জন্য, অনুলিপিটি কার্যকর /var/spool/postfix/etcহয়নি।

সুতরাং আমি কেবল ক্রুট থেকে মুক্তি পেয়েছি এবং এটি আমার পক্ষে কাজ করে।

এনটি করার জন্য আপনাকে নীচের লাইনটি চিহ্নিত করতে /etc/postfix/master.cf সম্পাদনা করতে হবে:

smtp      inet  n       -       -       -       -       smtpd

এবং নিম্নলিখিত হিসাবে এটি পরিবর্তন করুন:

smtp      inet  n       -       n       -       -       smtpd

4

পোস্টফিক্সের ডিফল্ট ক্রুট কারাগারে স্যাসলডবি 2 ফাইল সিঙ্ক্রোনাইজ করার আরেকটি উপায় এটির সাথে একটি হার্ড লিঙ্ক যুক্ত করা:

ln /etc/sasldb2 /var/spool/postfix/etc/

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


আপনি সৌন্দর্যে, আমি একটি পরীক্ষার সার্ভার উবুন্টু 16 রিলে করতে পেরেছি, তাই ভেবেছিলাম আমি কেবল আমার প্রোডাকশন সার্ভার উবুন্টু 14 এ পরিবর্তনগুলি পুনরায় প্রয়োগ করব ... সমস্ত দিন চেষ্টা করে দেখছি trying ক্রুট এর কারণ ছিল, তবে ক্রুট না হওয়ার পরিবর্তনে আরও খারাপ ফলাফল এলো, তাই ক্রুটকে ধরে রেখে উপরে প্রয়োগ করা আমার সমস্যাগুলি সমাধান করেছে।
mrjamesmyers 21
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.