লঞ্চার পণ্য Bitnami ডকুমেন্টেশনimaxe CLI ব্লগ যোগাযোগ
imaxe smtp মেইল v1.0.0

আপনার সতর্কতা পৌঁছানো নিশ্চিত করুন

একটি smarthost-এর (SES, একটি কর্পোরেট relay…) মাধ্যমে সার্ভারের বহির্গামী মেইল কনফিগার করুন এবং একটি পরীক্ষামূলক পাঠানোর মাধ্যমে এটি কাজ করে তা নিশ্চিত করুন। একটি কমান্ড এটি সেট আপ করে; এরপর থেকে আপনার সিস্টেম বিজ্ঞপ্তিগুলো সত্যিই বেরিয়ে যায়।

$ imaxe smtp configure --host email-smtp.eu-west-1.amazonaws.com --from [email protected]
সংস্করণ
v1.0.0
সাবকমান্ড
5
কনফিগ
/etc/imaxe/smtp.yml
root প্রয়োজন
হ্যাঁ
পোর্ট
587 · TLS

এই মডিউল কী করে #

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

smtp মডিউলটি একটি smarthost-এর (এমন একটি relay যা প্রকৃতপক্ষে বিতরণের অনুমোদিত: Amazon SES, একটি কর্পোরেট মেইল সার্ভার, আপনার প্রদানকারী…) সাপেক্ষে হোস্টের বহির্গামী মেইল কনফিগার করে এটি সমাধান করে। এটি postfix সমন্বয় করে যাতে এটি সব সিস্টেম মেইল সেই smarthost-এ ফরোয়ার্ড করে, পাসওয়ার্ড নিরাপদে সংরক্ষণ করে, প্রেরককে পুনর্লিখন করে যাতে সেটি একটি বৈধ প্রেরক হয়, এবং এটি পৌঁছায় তা নিশ্চিত করতে পাঠানো পরীক্ষা করতে দেয় — কিছু ব্যর্থ হলে প্রকৃত ত্রুটি জানায়।

শুরু করার আগে

আপনার smarthost-এর তথ্য প্রস্তুত রাখুন: host, পোর্ট (সাধারণত 587), এবং প্রমাণীকরণ প্রয়োজন হলে শংসাপত্র। পাসওয়ার্ড কমান্ড লাইনে দেওয়া হয় না: এটি stdin থেকে বা secrets স্টোর থেকে পড়া হয়, তাই এটি কখনো আপনার হিস্টরিতে পৌঁছায় না।

দ্রুত নির্দেশিকাধাপে ধাপে কাজ

সাধারণ কাজ #

আপনি কী করতে চান তা বেছে নিন। প্রতিটি রেসিপিতে কমান্ডটি আগে থেকেই লেখা আছে — শুধু নিজের smarthost ও প্রেরক বসান এবং কপি করুন চাপুন।

1

মেইল relay কনফিগার করুন

সার্ভারকে আপনার smarthost-এর দিকে নির্দেশ করুন যাতে মেইল সত্যিই বেরিয়ে যায়।

ubuntu ব্যবহারকারী হিসেবে SSH-এর মাধ্যমে আপনার সার্ভারে সংযোগ করুন।

আপনার smarthost-এর তথ্য দিয়ে কমান্ডটি চালান। পাসওয়ার্ড stdin-এর মাধ্যমে চাওয়া হয়, তাই এটি কখনো আপনার হিস্টরিতে পৌঁছায় না:

terminal
$ sudo imaxe smtp configure \
    --host email-smtp.eu-west-1.amazonaws.com \
    --user AKIAIOSFODNN7EXAMPLE \
    --from [email protected]

আপনার smarthost-এর প্রমাণীকরণ প্রয়োজন না হলে, --user বাদ দিন। ভিন্ন পোর্ট বা TLS মোডের জন্য, --port বা --no-tls যোগ করুন।

Postfix এখন সব সিস্টেম মেইল আপনার smarthost-এ ফরোয়ার্ড করতে সেট আপ করা হয়েছে, প্রেরক [email protected]-তে পুনর্লিখিত। একটি পরীক্ষামূলক ইমেল পাঠান রেসিপি দিয়ে চালিয়ে যান।
2

একটি পরীক্ষামূলক ইমেল পাঠান

সতর্কতার উপর নির্ভর করার আগে একটি বার্তা বেরিয়ে গিয়ে পৌঁছায় তা নিশ্চিত করুন।

এমন একটি ঠিকানায় একটি পরীক্ষামূলক ইমেল পাঠান যেখানে আপনি তা যাচাই করতে পারেন:

terminal
$ sudo imaxe smtp test --to [email protected]

--to বাদ দিলে, এটি কনফিগার করা প্রেরকের কাছে পাঠানো হয়। বিতরণ নিশ্চিত করতে আপনার ইনবক্স (ও স্প্যাম ফোল্ডার) যাচাই করুন।

