শুক্রবার রাত সাড়ে এগারোটা। মিরপুরের একটা ছোট WooCommerce স্টোরের মালিক ফোন করে বললেন, সাইট ঠিকঠাকই খুলছে, অর্ডারও আসছে, কিন্তু Google-এ নিজের ব্র্যান্ড নাম লিখে সার্চ দিলে জাপানি অক্ষরে ভরা অদ্ভুত কিছু পেজ দেখাচ্ছে। সার্চ রেজাল্ট বলছে তিনি নাকি জাপানে হাতঘড়ি বিক্রি করেন। তদন্তে কারণটা বেরোল খুব চেনা — ছয় মাস আগে একটা ফেসবুক গ্রুপ থেকে নামানো ‘ফ্রি’ প্রিমিয়াম স্লাইডার প্লাগইন, যার ভেতরে ব্যাকডোর বসানো ছিল।
এমন ঘটনার পর প্রায় সবাই একই প্রশ্ন করেন — ‘ভাই, কোন সিকিউরিটি প্লাগইন লাগাব?’ প্রশ্নটাই ভুল জায়গা থেকে শুরু। WordPress security মানে একটা টুল বেছে নেওয়া নয়; এটা সিদ্ধান্ত নেওয়ার ব্যাপার যে আপনি কোন স্তরে টাকা আর সময় ঢালবেন। একটা আক্রমণ মোটামুটি তিন জায়গায় থামানো যায় — ইন্টারনেটের প্রান্তে, আপনার সার্ভারে, অথবা WordPress-এর নিজের ভেতরে। প্রতিটা স্তরের দাম, ঝামেলা আর কার্যকারিতা সম্পূর্ণ আলাদা। বাজেট সীমিত হলে জানতে হবে কোন স্তরটা আপনার আসল সমস্যার সাথে মেলে।
নিরাপত্তার স্তরগুলো: কে কোথায় দাঁড়িয়ে পাহারা দেয়
বাজারে যা কিছু বিক্রি হয়, গুছিয়ে ফেললে চারটা পথ দাঁড়ায় — সিকিউরিটি প্লাগইন (Wordfence, Solid Security, Patchstack), এজ ফায়ারওয়াল বা CDN (Cloudflare, Sucuri), হার্ডেনড বা ম্যানেজড হোস্টিং, আর সম্পূর্ণ বিনামূল্যের ম্যানুয়াল হার্ডেনিং। এগুলো একে অপরের শত্রু নয়; বড় সাইটে চারটাই থাকে। কিন্তু বছরে ৳৩,০০০ বাজেটের একটা সাইটে চারটাই কেনা সম্ভব না, তাই ক্রমটা ঠিক করা জরুরি।
অপশন ১: সিকিউরিটি প্লাগইন — ভেতর থেকে পাহারা
Wordfence-এর ফ্রি ভার্সন বাংলাদেশে সবচেয়ে বেশি ব্যবহৃত, এবং যে কাজগুলো এটা করে সেগুলো সত্যিই ভালো করে — লগইন লকডাউন, ফাইল-চেঞ্জ ডিটেকশন, ম্যালওয়্যার স্ক্যান, টু-ফ্যাক্টর অথেনটিকেশন। কিন্তু একটা কারিগরি সীমা আছে যেটা বেশিরভাগ মানুষ খেয়াল করেন না: প্লাগইন-ভিত্তিক ফায়ারওয়াল PHP-র ভেতরে চলে। মানে একটা বট যখন সেকেন্ডে বিশবার /wp-login.php-এ চাপ দিচ্ছে, তখন প্রতিটা রিকোয়েস্টেই WordPress লোড হচ্ছে, ডাটাবেজে কানেকশন খুলছে — তারপর প্লাগইন এসে বলছে ‘ব্লক’। ব্লক হচ্ছে ঠিকই, কিন্তু CPU-র বিলটা আপনারই।
বাংলাদেশের বেশিরভাগ শেয়ার্ড হোস্টিং প্যাকেজে (বছরে ৳২,০০০–৳৫,০০০) CPU লিমিট থাকে এক কোর, এন্ট্রি প্রসেস কুড়ির মতো। একটা মাঝারি ব্রুট-ফোর্স ঝড়েই সাইট 508 Resource Limit Reached দেখাতে শুরু করে — হ্যাকার ভেতরে ঢুকতে পারল না, অথচ সাইট ডাউন, ক্ষতি একই। তাই সিকিউরিটি প্লাগইনকে ‘ফায়ারওয়াল’ ভাববেন না। ভাবুন ঘরের ভেতরের সিসিটিভি আর স্মোক অ্যালার্ম হিসেবে — আগুন লাগলে সেটা জানাবে, কিন্তু গেটে দাঁড়িয়ে অচেনা লোককে ফেরাবে না।
নাল করা (nulled) থিম আর প্লাগইন বাংলাদেশে সংক্রমণের এক নম্বর রাস্তা। ৳৫০০ বাঁচাতে গিয়ে যে ব্যাকডোরটা ঢোকে, সেটা পরিষ্কার করাতে ডেভেলপারকে দিতে হয় ৳৫,০০০–৳১৫,০০০, আর Google-এর ‘This site may be hacked’ লেবেল থেকে বেরোতে লাগে কয়েক সপ্তাহ। কোনো সিকিউরিটি প্লাগইন এই সিদ্ধান্তটা আপনার হয়ে নিতে পারবে না।
অপশন ২: এজ ফায়ারওয়াল — দরজার বাইরেই থামানো
Cloudflare-এর ফ্রি প্ল্যানই বেশিরভাগ ছোট সাইটের জন্য যথেষ্ট; শর্ত একটাই, DNS Cloudflare-এ নিতে হবে। এখানে বট আপনার সার্ভার ছোঁয়ারই সুযোগ পায় না, ফলে CPU বাঁচে আর 508 এররের ঝামেলা মিটে যায়। ফ্রি প্ল্যানে গোনাগুনতি কয়েকটা কাস্টম রুল আর একটা রেট-লিমিটিং রুল পাওয়া যায় — সেটুকুই কাজে লাগিয়ে তিনটা কনফিগারেশন করলে অ্যাটাক ট্রাফিকের বড় অংশ ঝরে যায়:
- রেট লিমিট: এক IP থেকে /wp-login.php-এ এক মিনিটে পাঁচবারের বেশি POST হলে দশ মিনিট ব্লক। মানুষের হাতে পাঁচবারের বেশি লাগে না; বটের লাগে হাজারবার।
- xmlrpc.php পুরোপুরি বন্ধ: Jetpack বা WordPress মোবাইল অ্যাপ না চালালে এই ফাইলটার আপনার দরকারই নেই, অথচ এটা ব্রুট-ফোর্স আর পিংব্যাক অ্যামপ্লিফিকেশনের সবচেয়ে প্রিয় দরজা।
- /wp-admin-এ জিও বা IP রেস্ট্রিকশন: টিম যদি কেবল বাংলাদেশ থেকেই কাজ করে, তাহলে বাকি দেশগুলোর জন্য অ্যাডমিন এরিয়া বন্ধ করে দিন। একটা WAF কাস্টম রুলেই হয়ে যায়, খরচ শূন্য।
সীমাবদ্ধতাটাও পরিষ্কার করে বলা দরকার। এজ ফায়ারওয়াল ম্যালওয়্যার পরিষ্কার করে না, আগে থেকে বসে থাকা ব্যাকডোর ধরে না, আর কেউ যদি আপনার হোস্টিংয়ের আসল origin IP জেনে ফেলে তবে Cloudflare বাইপাস করে সরাসরি সার্ভারে হামলা চালাতে পারে (তাই হোস্টে ফায়ারওয়াল দিয়ে origin-কে Cloudflare-এর IP রেঞ্জে সীমাবদ্ধ করাও দরকার)। এটা প্রতিরোধ, নিরাময় নয়।
অপশন ৩: হোস্টিং স্তর — দায়িত্বটা যোগ্য কারও ঘাড়ে দেওয়া
সবচেয়ে কম আলোচিত, অথচ সবচেয়ে বেশি রিটার্ন দেওয়া অপশন। লোকাল হোস্টিং কেনার আগে সাপোর্টে তিনটা প্রশ্ন করুন এবং লিখিত উত্তর নিন — এক, সার্ভারে কি Imunify360 চলে নাকি শুধু ফ্রি ImunifyAV? দুই, ব্যাকআপ কি অন্য সার্ভারে (অফসাইট) রাখা হয়, নাকি একই ডিস্কে? তিন, অ্যাকাউন্ট আইসোলেশন আছে কি — অর্থাৎ একই সার্ভারে থাকা অন্য কারও হ্যাক হওয়া সাইট থেকে সংক্রমণ আমার ফোল্ডারে ছড়াতে পারে কি না? তৃতীয় প্রশ্নটার সৎ উত্তর সস্তা রিসেলার হোস্টিংয়ে প্রায়ই ‘না’, আর ওখানেই বছরে অসংখ্য সাইট মরে।
ম্যানেজড WordPress হোস্টিং — যেমন Cloudways-এর এন্ট্রি প্ল্যান, মাসে ১১–১৪ ডলার, অর্থাৎ ৳১,৪০০–১,৮০০-র মতো — এখানে বড় ফারাক গড়ে দেয়: সার্ভার লেভেল ফায়ারওয়াল, স্বয়ংক্রিয় অফসাইট ব্যাকআপ, স্টেজিং সাইট আর এক ক্লিকে রিস্টোর। সাইট হ্যাক হলে বিশ মিনিটে গতকালের অবস্থায় ফিরে আসা যায়। এই একটা ক্ষমতা — দ্রুত ফিরে আসার ক্ষমতা — বাস্তবে বাকি সব সিকিউরিটি টুলের চেয়ে দামি, কারণ এটাই একমাত্র জিনিস যা ‘আটকাতে ব্যর্থ হওয়ার পরে’ও কাজ করে।
অপশন ৪: ম্যানুয়াল হার্ডেনিং — খরচ শূন্য, রিটার্ন সর্বোচ্চ
- wp-config.php-এ
define('DISALLOW_FILE_EDIT', true);বসান। ড্যাশবোর্ডের থিম/প্লাগইন এডিটর বন্ধ হয়ে যাবে। হ্যাকার অ্যাডমিন অ্যাক্সেস পেয়ে গেলেও কোড বসানোর সহজতম রাস্তাটা এখানেই আটকে যায়। - নিষ্ক্রিয় থিম আর প্লাগইন ‘ডিঅ্যাক্টিভেট’ করে রেখে দেবেন না — ডিলিট করুন। ফাইল সার্ভারে থাকা মানে ওই ফাইলের ভালনারেবিলিটিও সার্ভারে থাকা; নিষ্ক্রিয় প্লাগইনের ভেতরের PHP ফাইল সরাসরি কল করেও অনেক এক্সপ্লয়েট চলে।
- মাইনর কোর আপডেট আর প্লাগইন অটো-আপডেট চালু রাখুন। অনেক ডেভেলপার এটা বন্ধ রাখতে বলেন সাইট ভেঙে যাওয়ার ভয়ে। বাস্তবতা হলো, স্টেজিং ছাড়া সাইটে অটো-আপডেটে সাইট ভাঙার ঝুঁকি, ছয় মাস পুরোনো প্লাগইন নিয়ে বসে থাকার ঝুঁকির তুলনায় নগণ্য।
- ইউজার রোল কমান আর অ্যাডমিনদের জন্য 2FA বাধ্যতামূলক করুন। ক্লায়েন্টের মার্কেটিং টিমের পাঁচজনকে Administrator বানানোর দরকার নেই — Editor-ই যথেষ্ট। আর ‘admin’ ইউজারনেমটা আজই বদলান।
একটা কথা খোলাখুলি বলা দরকার: ডাটাবেজ প্রিফিক্স বদলানো, লগইন URL লুকানো, wp-config সরিয়ে রাখা — এই ‘security by obscurity’ টিপসগুলো ব্লগে যত জনপ্রিয়, বাস্তবে তত অকার্যকর। আসল হিসাবটা নিষ্ঠুর রকমের সহজ: WordPress সাইট হ্যাক হয় মূলত পুরোনো প্লাগইনের পরিচিত ভালনারেবিলিটি দিয়ে, কোরের গোপন দুর্বলতা দিয়ে নয়। যেসব দুর্বলতা প্রকাশিত হয় তার বিপুল সংখ্যাগরিষ্ঠ অংশই থার্ড-পার্টি প্লাগইনে। অর্থাৎ আপডেট বাটনে চাপ দেওয়াই সবচেয়ে সস্তা ও সবচেয়ে শক্তিশালী সিকিউরিটি টুল, যেটার জন্য কেউ আপনাকে বিল পাঠাবে না।
আপনার সাইটের জন্য কোনটা আগে দরকার
- আগে এজ ফায়ারওয়াল নিন যদি সাইট শেয়ার্ড হোস্টিংয়ে থাকে, মাঝেমধ্যেই ধীর হয় বা 508 দেখায়, আর ট্রাফিক বাড়ছে। খরচ ৳০, প্রতি টাকায় লাভ সবচেয়ে বেশি। এটাই ৯০% বাংলাদেশি সাইটের প্রথম পদক্ষেপ হওয়া উচিত।
- সিকিউরিটি প্লাগইনে বিনিয়োগ করুন যদি সাইটে একাধিক লেখক বা অ্যাডমিন থাকে, প্লাগইন সংখ্যা পনেরোর বেশি, অথবা আপনি নিজে কোড পড়তে পারেন না। তখন ফাইল-চেঞ্জ অ্যালার্টই আপনার একমাত্র চোখ — কেউ ঢুকে পড়লে অন্তত জানতে পারবেন।
- ম্যানেজড বা হার্ডেনড হোস্টিং নিন যদি সাইটে টাকা লেনদেন হয় — WooCommerce, bKash বা SSLCOMMERZ গেটওয়ে, অনলাইন কোর্স, মেম্বারশিপ। এক দিনের ডাউনটাইম বা একটা ডেটা লিকের ক্ষতি এক বছরের হোস্টিং বিলের চেয়ে অনেক বেশি।
- শুধু ম্যানুয়াল হার্ডেনিংই যথেষ্ট যদি এটা নিছক একটা ব্রোশিওর সাইট হয় — মাসে কয়েকশ ভিজিটর, কনট্যাক্ট ফর্ম ছাড়া কোনো ইউজার ইনপুট নেই, কোনো পেমেন্ট নেই — এবং আপনি প্রতি মাসে বিশ মিনিট আপডেট ও ব্যাকআপে দিতে রাজি থাকেন।
তিনটা বাজেট, তিনটা তৈরি করা স্ট্যাক
৳০ স্ট্যাক — Cloudflare ফ্রি প্ল্যান, উপরের তিনটা রুল, ম্যানুয়াল হার্ডেনিং, আর UpdraftPlus দিয়ে Google Drive-এ সাপ্তাহিক অটো-ব্যাকআপ। পোর্টফোলিও, এজেন্সি ও ব্লগ সাইটের জন্য এটুকুই যথেষ্ট। বছরে ৳৭,০০০-র স্ট্যাক — উপরেরটার সাথে Imunify360-ওয়ালা একটা ভালো লোকাল হোস্ট, Wordfence Free, আর মাসে একবার হাতে করে প্লাগইন ভালনারেবিলিটি চেক। ছোট ব্যবসা আর লিড-জেনারেশন সাইটের জন্য আদর্শ।
বছরে ৳২৫,০০০+ স্ট্যাক — ম্যানেজড হোস্টিং, Patchstack বা Wordfence Premium (ফ্রি Wordfence-এর ম্যালওয়্যার সিগনেচার প্রিমিয়াম ব্যবহারকারীদের চেয়ে ৩০ দিন পিছিয়ে থাকে), স্টেজিং সাইট, দৈনিক অফসাইট ব্যাকআপ আর অন্তত ৩০ দিনের রিস্টোর পয়েন্ট। ই-কমার্স, মেম্বারশিপ, বা যেকোনো সাইট যেখানে গ্রাহকের ফোন নম্বর-ঠিকানা জমা থাকে — সেখানে এটা খরচ নয়, ইনস্যুরেন্স।
ইতোমধ্যেই হ্যাক হয়ে গেলে ক্রমটা মেনে চলুন: (১) সাইট মেইনটেন্যান্স মোডে নিন; (২) সব অ্যাডমিন, হোস্টিং, FTP আর ডাটাবেজ পাসওয়ার্ড বদলান; (৩) পরিষ্কার ব্যাকআপ থেকে রিস্টোর করুন — হাতে ম্যালওয়্যার খুঁজতে বসবেন না, একটা ব্যাকডোর মিস করলেই সব বৃথা; (৪) এরপর সব আপডেট ও হার্ডেনিং; (৫) সবশেষে Google Search Console-এর Security Issues থেকে রিভিউ রিকোয়েস্ট। ক্রম উল্টে গেলে দুই সপ্তাহের মধ্যে আবার হ্যাক হবেন।
সচরাচর জিজ্ঞাসা
Wordfence আর Cloudflare কি একসাথে চালানো যায়? যায়, এবং মাঝারি-বড় সাইটে চালানোই উচিত — একটা গেটে, আরেকটা ঘরের ভেতরে। শুধু Wordfence-কে বলে দিতে হবে সে যেন Cloudflare-এর পাঠানো আসল ভিজিটর IP পড়ে (Wordfence → Options → ‘How does Wordfence get IPs’ → Cloudflare অপশন)। এটা না করলে সে সব ভিজিটরকে একই IP ভাববে এবং একজনের ভুল লগইনে গোটা সাইট ব্লক করে বসবে।
হোস্টিং কোম্পানি বলছে তাদের সার্ভারে ফায়ারওয়াল আছে — তাহলে আর কিছু লাগবে কেন? সার্ভার ফায়ারওয়াল সার্ভারকে বাঁচায়, আপনার WordPress ইনস্টলেশনকে নয়। আপনার কোনো পুরোনো ফর্ম প্লাগইনে যদি ভালনারেবিলিটি থাকে, সেই এক্সপ্লয়েট রিকোয়েস্টটা হোস্টের ফায়ারওয়ালের চোখে সম্পূর্ণ বৈধ HTTP ট্রাফিক — কারণ সেটা সত্যিই বৈধ। অ্যাপ্লিকেশন স্তরের দায়িত্ব শেষ পর্যন্ত সাইটের মালিকেরই।
ব্যাকআপ কত ঘন ঘন নেওয়া উচিত? নিয়মটা সহজ — যত ঘন ঘন কনটেন্ট বা অর্ডার বদলায়। ব্লগে সাপ্তাহিক যথেষ্ট, WooCommerce স্টোরে দৈনিক (একদিনের অর্ডার হারানো মানে সরাসরি টাকা হারানো)। আর ব্যাকআপ অবশ্যই সার্ভারের বাইরে রাখুন; সার্ভার হ্যাক হলে সেই সার্ভারে রাখা ব্যাকআপও তখন হ্যাকারের হাতে।
আমার সাইট তো ছোট, কে হ্যাক করতে যাবে? কেউ ব্যক্তিগতভাবে আপনাকে খুঁজছে না — এটাই আসল কথা। আক্রমণের ৯৯% স্বয়ংক্রিয় বট, যারা ইন্টারনেট স্ক্যান করে দুর্বল ভার্সনের প্লাগইন খোঁজে। তারা জানেই না আপনি কে; তারা শুধু জানে আপনার সাইটে ২.৭.১ ভার্সনের একটা প্লাগইন বসে আছে যার এক্সপ্লয়েট পাবলিক। ছোট সাইটকে সাধারণত স্প্যাম হোস্টিং বা ফিশিং পেজ রাখার জন্যই দখল করা হয়।
Stack Alix-এ আমরা প্রায় প্রতি মাসেই এমন সাইট হাতে পাই যেখানে তিন-চারটা সিকিউরিটি প্লাগইন একসাথে চলছে, অথচ প্লাগইনগুলোর কোনোটাই এক বছরে আপডেট হয়নি। আপনার সাইটের জন্য কোন স্তরটা আগে দরকার তা নিয়ে দ্বিধায় থাকলে একবার কথা বলুন — সিকিউরিটি অডিট, ম্যালওয়্যার ক্লিনআপ আর হার্ডেনিং সেটআপ, সবগুলোই আমরা করি।

