কিউ মেইল সেটআপ: বাংলাভাষীদের জন্য পর্ব- ০৭ (দূর করুন মেইল সার্ভার ভীতি)

এ অংশটুকু সেটআপ করার ক্ষেত্রে সর্বোচ্চ সতর্কতা অবলম্বন করুন। কোন প্রকার ভুল যেন না হয়।

বন্ধুরা, আশা করছি কিউ মেইল সেটআপের ধারাবাহিক টিউটোরিয়ালে আপনারা আমার সাথে আছেন। আজ আমরা pop3, pop3s, IMAP,  IMAPS সার্ভার ইন্সটল করা শিখবো। কুরিয়ারে মেইল সার্ভারের pop3, pop3s ও IMAP, IMAPS সার্ভার কিউ মেইলের সাথে খুব সুন্দরভাবে কাজ করে এবঙ সর্বোচ্চ সিকিউরিটি প্রদান করে। আপনি চাইলে Dovecot ( http://www.dovecot.org ) ও ব্যবহার করতে পারেন। এটাও কিউ মেইলের সাথে সুন্দরভাবে কাজ করবে। তবে আমি যেহেতু কুরিয়ার দিয়ে শিখেছি এবং এ পর্যন্ত কনফিগার করা সব সার্ভারে কুরিয়ার ব্যবহার করেছি, তাই কুরিয়ার সেটআপের ব্যাপারেই আলোচনা করবো। আজ পর্যন্ত কুরিয়ার মেইল সার্ভার একবারের জন্যও ্ক্রাশ করেনি। এ পর্যন্ত কয়েক শ’ সার্ভার পিসিতে আমার সেটআপ করা ক্যুরিয়ার সফটওয়্যার চলছে কোন প্রকার প্রবলেম ছাড়া। তাই আমি এটার ভক্ত বলতে পারেন। তো চলুন শুরু করা যাক:

শুরুতে একটা জিনিস মনে রাখবেন, কুরিয়ার pop3, po3s, IMAP সফটওয়্যার কনফিগার করার জন্য নন-রুট ইউজার এর প্রয়োজন হয়। সিকিউরিটির জন্য কুরিয়ার এর নির্মাতারা এটা রিকমেন্ড করে। আপনি চাইলে রুট ইউজার দিয়েও কনফিগার করতে পারেন। তবে সেটা না করাই উচিৎ, কারণ নির্মাতারা যেখানে বলে দিয়েছেন নন-রুট ইউজার দিয়ে করতে, সেটাই ফলো করা উচিৎ। আমরা simran নামে একটা ইউজার যোগ করবো এবং ক্যুরিয়ারে সমস্ত প্যাকেজ এই ইউজারের আন্ডারেই কনফিগার করবো। আপনি চাইলে অন্য ইউজার যোগ করেও করতে পারেন। চলুন প্রথমে IMAP সেটআপ করি। কুরিয়ার ০.৭২ ভার্সনের সাথে যে IMAP সার্ভারটা আসে আমরা সেটা না করে ভার্সান ৪.১৪ দিয়ে কনফিগার করবো। নিচের কমান্ডগুলি দিন-

useradd simran
cd /qm
tar -xvjf courier-imap-4.14.tar.bz2
chown -R simran:wheel courier-imap-4.14
cd courier-imap-4.14

আশা করি বুঝতে কোন সমস্যা হয়নি। এবার নন-রুট ইউজারে লগইন করুন এবং IMAP কনফিগার করুন নিচের কমান্ড দিয়ে। কনফিগার শেষে আমরা নন-রুট ইউজার থেকে বের হয়ে রুট ইউজার এর আন্ডারে IMAP সার্ভার ইন্সটল করবো। পুরো কমান্ডগুলি নিচে দেয়া হল:

su simran
./configure --prefix=/usr/local --exec-prefix=/usr/local --disable-root-check
make && make check
exit
make install-strip && make install-configure

এবার আমরা IMAPS এর জন্য একটা সার্টিফিকেট ফাইল জেনারেট করবো যেটা অথেনটিকেশনের জন্য ব্যবহৃত হবে। নিচের ফাইলটি এডিট করুন এবং আপনার প্রয়োজনমতো প্যারামিটার সেট করুন:

vi /usr/local/etc/imapd.cnf

এই ফাইলের একটি স্যাম্পল দেয়া হলো যেটা দেখে আপনি আপনার প্রয়োজন মতো এডিট করে নিবেন:

C=BD
ST=Dhaka
L=Dhaka
O=Courier IMAP Mail Server
OU=IMAP SSL key
CN=localhost
emailAddress=[email protected]

আশা করি বুঝতে সমস্যা হয়নি। এবার এই সার্টিফিকেট ফাইলের ভ্যালিডিটি ১০ বছর সেট করবো নিন্মের কমান্ডের সাহায্যে:

sed -i 's/-days 365/-days 3650/' /usr/local/sbin/mkimapdcert

এবার চলুন সার্টিফিকেটটি জেনারেট করি। নিন্মের কমান্ড দিন:

/usr/local/sbin/mkimapdcert

এবার কিছু কাজ করতে হবে যার দরুণ IMAP, IMAPS চালু হবে । তাছাড়া আপনার IMAP, IMAPS সার্ভারের লিমিটেশনও েএখান থেকে সেট করতে হবে। একটু খেয়াল করে নিচের ফাইলগুলি এডিট করবেন।

vi /usr/local/etc/imapd.cnf

ফাইলটি এডিট মোডে খুলবে। এবার mail.example.com লেখাটি খুঁজে বের করে মুছে ফেলুন এবং আপনার মেইল সার্ভারের পুরো নামটি লিখুন। এবার খুঁজে বের করুন IMAPDSTART=NO লেখাটি এবং NO পরিবর্তান করে YES লিখুন [ IMAPDSTART=YES হবে]। এবার MAXPERIP=4 কথাটি খুঁজে বের করুন। এই প্যারামিটারের মাধ্যমে আপনি সেট করে দিবেন যে এক সাথে প্রত্যেক আই.পি. এড্রেস থেকে সর্বোচ্চ কত জন এই সার্ভারে কানেন্ট করতে পারবে। ডিফল্ট হিসাবে থাকে ৪ জন। এটা আপনার প্রয়োজন অনুযায়ী কম বেশি করে নিন, যেমন: MAXPERIP=400 । একই কথা প্রযোয্য হবে নিন্মের ফাইলের ক্ষেত্রেও:

vi /usr/local/etc/imapd-ssl

নিচের প্যারামিটারগুলি চেঞ্জ করুন:

IMAPDSSLSTART=YES

TLS_CERTFILE=/usr/local/share/imapd.pem

SSLPORT=993

IMAPDSTARTTLS=YES

MAXPERIP=400

আশা করি কোন প্রবলেম হবে না। এবার আমরা AUTH DAEMON এর জন্য mysql এর লিংক কনফিগার করবো। এই স্টেপটা খুবই গুরুত্বপূর্ণ। কোনপ্রকার ভুল হলে আপনি মেইল চেক করতে পারবেন না। খুব সাবধানতার সাথে ফাইলটি এডিট করবেন:

vi /usr/local/etc/authlib/authdaemonrc

ফাইলটি vi এডিটরে ওপেন হবে। এবার ফাইলটি ২৭ নাম্বার লাইনে যান। vi এডিটর দিয়ে একবারে ২৭ নাম্বার লাইনে যেতে হলে টাইপ করুন  :27 এবং কীবোর্ড থেকে enter চাপুন। এখানে আপনি দেখতে পাবেন authmodulelist="authuserdb authpam authmysql authcustom authpipe" এমন একটি লেখা। এই লাইনটি মুছে ফেলুন বা লাইনের শুরুতে # চিন্হ দিয়ে কমেন্ট আউট করুন। এবার নতুন করে লিখুন নিন্মের লাইনটি:

authmodulelist="authmysql" 

খুব খেয়াল করে লিখবেন যেন কোন প্রকার ভুল না হয়। সেভ করে বের হয়ে আসুন।

এবার আরো একটি গুরুত্বপূর্ণ ফাইল এডিট করতে হবে। নিন্মের কমান্ড দিয়ে ফাইলটি vi এডিটরে খুলুন:

vi /usr/local/etc/authlib/authmysqlrc

খুব সাবধানতার সাথে নিন্মের প্যারামিটারগুলি পরিবর্তন করুন:

MYSQL_SERVER localhost
MYSQL_USERNAME vpopmailuser
MYSQL_PASSWORD Admin123
MYSQL_DATABASE vpopmail

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

MYSQL_SELECT_CLAUSE SELECT CONCAT(pw_name, '@', pw_domain) AS username, \
pw_passwd AS cryptpw, \
pw_clear_passwd AS clearpw, \
'89' AS uid, \
'89' AS gid, \
pw_dir AS home, \
'' AS maildir, \
pw_shell AS quota, \
pw_gecos AS fullname, \
'disablewebmail=0,disablepop3=0,disableimap=0' AS options \
FROM vpopmail \
WHERE \
pw_name = '$(local_part)' \
AND \
pw_domain = '$(domain)';

কোন প্রকার পরিবর্তন যেন না হয়, হুবহু একই জিনিস টাইপ করুন কিংবা কপি করে পেস্ট করে দিন। ফাইলটি সেভ করে বের হয়ে আসুন। বার বার চেক করে দেখুন কোন কিছু ভুল করেছেন কি-না। কারণ এখানে ভুল হলে সে ভুল খুঁজে বের করে ঠিক করতে অনেক সময় লাগবে। উপরের প্যারামিটারে একটা জিনিস লক্ষণীয় যে, আমরা vpopmail ইউজার আই.ডি. ৮৯ দিয়ে কনফিগার করেছিলাম। আপনি যদি ৮৯ দিয়ে কনফিগার করে না থাকেন, তাহলে ৮৯ পরিবর্তন করে সঠিক ইউজার/গ্রুপ আইডি দিবেন। তা-না হলে কিন্তু মেইলে অথেনটিকেট করতে পারবেন না। বার বার পাসওয়ার্ড এরর শো করবে যেটা অভিজ্ঞ লিনাক্স ব্যবহারকারী না হলে সমাধান করতে পারবেন না। সবকিছু ঠিকঠাক মতো করতে পারলে COURIER AUTH LIB  ও IMAP/IMAPS সেটআপ শেষ হবে।

চলুন এবার pop3 ও pop3s সার্ভার সেটআপ করি। নিচের কমান্ডগুলো দিন:

cd /qm/
tar -xvjf courier-0.72.tar.bz2
chown -R simran:wheel courier-0.72
cd courier-0.72
su simran
./configure
make && make check
exit
make install-strip && make install-configure
sed -i 's/-days 365/-days 3650/' /usr/lib/courier/share/mkpop3dcert

vi /usr/lib/courier/etc/pop3d.cnf  [প্যারামিটারগুলি প্রয়োজনমতো এডিট করে নিন ]

এই ফাইলের একটি স্যাম্পল দেয়া হলো যেটা দেখে আপনি আপনার প্রয়োজন মতো এডিট করে নিবেন:

C=BD
ST=Dhaka
L=Dhaka
O=Courier POP3/POP3s Mail Server
OU=POP3 SSL key
CN=localhost
emailAddress=[email protected]

আশা করছি দ্বিতীয়বার ব্যাখ্যার প্রয়োজন নেই, সব কমান্ডই আপনার পরিচিত। কারণ প্রায় একই কমান্ড দিয়ে আমরা কুরিয়ার IMAP/IMAPS সেটআপ করেছিলাম। প্রয়োজন হলে উপর থেকে ব্যাখ্যা দেখে নিন। এবার আমরা সার্টিফিকেট ফাইল জেনারেট করবো। নিচের কমান্ড দিন:

/usr/lib/courier/share/mkpop3dcert

এবার POP3 ও POP3s কনফিগার করবো।

vi /usr/lib/courier/etc/pop3d

নিচের প্যারামিটারগুলি চেক করুন:

POP3DSTART=YES

MAXPERIP=400

vi /usr/lib/courier/etc/pop3d-ssl

নিচের প্যারামিটারগুলি চেক করুন:

POP3DSSLSTART=YES
TLS_CERTFILE=/usr/lib/courier/share/pop3d.pem

আশা করি কোন সব ঠিক মতো করতে পারবেন।  এবারে আমাদের কনফিগারকৃত pop3, pop3s, IMAP, IMAPS সার্ভার যেন মেশিন বুট হবার সময় চালু হয়, তার ব্যবস্থা করবো। নিচের কমান্ডগুলো দিন:

chmod 755 /usr/lib/courier/sbin/pop3d
chmod 755 /usr/lib/courier/sbin/pop3d-ssl
chmod 755 /usr/local/libexec/imapd.rc
chmod 755 /usr/local/libexec/imapd-ssl.rc
cp /usr/lib/courier/sbin/pop3d /etc/rc.d/init.d/pop3
cp /usr/lib/courier/sbin/pop3d-ssl /etc/rc.d/init.d/pop3-ssl
cp /usr/local/libexec/imapd.rc /etc/rc.d/init.d/imap
cp /usr/local/libexec/imapd-ssl.rc /etc/rc.d/init.d/imaps
ln -s /usr/lib/courier/sbin/pop3d /etc/rc.d/rc3.d/S100pop3
ln -s /usr/lib/courier/sbin/pop3d /etc/rc.d/rc5.d/S100pop3
ln -s /usr/lib/courier/sbin/pop3d-ssl /etc/rc.d/rc3.d/S100pop3-ssl
ln -s /usr/lib/courier/sbin/pop3d-ssl /etc/rc.d/rc5.d/S100pop3-ssl
ln -s /usr/local/libexec/imapd.rc /etc/rc.d/rc3.d/S100imaps
ln -s /usr/local/libexec/imapd.rc /etc/rc.d/rc5.d/S100imaps
ln -s /usr/local/libexec/imapd-ssl.rc /etc/rc.d/rc3.d/S100imap
ln -s /usr/local/libexec/imapd-ssl.rc /etc/rc.d/rc5.d/S100imap

আশা করছি ব্যখ্যার প্রয়োজন নেই। সবই বুঝতে পারছেন, না পারলে একটু খেয়াল করে দেখেন, এরকম কমান্ড আপনি আগেও ব্যবহার করেছেন। চলুন এবার আমাদের সমস্ত সার্ভিসগুলি স্টার্ট করি। নিচের কমান্ডগুলি দিন:

/usr/local/sbin/authdaemond stop
/usr/local/sbin/authdaemond start
/etc/rc.d/init.d/pop3 stop
/etc/rc.d/init.d/pop3-ssl stop
/etc/rc.d/init.d/imap stop
/etc/rc.d/init.d/imaps stop
/etc/rc.d/init.d/imap start
/etc/rc.d/init.d/imaps start
/etc/rc.d/init.d/pop3 start
/etc/rc.d/init.d/pop3-ssl start

চেক করার জন্য নিন্মের কমান্ডগুলো ব্যবহার করতে পারেন:

telnet localhost 143

সফলভাবে ইন্সটল করলে নিন্মের মতো দেখতে পাবেন:

Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2011 Double Precision, Inc. See COPYING for distribution information.

telnet localhost 110

সফলভাবে ইন্সটল করলে নিন্মের মতো দেখতে পাবেন:

[root@localhost ~]# telnet localhost 110
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
+OK Hello there.

telnet localhost 995

সফলভাবে ইন্সটল করলে নিন্মের মতো দেখতে পাবেন:

[root@localhost ~]# telnet localhost 995
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

telnet localhost 993

সফলভাবে ইন্সটল করলে নিন্মের মতো দেখতে পাবেন:

[root@localhost ~]# telnet localhost 993
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.

আশা করি এ কমান্ডগুলো সম্পর্কে আপনি জানেন। না জানলে একটু কষ্ট করে গূগলে দেখে নিন। এ কমান্ডগুলোর ব্যখ্যা ও ব্যবহার দেখাতে গেলে শুধু শুধু এ লেখা বড় হয়ে যাবে। এগুলো ব্যাসিক কমান্ড যা আপনারা সবাই জানেন।

এবারে আমরা পাসওয়ার্ড চেঞ্জকরার সফটওয়্যার ইন্সটল করবো। এটা না থাকলে আপনার ইউজারারা নিজেরা নিজের মেইলের পাসওয়ার্ড চেঞ্জ করতে পারবে না। আমরা courierpassd-1.1.0 িব্যবহার করবো। এটার ইন্সটলেশন খুবই সহজ। কনফিগারে একটু ঝামেলা আছে, তবে স্টেপগুলো ফলো করলে কোন প্রকার প্রবলেম হবে না। চলুন শুরু করি:

cd /qm
tar -xvzf courierpassd-1.1.0-RC1.tar.gz
cd courierpassd-1.1.0-RC1
./configure
make && make install

উপরের কমান্ডগুলি দিলেই এটা ইন্সটল হয়ে যাবে। কুরিয়ার পাসওয়ার্ড সফটওয়্যারটা আমরা xinetd ডেমনের মাধ্যমে চালু করাবো। ফলে আমাদের সার্ভারে রিসোর্স কম ব্যবহৃত হবে। নিচের কমান্ড দিয়ে xinetd ইন্সটল ও চালু করে নিন। আপনার লিনাক্সে ইতোমধ্যেই এটা চালু হয়ে থাকতে পারে। তবুও কমান্ড দেখে নিন:

yum install xinetd
chkconfig xinetd on

এবার আমরা কুরিয়ার পাসওয়ার্ড এর কনফিগারেশন ফাইল কপি করবো। নিচের কমান্ড দিন:

cp /qm/courierpassd /etc/xinetd.d/

আপনি চাইলে এ ফাইলের কন্টেন্ট দেখে যদি কোন প্রকার পরিবর্তন প্রয়োজন পড়ে সেটা করতে পারেন। [ vi /etc/xinetd.d/courierpassd ]  এবার আমরা সার্ভিসে ১০৬ পোর্টে যেন কুরিয়ার পাসওয়ার্ড ফাইল লিসেন করে সে ব্যবস্থা করবো। সাধারণদঃ মেইলের পাসওয়ার্ড চেঞ্জ এর জন্য ১০৬ পোর্ট ব্যবহার করা হয়। নিচের কমান্ড দিয়ে সার্ভিসের ফাইলটি খুলুন:

vi /etc/services

একটু সতর্কতার সাথে নিম্নের লাইনটি এই ফাইলে এড করুন:

courierpassd    106/tcp         #for /etc/xinetd.d/courierpassd

খেয়াল করবেন যেন বানান ভুল না হয়। ভুল হলে কাজ করবে না। তাছাড়া আর একটা জিনস খেয়াল করে দেখতে হবে যে ১০৬ পোর্টে অন্য কোন সফটওয়্যার চলছে কি-না। ফাইলটি খুললেই বুঝতে পারবেন। অন্য কোন সার্ভিস ১০৬ পোর্টে চললে তার শুরুতে  একটা # চিহ্ন দিয়ে দিন। কুরিয়ার পাসওয়ার্ড IPv6 এ চললে একটা এরর শো করে। তাই আমরা আমাদের সার্ভারে IPv6 বন্ধ করে দিব। এটা করার জন্য hosts ফাইল এডিট করা দরকার। নিম্নের কমান্ড দিন:

vi /etc/hosts

এই ফাইলে নিন্মের মতো একটা এন্ট্রি পাবেন:

 ::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 [এই এন্ট্রিটা মুছে দিন ]

খুব সতর্কতার সাথে এটা মুছে দিন। কোন ক্রমেই যেন নিন্মের এন্ট্রিটা না মোছে।

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 [ এই এন্ট্রিটা থাকবে ]

127.0.0.1 এন্ট্রিটা অতীব গুরুত্বপূর্ণ। এটা হলো IPv4 ইনফর্মেশন। একটু সতর্কতার সাথে কাজ করবেন। এবার নিন্মের কমান্ড দিয়ে xinetd সার্ভিসটা রিস্টার্ট করুন:

service xinetd restart

চেক করার জন্য নিম্নে কমান্ড দিন:

telnet localhost 106

সফলভাবে ইন্সটল হলে নিন্মের মেতো দেখতে পাবেন:

[root@localhost ~]# telnet localhost 106
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
200 courierpassd v1.1.0-RC1 hello, who are you?

Level 0

আমি shahimran। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 11 বছর যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 10 টি টিউন ও 14 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 1 ফলোয়ার আছে এবং আমি টেকটিউনসে 0 টিউনারকে ফলো করি।


টিউনস


আরও টিউনস


টিউনারের আরও টিউনস


টিউমেন্টস

Level 0

Boss nice tune.ami apnar shate continue kortace.Thanks for your tune.

    Level 0

    @orange_taj: শুনে ভালো লাগলো। আশা করছি কোন প্রকার প্রবলেম ফেস করছেন না। আমার বোঝানোর ক্ষমতা কম, তাই কোন কোন টার্ম বুঝতে আপনাদের সমস্যা হতে পারে। একটু কষ্ট করে নিজে গবেষণা করে দেখে নিয়েন।

ইমরান ভাই ভিওআইপি সফট সুইচ এর কাজ সম্পকে কেমন ধারনা আছে?

Level 0

আপনি যদি Asterisk mean করে থাকেন, তাহলে আছে, এবং ভালোই আছে