ইমেলটি পৌঁছালে, আপনার সার্ভার এখন আপনাকে জানাতে পারে। ব্যর্থ হলে, কমান্ডটি আপনাকে প্রকৃত MTA ত্রুটি দেখায় যাতে আপনি জানেন কী ঠিক করতে হবে।
3

মেইলের অবস্থা দেখুন

relay কনফিগার করা ও সক্রিয় কিনা এক নজরে যাচাই করুন।

relay, smarthost, প্রেরক ও MTA-র অবস্থার একটি সারসংক্ষেপ:

terminal
$ sudo imaxe smtp status

একটি স্ক্রিপ্ট বা ড্যাশবোর্ডের জন্য প্রয়োজন? মেশিন-পাঠযোগ্য আউটপুটের জন্য --json যোগ করুন:

terminal
$ sudo imaxe smtp status --json
বহির্গামী মেইল প্রস্তুত নাকি এখনো কনফিগার করা বাকি তা আপনি তাৎক্ষণিকভাবে জানবেন।
4

কার্যকর কনফিগারেশন দেখুন

পাসওয়ার্ড উন্মোচন না করে সক্রিয় সেটিংস যাচাই করুন।

প্রকৃতপক্ষে ব্যবহৃত host, পোর্ট, user, প্রেরক ও TLS মোড দেখায় (পাসওয়ার্ড কখনো ছাপা হয় না):

terminal
$ sudo imaxe smtp show
একটি পরীক্ষামূলক পাঠানোর আগে একটি সেটিং যাচাই করতে, বা হোস্টের কনফিগারেশন নথিভুক্ত করতে আদর্শ।
5

relay সরান

ফরোয়ার্ডিং নিষ্ক্রিয় করুন এবং postfix-কে তার আগের অবস্থায় ফিরিয়ে দিন।

বহির্গামী মেইল relay নিষ্ক্রিয় করুন এবং মূল postfix কনফিগারেশন পুনরুদ্ধার করুন:

terminal
$ sudo imaxe smtp remove
সার্ভার smarthost-এর মাধ্যমে ফরোয়ার্ড করা বন্ধ করে। আপনি যখনই চান configure দিয়ে আবার এটি সেট আপ করতে পারেন।
পরীক্ষামূলক ইমেল পৌঁছাচ্ছে না?

সবচেয়ে সাধারণ কারণ হলো প্রেরক smarthost-এ যাচাই করা নেই (SES-এর ডোমেইন বা --from ঠিকানা যাচাই করা প্রয়োজন), অথবা শংসাপত্র ভুল। imaxe smtp test চালান: এটি প্রকৃত MTA ত্রুটি ফেরত দেয় যাতে আপনি ঠিক জানেন কী সমন্বয় করতে হবে।

CLI রেফারেন্সকমান্ড, ফ্ল্যাগ ও ফাইল

সারসংক্ষেপ #

uso
imaxe smtp <subcomando> [--host HOST] [--from CORREO] [flags]

সব সাবকমান্ডের জন্য root প্রিভিলেজ প্রয়োজন (sudo ব্যবহার করুন) কারণ এগুলো postfix কনফিগারেশন স্পর্শ করে, /etc/imaxe/-তে লেখে ও সিস্টেম সার্ভিস রিলোড করে। smarthost পাসওয়ার্ড কখনো একটি ফ্ল্যাগ হিসেবে দেওয়া হয় না: এটি stdin থেকে বা secrets স্টোর থেকে পড়া হয়। স্ক্রিপ্টিং-এর উপযোগী মেশিন-পাঠযোগ্য আউটপুট পেতে status বা show-এ --json যোগ করুন।

সাবকমান্ড #

সাবকমান্ডকী করেপ্রাসঙ্গিক ফ্ল্যাগ
configureএকটি smarthost-এর সাপেক্ষে বহির্গামী মেইল relay কনফিগার করে। পাসওয়ার্ড secrets/stdin থেকে পড়া হয়।--host, --port, --user, --from, --tls / --no-tls
testএকটি পরীক্ষামূলক ইমেল পাঠায় এবং ব্যর্থ হলে প্রকৃত MTA ত্রুটি জানায়।--to
statusঅবস্থা: relay কনফিগার করা, smarthost, প্রেরক ও MTA সক্রিয়।--json
showপাসওয়ার্ড উন্মোচন না করে কার্যকর কনফিগারেশন দেখায়।--json
removerelay নিষ্ক্রিয় করে এবং postfix পুনরুদ্ধার করে।

আর্গুমেন্ট ও ফ্ল্যাগ #

