ওয়ার্ডপ্রেস ফাইল এবং ডিরেক্টরি আপনার সাইট সুরক্ষিত রাখতে একটি গুরুত্বপূর্ণ ভূমিকা পালন করে। ওয়ার্ডপ্রেস ইনস্টল করার পরে তাদের সঠিকভাবে সেট করা আপনার সবচেয়ে বড় অগ্রাধিকার হওয়া উচিত। কে কোন ফাইল দেখতে পারে এবং একজন ব্যবহারকারী কী কী পদক্ষেপ নিতে পারে তার সঠিক অনুমতি সেট করা আপনার সাইটের নিরাপত্তা ভঙ্গীকে উল্লেখযোগ্যভাবে উন্নত করে। এই পোস্টে, আমরা আলোচনা করব কিভাবে PHP এক্সিকিউশন এবং ডিরেক্টরি ব্রাউজিং উভয়ই নিষ্ক্রিয় করা আপনার সাইটের নিরাপত্তা উন্নত করতে পারে৷
PHP এক্সিকিউশন অক্ষম করুন:কেন এবং কিভাবে?
কিছু ওয়ার্ডপ্রেস ফোল্ডার যেমন আপলোড বা থিম বা প্লাগইন ডিফল্টরূপে লেখার যোগ্য। এই ধরনের অনুমতি ব্যবহারকারীদের সাইটে ছবি এবং ভিডিও আপলোড করার অনুমতি দেয়। অথবা একটি সাইটে থিম এবং প্লাগইন ইনস্টল করুন. প্রতিবার আমরা একটি প্লাগইন বা থিম ইনস্টল করি, নতুন ফাইলগুলি তাদের নিজ নিজ ফোল্ডারে সংরক্ষণ করা হয়। থিম এবং প্লাগইন ফোল্ডারগুলি লেখার যোগ্য না হলে এটি সম্ভব হবে না।
অনেক লোক তাদের সাইট তৈরি করতে ওয়ার্ডপ্রেস ব্যবহার করতে পছন্দ করার একটি কারণ হল থিম এবং প্লাগইনগুলির সাহায্যে একটি সাইটকে সহজেই কাস্টমাইজ করার ক্ষমতা। যে কেউ তাদের ওয়েবসাইটে যেকোনো থিম বা প্লাগইন ইনস্টল করতে পারে যা সম্ভব কারণ থিম এবং প্লাগইন ফোল্ডারগুলি ডিফল্টরূপে লেখার যোগ্য। কিন্তু দুর্ভাগ্যবশত, এই ধরনের অনুমতি হ্যাক আক্রমণের সম্ভাবনাও খুলে দেয় যেমন ফিশিং আক্রমণ, SEO স্প্যাম, ব্রুট ফোর্স অ্যাটাক ইত্যাদি। হ্যাকাররা সুবিধা নিতে পারে এবং একটি দূষিত স্ক্রিপ্ট আপলোড করতে পারে যা দূরবর্তীভাবে চালানো যেতে পারে। এটি তাদের আপনার সাইটে সম্পূর্ণ অ্যাক্সেস পেতে বা এমনকি আপনার ওয়েবসাইট ধ্বংস করতে সাহায্য করবে।
কেউ মনে করতে পারেন যে মেইলপোয়েট হ্যাক হ্যাকারদের আপলোড ফোল্ডারে একটি দূষিত পিএইচপি কোড আপলোড করার অনুমতি দিয়েছিল যা তারা সাইটের উপর নিয়ন্ত্রণ অর্জনের জন্য কার্যকর করেছিল।
লেখার অনুমতি অপসারণ করা সুবিধাজনক নয় কারণ তখন, আপনি ছবি আপলোড করতে পারবেন না, এমনকি আপনার সাইটে প্লাগইন এবং থিম ইনস্টল করতে পারবেন না। কিন্তু আপনি যা করতে পারেন তা হল PHP এক্সিকিউশন অক্ষম করে একটি সফল আক্রমণের সুযোগ কমানো৷ এটি নির্দিষ্ট ফোল্ডারে চালানোর অনুমতি সরিয়ে দেবে।
PHP এক্সিকিউশন নিষ্ক্রিয় করার একটি সহজ উপায় হল সেই নির্দিষ্ট ফোল্ডারের .htacess ফাইলে একটি বিশেষ কোড স্থাপন করা যেখানে আপনি PHP এক্সিকিউশন নিষ্ক্রিয় করতে চান৷
দ্রষ্টব্য: ফাইলগুলি পরিবর্তন করার আগে আপনার সাইটের ব্যাকআপ নিন। আমরা যে ধাপটি অনুসরণ করতে যাচ্ছি তার একটি একক ভুল আপনার সাইটকে ভেঙে দিতে পারে বা অন্য সমস্যার কারণ হতে পারে। ব্যাকআপগুলি নিশ্চিত করতে পারে যে কোনও সমস্যা দেখা দিলে আপনি দ্রুত আপনার সাইটের একটি কার্যকরী কপিতে ফিরে যেতে পারেন৷
ধাপ 1: আপলোড ফোল্ডারে পিএইচপি এক্সিকিউশন নিষ্ক্রিয় করতে, আপলোড ফোল্ডারে একটি .htaccess ফাইল তৈরি করুন। আপনি ফোল্ডারটি wp-content-এ public_html এর অধীনে খুঁজে পেতে পারেন।
ধাপ 2: এখন একটি ফাইল তৈরি করতে নোটপ্যাড (উইন্ডোজের জন্য) বা টেক্সটএডিট (ম্যাকের জন্য) খুলুন। নিম্নলিখিত কোডটি অন্তর্ভুক্ত করুন এবং এই ফাইলটিকে .htaccess হিসাবে সংরক্ষণ করুন (.htaccess.txt নয়):
# BEGIN WordPress <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] </IfModule> # END WordPress
ধাপ 3: কোডটি সংরক্ষণ করুন এবং আপলোড ফোল্ডারে ফাইলটি আপলোড করুন।
পদক্ষেপ 4: এখন আপনার আপলোড ফোল্ডারে একটি নতুন .htaccess ফাইল আছে। ডান-ক্লিক করুন এবং সম্পাদনা নির্বাচন করুন। আপনার একেবারে নতুন .htaccess ফাইলে নিম্নলিখিত কোডটি রাখুন।
<FilesMatch “\.(php|php\.)$”> Order Allow,Deny Deny from all </FilesMatch>
নীচের ছবিতে, আমরা আমাদের .htaccess ফাইলে কোডটি রেখেছি।
এটি নিশ্চিত করে যে "PHP" থাকা যেকোনো ফাইল ধরা পড়বে এবং কার্যকর করা থেকে বিরত থাকবে। যদি একজন হ্যাকার "mailciousPHPFileDisguisedAsJPEFfile.php.jpg" এর মতো একটি ফাইল আপলোড করতে পরিচালনা করে, তাহলে এটি কার্যকর করা থেকে ব্লক করা হবে৷
সর্বোচ্চ নিরাপত্তার জন্য, আপনি প্লাগইন এবং থিম ফোল্ডারের .htaccess ফাইলে কোড যোগ করতে পারেন।
পিএইচপি এক্সিকিউশনকে ম্যানুয়ালি নিষ্ক্রিয় করা কিছুটা ঝুঁকিপূর্ণ। একজনকে অবশ্যই ফাইল ম্যানেজারে সাবধানে চলতে হবে। একটি ভুল পদক্ষেপ আপনার সাইটের মারাত্মক ক্ষতির কারণ হতে পারে। প্লাগইন ব্যবহার করে পিএইচপি এক্সিকিউশন নিষ্ক্রিয় করা সহজ এবং কম ঝুঁকিপূর্ণ। ম্যালকয়ার সিকিউরিটি সার্ভিস একটি সাইট হার্ডেনিং বৈশিষ্ট্যের সাথে আসে যা ব্যবহারকারীদের পিএইচপি এক্সিকিউশন ব্লক করতে দেয়।
এই বৈশিষ্ট্যটি সক্ষম করতে আপনার FTP বিশদ প্রয়োজন হবে৷
PHP এক্সিকিউশন নিষ্ক্রিয় করা আপনার সাইটের নিরাপত্তা শক্ত করে কিন্তু আমরা আরও এক ধাপ এগিয়ে ডিরেক্টরি ব্রাউজিং অক্ষম করতে পারি।
ডিরেক্টরি ব্রাউজিং বন্ধ করুন:কেন এবং কিভাবে?
কখনও কখনও একজন দর্শক সহজেই একটি ওয়ার্ডপ্রেস সাইটের তালিকাভুক্ত ডিরেক্টরি দেখতে পারেন। উদাহরণস্বরূপ, আমাদের ওয়েবসাইট ওয়েস্টওয়ার্ল্ড ফ্যানসাইটের দর্শকরা ব্রাউজারে কেবলমাত্র "https://westworldfansite.com/wp-includes/" খুলে wp-includes ফোল্ডারে তালিকাভুক্ত ফাইলগুলি দেখতে পারেন৷
এটি ক্ষতিকারক মনে হতে পারে কিন্তু ডিরেক্টরি তালিকা সংবেদনশীল তথ্য প্রকাশ করতে পারে যা হ্যাকাররা আপনার সাইটে অ্যাক্সেস পেতে শোষণ করতে পারে। তাই আমাদের তালিকা লুকাতে হবে। যদিও অস্পষ্টতার দ্বারা নিরাপত্তা সাধারণত ভ্রুকুটি করা হয়, যতটা সম্ভব তথ্য লুকানো ভাল। হ্যাকাররা আপনার সম্পর্কে যত কম জানবে, ততই কম তাদের আক্রমণ করার সম্ভাবনা রয়েছে।
আমাদের সাইটের নিরাপত্তা কঠোর করার জন্য, আমরা .htaccess ফাইলে নিম্নলিখিত কোডটি স্থাপন করে ডিরেক্টরি ব্রাউজিং নিষ্ক্রিয় করার সিদ্ধান্ত নিয়েছি।
.htaccess ফাইলগুলি পরিবর্তন করার আগে আপনার সাইটের ব্যাকআপ নিতে ভুলবেন না। একটি ভুল আপনার সাইটে বড় সমস্যা সৃষ্টি করতে পারে। ব্যাকআপগুলি নিশ্চিত করবে যে কোনও সমস্যা দেখা দিলে আপনি দ্রুত আপনার সাইটের একটি কার্যকরী অনুলিপিতে ফিরে যেতে পারেন৷
মনে রাখবেন যে ডাইরেক্টরিটির .htaccess ফাইলটি সম্পাদনা করতে আপনি ব্যবহারকারীদের ব্রাউজিং প্রতিরোধ করতে চান। উদাহরণস্বরূপ, আপনি wp-include ফোল্ডারটিকে রক্ষা করতে চান, wp-include ফোল্ডারের .htaccess ফাইলে নিম্নলিখিত লাইনটি রাখুন:
Options All –Indexes
কোড সংরক্ষণ করার পরে, আমরা ডিরেক্টরি তালিকাটি দেখার চেষ্টা করেছি এবং একটি 403 ত্রুটি পৃষ্ঠা উপস্থিত হয়েছে৷
ওভার টু ইউ
পিএইচপি এক্সিকিউশন এবং ডিরেক্টরি ব্রাউজিং অক্ষম করা অবশ্যই আপনার ওয়েবসাইটের নিরাপত্তা উন্নত করতে পারে তবে এটি হ্যাক প্রচেষ্টা থেকে একটি ওয়ার্ডপ্রেস সাইটকে সুরক্ষিত করার অনেক উপায়ের মধ্যে একটি মাত্র। অন্যান্য কিছু নিরাপত্তা ব্যবস্থা যা আপনি নিতে পারেন তার মধ্যে রয়েছে একটি নিরাপত্তা প্লাগইন ব্যবহার করে, একটি SSL শংসাপত্র ব্যবহার করে, একটি অনন্য এবং শক্তিশালী ব্যবহারকারীর নাম এবং পাসওয়ার্ড ব্যবহার করে, HTTP প্রমাণীকরণ এবং অন্যান্য জিনিসগুলির মধ্যে দ্বি-ফ্যাক্টর প্রমাণীকরণ প্রয়োগ করা৷