HTTP অথেন্টিকেশন দিয়ে লগইন পেজ পাসওয়ার্ড প্রোটেক্ট করুন: ৬ কোটি ওয়ার্ডপ্রেস ওয়েবসাইট রয়েছে যা এটিকে দুনিয়ার সবচেয়ে জনপ্রিয় ওয়েবসাইট বিল্ডিং প্ল্যাটফর্ম করে তোলে। কিন্তু এই জনপ্রিয়তার একটা দাম চुकাতে হয়। প্রতিটি মিনিটে প্রায় ৯০,৯৭৮ হ্যাক আটেম্প্ট করা হয় ওয়ার্ডপ্রেস সাইটে। হ্যাকাররা ওয়েবসাইটে ব্রেক ইন করার জন্য বিভিন্ন পদ্ধতি ব্যবহার করে, 그중 একটি খুব জনপ্রিয় এবং ব্যাপকভাবে ব্যবহৃত পদ্ধতি হলো ব্রুট ফোর্স আট্যাক। এই ধরণের আট্যাকে, হ্যাকাররা বট প্রোগ্রাম করে আপনার লগইন শংসাপত্র সঠিকভাবে অনুমান করার চেষ্টা করে, তাই আপনাকে আপনার ওয়ার্ডপ্রেস লগইন পেজ রক্ষা করতে হবে।
লগইন প্রোটেকশন সম্পর্কে একটি পূর্বের পোস্টে, আমরা আলোচনা করেছিলাম ইউনিক ইউজারনেম তৈরি করা এবং শক্তিশালী পাসওয়ার্ড এনফোর্স করা। এটি হ্যাকার বটদের আপনার সাইটে প্রবেশ করতে বাধা দেওয়ার একটি কার্যকর পদ্ধতি, কিন্তু সিকিউরিটির কথা বললে, কোনো Абсолют গ্যারান্টি নেই যে সাইট নিরাপদ থাকবে। ইন্টারনেট কখনোই খুব নিরাপদ জায়গা নয়, এবং কোনো পরিমাণ সিকিউরিটি কখনোই পর্যাপ্ত নয়। অতএব আপনার সাইটের জন্য একাধিক লেয়ার প্রোটেকশন থাকা ভালো। ইউনিক ইউজারনেম এবং পাসওয়ার্ড গুরুত্বপূর্ণ হলেও, লগইন পেজ লক করাও সিকিউরিটির দিকে একটি গুরুত্বপূর্ণ ধাপ। এটি করার একটি উপায় হলো HTTP অথেন্টিকেশন দিয়ে লগইন পেজ পাসওয়ার্ড প্রোটেক্ট করা। এই পোস্টে, আমরা আপনাকে দেখাব কিভাবে আপনি সেটি অর্জন করতে পারেন।
HTTP অথেন্টিকেশন কী?
HTTP অথেন্টিকেশন বা HTTP বেসিক অথেন্টিকেশন (BA) হলো লগইন পেজে সীমাবদ্ধ অ্যাক্সেস এনফোর্স করার একটি টেকনিক। একটি সহজ аналоги দিয়ে ব্যাখ্যা করি, একটি ওয়েবসাইট কে একটি বাড়ি ভাবুন। প্রধান দরজা হলো লগইন পেজ। লোকেরা বাড়িতে ব্রেক ইন করার চেষ্টা করতে পারে তাই আপনাকে একটি শক্তিশালী লক রাখতে হবে। লকটি প্রতীক লগইন শংসাপত্র। প্রধান দরজার বাইরে, একটি ফেন্স রয়েছে যা বাড়িকে অতিরিক্ত সুরক্ষা দেয়। একইভাবে, HTTP অথেন্টিকেশন আপনার বাড়িকে অতিরিক্ত সুরক্ষার একটি লেয়ার দেয়। এর মানে যে কেউ লগইন পেজ এক্সেস করতে চাইলে, সে প্রথমে HTTP অথেন্টিকেশন (ফেন্স) এবং তারপর লগইন শংসাপত্র (প্রধান গেট) – এই দুটো পার করতে হবে।
HTTP অথেন্টিকেশন দিয়ে লগইন পেজ পাসওয়ার্ড প্রোটেক্ট কীভাবে করবেন?
আপনার ওয়ার্ডপ্রেস সাইটকে HTTP অথেন্টিকেশন দিয়ে সুরক্ষিত করার জন্য প্রথমে আপনাকে একটি .htpasswd ফাইল জেনারেট করতে হবে। এবং তারপর আপনার ওয়েবসাইটের .htaccess ফাইলকে .htpasswd ফাইলটির লোকেশন সম্পর্কে জানাতে হবে। এবং সেটি আপনার লগইন পেজ লক ডাউন করবে।
.htpasswd ফাইল কীভাবে তৈরি করবেন?
এই নির্দিষ্ট ফাইলে, আপনি যাদের লগইন পেজে এক্সেস দিতে চান তাদের ইউজারনেম এবং পাসওয়ার্ড সংরক্ষণ করবেন। মূলত এটি আপনার বাড়ি घেরে থাকা ফেন্সের গেটের চাবি রাখার মতো। আপনি শুধু যাদের আপনার সাইটে এক্সেস দিতে চান তাদের গেটের চাবি দিতে পারেন। আসুন জানি কিভাবে আপনি .htpasswd ফাইল তৈরি করতে পারেন।
একটি নতুন .htpasswd ফাইল তৈরি করতে, আপনাকে একটি .htpasswd কমান্ড লাইন টুল ব্যবহার করতে হবে। অনলাইনে অনেক টুল উপলব্ধ। আপনি যে কোনো একটি পছন্দ করুন, সেটি খুলুন এবং কমান্ড লাইনে নিচের কোডটি লিখুন:
htpasswd -c .htpasswd harini
এই কমান্ড লাইনে, c মানে create এবং harini হলো আমরা যা ইউজারনেম পছন্দ করেছি। এই কোডটি লিখে এন্টার দিলে, আপনাকে এই ইউজারনেমের জন্য একটি यুনিক পাসওয়ার্ড তৈরি করতে বলবে। চিন্তা করবেন না; আপনার পাসওয়ার্ড এনক্রিপ্টেড থাকবে।
কিন্তু আপনার যদি ইতিমধ্যে একটি .htpasswd ফাইল থাকে, তবে আপনাকে শুধু একটি নতুন ইউজারনেম এবং পাসওয়ার্ড যোগ করতে হবে। আপনি নিচের কমান্ড লাইন লিখে সেটি করতে পারেন:
htpasswd .htpasswd rahul
লক্ষ্য করুন আমরা এখানে -c ব্যবহার করিনি কারণ আমরা নতুন ফাইল তৈরি করছি না।
সাধারণত একটি .htpasswd ফাইল দেখতে এমন হয়: username:encrypted_password। তাই যদি ইউজারনেম হয় harini এবং পাসওয়ার্ড হয় dummy123pass, তবে .htaccess ফাইলটি হবে: harini:$apr1$50r17zis$lNbFJs4rQFfkp4ToO2/ZS/
পাসওয়ার্ডটি এনক্রিপ্টেড হয়েছে। এই .htaccess ফাইলটি মূলত আপনার HTTP বেসিক অথেন্টিকেশন শংসাপত্র।
যদি, আপনি কোনো টুল ব্যবহার করতে না চান বা কীভাবে ব্যবহার করবেন সেটি না জানেন; তবে আপনি একটি .htpasswd জেনারেটর ব্যবহার করতে পারেন। এই লিংকটি খুলুন, এবং আপনাকে নিচের ছবির মতো একটি উইন্ডো দেখতে मिलবে।
আপনার পছন্দের ইউজারনেম এবং পাসওয়ার্ড টাইপ করুন। র্যান্ডম পাসওয়ার্ড জেনারেট করার অপশনও আছে। হয়ে গেলে, "Generate .htpasswd file" বোতামে ক্লিক করুন। আপনাকে একটি আউটপুট দেখতে মিলবে।
.htaccess ফাইল মডিফাই করা
.htaccess ফাইল আপনার ওয়ার্ডপ্রেস সাইটের সবচেয়ে গুরুত্বপূর্ণ ফাইলগুলোর একটি। আমরা আপনার .htaccess ফাইল দিয়ে দুটি কাজ করব। এক, এটিকে বলব কী কী রিস্ট্রিক্ট করতে হবে এবং দু, এটিকে বলব HTTP বেসিক অথেন্টিকেশন শংসাপত্রগুলো কোথা থেকে পাবে যা আমরা উপরের ধাপগুলোতে তৈরি করেছি।
.htaccess public_html ফোল্ডারে থাকে। এটিকে এক্সেস করতে আপনাকে আপনার ওয়েব হোস্ট অ্যাকাউন্টে যেতে হবে। আপনার ওয়েব হোস্টে লগইন করুন এবং cPanel নামে একটি পেজে যান। সেখানে আপনার File Manager নামে একটি অপশন খুঁজে পাবেন। সেটি সিলেক্ট করুন, এবং একটি পেজ খুলবে, এবং সেটিতে আপনি ফাইলটি দেখতে পারবেন।
কখনো কখনো .htaccess লুকানো থাকে এবং public_html ফোল্ডারে দেখা যাবে না। সেক্ষেত্রে, আপনাকে cPanel-এ ফিরে যেতে হবে, এবং File Manager-এ ক্লিক করতে হবে। একটি পপআপ আসবে যেখানে আপনাকে 'Show Hidden Files' সিলেক্ট করতে হবে।
এরপর, আপনাকে ফাইলটি ডাউনলোড করতে হবে এবং তারপর খুলতে হবে এই কোড লাইনটি যোগ করতে:
<Files wp-login.php> AuthUserFile /path/to/.htpasswd AuthName "Private access" AuthType Basic require valid-user </Files>
এই কোডটি ইনসার্ট করার সময় কিছু কথা মনে রাখতে হবে: AuthUserFile /path/to/.htpasswd – এটি আপনার তৈরি করা .htpasswd ফাইলের পাথ। নিশ্চিত করুন পাথটি সঠিক। 'valid-user' শব্দটি সিস্টেমকে বলে যে .htpasswd ফাইলে যারা উল্লেখ করা আছে সকল ইউজারকে লগইন পেজে এক্সেস দাও। কিন্তু আপনি যদি সিলেক্টিভ হতে চান কাকে এক্সেস দিবেন, তবে 'valid-user'-এর বদলে শুধু ইউজারনেমগুলো উল্লেখ করুন।
শেষে, সেটি সেভ করুন এবং একই জায়গায় আপলোড করুন যেখান থেকে ডাউনলোড করেছিলেন। এবং ব্যাস। এরপর আপনি লগইন পেজ এক্সেস করার চেষ্টা করলে, একটি ছোট উইন্ডো পপ আপ হবে আপনাকে নির্দিষ্ট লগইন শংসাপত্র চেয়ে।
HTTP অথেন্টিকেশনের পাশাপাশি, আমরা পরামর্শ দিই আপনি টু-ফ্যাক্টর অথেন্টিকেশনও বাস্তবায়ন করুন, যা আপনার ওয়ার্ডপ্রেস লগইন পেজে সিকিউরিটির আরেকটি লেয়ার যোগ করবে।
এছাড়া আরও কিছু সিকিউরিটি ব্যবস্থা নিন যেমন HTTP থেকে HTTPS-এ সাইট স্থানান্তর করা, একটি সিকিউরিটি প্লাগইন ইনস্টল করা, লগইন পেজ রক্ষা করা, ইত্যাদি। আপনার লগইন পেজ রক্ষা করা একটি চমৎকার আইডিয়া হলেও, হ্যাকাররা আপনার ওয়েবসাইটে অ্যাক্সেস পেতে পারে অন্যান্য উপায়ে। আমরা দৃঢ়ভাবে পরামর্শ দিই আপনি একটি সমগ্র সিকিউরিটি পদ্ধতি অনুসরণ করুন আমাদের কমপ্লিট ওয়ার্ডপ্রেস সিকিউরিটি গাইড মেনে চলা।