ফ্ল্যাগধরনডিফল্টবিবরণ
--host আবশ্যকstringমেইল ফরোয়ার্ড করার জন্য SMTP smarthost (যেমন email-smtp.eu-west-1.amazonaws.com)। configure-এর জন্য আবশ্যক।
--portint587smarthost-এর SMTP পোর্ট।
--userstringপ্রমাণীকরণের জন্য SMTP user। বাদ দিলে, relay প্রমাণীকরণ ছাড়াই কনফিগার করা হয়।
--fromstringসব বার্তার প্রেরক পুনর্লিখন করে (sender_canonical)। smarthost-এ যাচাই করা একটি ঠিকানা ব্যবহারের জন্য উপযোগী।
--tls / --no-tlsbool--tlssmarthost-এর সাথে সংযোগে TLS বাধ্য করে (ডিফল্ট)। --no-tls এটি নিষ্ক্রিয় করে।
--tostringremitentetest-এ: পরীক্ষামূলক ইমেলের প্রাপক। ডিফল্টভাবে কনফিগার করা প্রেরক।
--jsonboolfalsestatus/show-এ, ফলাফল stdout-এ JSON হিসেবে দেয়।
পাসওয়ার্ড একটি ফ্ল্যাগ নয়

কোনো --password অপশন নেই। শংসাপত্রটি configure-এর সময় stdin থেকে বা secrets স্টোর থেকে (password_secret, ডিফল্টভাবে smtp) পড়া হয়, তাই এটি কখনো আপনার হিস্টরিতে বা প্রসেস টেবিলে দেখা যায় না।

ফাইল ও পাথ #

পাথবিষয়বস্তু
/etc/imaxe/smtp.ymlমডিউলের কনফিগারেশন: host, পোর্ট, TLS, user, প্রেরক এবং পাসওয়ার্ড secret-এর একটি রেফারেন্স।
/etc/postfix/main.cfPostfix কনফিগারেশন যা মডিউলটি ফরোয়ার্ডিংয়ের জন্য সমন্বয় করে (relayhost, sender canonical…)।
/var/log/mail.logপ্রতিটি বিতরণ চেষ্টা ও প্রত্যাখ্যানের কারণসহ Postfix লগ।

smtp.yml-এর উদাহরণ:

/etc/imaxe/smtp.yml
enabled: true
host: email-smtp.eu-west-1.amazonaws.com
port: 587
tls: true
username: AKIAIOSFODNN7EXAMPLE
from: [email protected]
password_secret: smtp

প্রস্থান কোড ও লগ #

প্রতিটি চালানো একটি কোড ফেরত দেয় যা আপনি echo $? দিয়ে যাচাই করতে পারেন — স্ক্রিপ্টে চেইন করার জন্য উপযোগী:

0OKকাজ সম্পন্ন; test-এ, ইমেলটি বিতরণের জন্য গৃহীত হয়েছে।
1ERRশ্রেণিবদ্ধ নয় এমন সাধারণ ত্রুটি। লগ পর্যালোচনা করুন।
2USAGEঅবৈধ বা অনুপস্থিত আর্গুমেন্ট।
3CONFIGrelay কনফিগার করা নেই বা কনফিগারেশন অসম্পূর্ণ।
4AUTHsmarthost শংসাপত্র প্রত্যাখ্যান করেছে।
5SENDপরীক্ষামূলক পাঠানো MTA-তে ব্যর্থ হয়েছে (জানানো ত্রুটি দেখুন)।

একটি পাঠানো ডিবাগ করার সময় মেইল লগটি সরাসরি অনুসরণ করুন:

terminal
$ sudo tail -f /var/log/mail.log
$ sudo imaxe smtp test --to [email protected]

সমস্যা সমাধান #

উপসর্গসম্ভাব্য কারণসমাধান
AUTH (কোড 4) ফেরত দেয়ভুল smarthost user বা পাসওয়ার্ড।--user যাচাই করুন এবং stdin-এর মাধ্যমে পাসওয়ার্ড পুনরায় বসিয়ে আবার configure চালান।
SEND (কোড 5) ফেরত দেয়, প্রেরক প্রত্যাখ্যাত--from ঠিকানাটি smarthost-এ যাচাই করা নেই (SES-এ সাধারণ)।প্রদানকারীর কাছে ডোমেইন বা ঠিকানা যাচাই করুন এবং test আবার চেষ্টা করুন।
CONFIG (কোড 3) ফেরত দেয়এই হোস্টে relay এখনো কনফিগার করা নেই।আপনার smarthost-এর তথ্য দিয়ে imaxe smtp configure চালান।
মেইল বেরিয়ে যায় কিন্তু স্প্যামে গিয়ে পড়েপ্রেরকের ডোমেইনে SPF/DKIM অ্যালাইনমেন্ট নেই।--from ডোমেইনের জন্য মেইল প্রদানকারীর রেকর্ড সেট আপ করুন।

মেইল মডিউল নিয়ে আটকে গেছেন?

«imaxe <module> status --json» এর আউটপুট সহ আমাদের লিখুন, আমরা দ্রুত উত্তর দেব।

সাপোর্টে যোগাযোগ করুন