আমাদের কথা খুঁজে নিন

   

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

বন্ধুরা, আশা করছি কিউ মেইল সেটআপের ধারাবাহিক টিউটোরিয়ালে আপনারা আমার সাথে আছেন। আজ আমরা 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=postmaster@yourdomain.com
আশা করি বুঝতে সমস্যা হয়নি। এবার এই সার্টিফিকেট ফাইলের ভ্যালিডিটি ১০ বছর সেট করবো নিন্মের কমান্ডের সাহায্যে:
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=postmaster@yourdomain.com
আশা করছি দ্বিতীয়বার ব্যাখ্যার প্রয়োজন নেই, সব কমান্ডই আপনার পরিচিত। কারণ প্রায় একই কমান্ড দিয়ে আমরা কুরিয়ার 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?

সোর্স: http://www.techtunes.com.bd/     দেখা হয়েছে বার

অনলাইনে ছড়িয়ে ছিটিয়ে থাকা কথা গুলোকেই সহজে জানবার সুবিধার জন্য একত্রিত করে আমাদের কথা । এখানে সংগৃহিত কথা গুলোর সত্ব (copyright) সম্পূর্ণভাবে সোর্স সাইটের লেখকের এবং আমাদের কথাতে প্রতিটা কথাতেই সোর্স সাইটের রেফারেন্স লিংক উধৃত আছে ।