এই গাইডে,XAMPP প্রোডাকশন সার্ভারে PHP-বেসড অ্যাপ্লিকেশন হোস্ট বা ডিপ্লয় করার জন্য কখনো ব্যবহার না করার সিকিউরিটি কারণগুলো অন্বেষণ করা হবে।
ডেভেলপমেন্টের জন্য XAMPP কেন ব্যবহার করবেন?
XAMPP PHP-বেসড অ্যাপ্লিকেশন ডেভেলপ করার জন্য সবচেয়ে ব্যাপকভাবে ব্যবহৃত LAMP স্ট্যাকের একটি। এতে একটি Apache সার্ভার, MariaDB ডাটাবেস, এবং PHP ও Perl-এর সাথে জড়িত বিভিন্ন স্ক্রিপ্ট থাকে।
যেহেতু এটি ক্রস-প্ল্যাটফর্ম, ওপেন-সোর্স, এবং সেট আপ করা সহজ, এটি PHP-বেসড ওয়েব অ্যাপ ডেভেলপমেন্টে শুরু করা বেগুনার জন্য সেরা টুলগুলির মধ্যে একটি।
প্রোডাকশনে XAMPP ব্যবহার করা উচিত নয় কেন
যাহোক, নিচের সিকিউরিটি কারণগুলো পর্যন্ত XAMPP প্রোডাকশন সার্ভারে ব্যবহার করার জন্য রিকমেন্ডেড নয়।
১. ডাটাবেস অ্যাডমিনিস্ট্রেটরের জন্য পাসওয়ার্ড নেই
আপনার যদি একটি ডাইনামিক ওয়েবসাইট ডাটাবেস সহ থাকে, তবে পাসওয়ার্ড অত্যন্ত জরুরি। XAMPP-এ ডাটাবেস অ্যাডমিনিস্ট্রেটরের পাসওয়ার্ড ডিফল্টভাবে সেট করা থাকে না যা অনেক সিকিউরিটি সমস্যা সৃষ্টি করতে পারে।
- হ্যাকাররা আপনার পুরো ডাটাবেসে অ্যাক্সেস পেতে পারে এবং যেকোনো কিছু মডিফাই করতে পারে কারণ রুট ইউজারের রিড, রাইট, এবং এক্সিকিউট পারমিশন থাকে।
- আপনার ডাটাবেসে অ্যাক্সেস رکھা কেউ আপনার সব গোপন ইউজার এবং কোম্পানি ইনফরমেশন দেখতে ও কপি করতে পারে, পুরো ডাটাবেস কপি করে ফেলতে পারে।
- আধুনিক অধিকাংশ সিস্টেম ডাটাবেসের ওপর নির্ভরশীল। যদি ডাটাবেস ডিলিট হয় বা অ্যাক্সেসবল না থাকে, তবে আপনার সিস্টেম মূলত নামায় পড়বে।
২. MySQL নেটওয়ার্কের ওপর থেকে অ্যাক্সেসযোগ্য
XAMPP ডাটাবেস সার্ভিস হিসেবে MySQL বা Maria DB ব্যবহার করে। দুর্ভাগ্যক্রমে, MySQL ডيمون নেটওয়ার্কের ওপর থেকে সহজে অ্যাক্সেসযোগ্য যা লোকাল PC-এ ওয়েবসাইট ডেভেলপ করলে খুব হ্যান্ডি কিন্তু প্রোডাকশনের জন্য আদর্শ নয়।
আপনি যদি ফায়ারওয়াল ব্যবহার করে অ্যাক্সেস লিমিট করেন, তবে এটি আপনার ডাটাবেসকে সম্পূর্ণ সিকিউর করতে পারে না।
৩. ProFTPD একটি পরিচিত পাসওয়ার্ড ব্যবহার করে
ProFTPD হলো XAMPP দ্বারা ব্যবহৃত ডিফল্ট FTP (File Transfer Protocol) ক্লায়েন্ট। এটি একটি পরিচিত রহস্য যে এর ডিফল্ট পাসওয়ার্ড "lampp" সেট করা থাকে। এর মানে ইউজাররা আপনার সকল স্ট্যাটিক HTML ফাইল বা ওয়েব পেজে সহজে অ্যাক্সেস পেতে পারে।
হ্যাকাররা আপনার স্ট্যাটিক ওয়েব পেজ কপি করে আপনার মত একটি ফেক সাইট বানাতে পারে এবং আপনার ইউজারদের থেকে মূল্যবান তথ্য এক্সটর্ট করার চেষ্টা করতে পারে। এছাড়া, হ্যাকাররা ফেক বা ডুপ্লিকেট সাইটে ম্যালিশিয়াস কোড ইনজেক্ট করতে পারে নেটওয়ার্ক কম্পিউটার ইনফেক্ট করার প্রক্রিয়ায়।
৪. লোকাল মেইল সার্ভার সিকিউর নয়
Windows-এ, XAMPP Mercury কে ডিফল্ট মেইল সার্ভার হিসেবে ব্যবহার করে। দুর্ভাগ্যক্রমে, পাসওয়ার্ডও ভালোভাবে পরিচিত, যা ম্যালিশিয়াস ইউজারদের আপনার ইমেইলে অ্যাক্সেস পেতে সহজ করে দেয়।
আপনার ইমেইলে অ্যাক্সেস পেলে, হ্যাকাররা ম্যালিশিয়াস কোড ইমেইলে পাঠাতে পারে, অপরিচিত ইউজারদের থেকে ফান্ড এক্সটর্ট করার চেষ্টা করতে পারে, অথবা কাস্টমারদের ভুল ইমেইল পাঠিয়ে আপনার কোম্পানির রেপুটেশন ধ্বংস করতে পারে।
আপনার XAMPP ইনস্টলেশন হার্ডেনিং
আপনি যদি আপনার XAMPP ইনস্টলেশনকে আরও সিকিউর করতে চান, তবে নিচের কমান্ড রান করুন যদি XAMPP লিনাক্স সার্ভারে চলছে:
sudo /opt/lampp/lampp security
Windows-এ, আপনি URL ব্যবহার করতে পারেন: https://localhost/security কিছু সিকিউরিটি ইস্যু ফিক্স করতে। দ্রষ্টব্য, উপরের কনফিগারেশন গুলো করলেও, FileZilla এবং Mercury-এর সাথে জড়িত সিকিউরিটি লুপহোলগুলো ফিক্স হবে না।
XAMPP বিকল্প যা আপনি ট্রাই করতে পারেন
XAMPP PHP ডেভেলপমেন্ট এনভায়রনমেন্ট সেট আপ করার জন্য একটি দুর্দান্ত টুল আপনি Windows, macOS, বা Linux ব্যবহার করুন না কেন। যাহোক, এটি প্রোডাকশন সার্ভারে ব্যবহার করার জন্য পর্যাপ্ত সিকিউর নয়।
অধিকাংশ অ্যাডমিনিস্ট্রেটর লিনাক্সে নেটিভ LAMP স্ট্যাক ব্যবহার করে, অথবা Windows প্রোডাকশন সার্ভারে IIS ব্যবহার করে যা PHP অ্যাপ্লিকেশন ডিপ্লয় করার আরও সিকিউর পথ অফার করে। আপনি যদি Windows ব্যবহার করেন, তবে WampServer ব্যবহার করে একটি WAMP ডেভেলপমেন্ট এনভায়রনমেন্ট তৈরি করার কথা বিবেচনা করুন।