এনগিনেক্সে কীভাবে ওয়েব ডিরেক্টরি সুরক্ষিত করতে হয়


ওয়েব প্রকল্পগুলির পরিচালকদের প্রায়শই তাদের কাজটি কোনও না কোনও উপায়ে রক্ষা করা প্রয়োজন। প্রায়শই লোকেরা জিজ্ঞাসা করে যে কীভাবে পাসওয়ার্ডটি তাদের ওয়েবসাইটটি বিকাশকালে রক্ষা করা যায়।

এই টিউটোরিয়ালে, আমরা আপনাকে একটি সহজ, তবে কার্যকর কৌশলটি দেখাব যে কীভাবে ওয়েব সার্ভার হিসাবে এনগিনেক্স চালু করার সময় সুরক্ষিত ওয়েব ডিরেক্টরিকে পাসওয়ার্ড করতে হয়।

আপনি যদি অ্যাপাচি ওয়েব সার্ভার ব্যবহার করছেন তবে আপনি ওয়েব ডিরেক্টরি সুরক্ষার জন্য পাসওয়ার্ডের জন্য আমাদের গাইডটি পরীক্ষা করতে পারেন:

  1. পাসওয়ার্ড অ্যাপাচে ওয়েব ডিরেক্টরিগুলি সুরক্ষা দেয়

এই টিউটোরিয়ালের পদক্ষেপগুলি সম্পূর্ণ করতে আপনার প্রয়োজন হবে:

  • এনগিনেক্স ওয়েব সার্ভার ইনস্টল হয়েছে
  • সার্ভারে রুট অ্যাক্সেস

পদক্ষেপ 1: ব্যবহারকারী এবং পাসওয়ার্ড তৈরি করুন

১. আমাদের ওয়েব ডিরেক্টরিকে পাসওয়ার্ড সুরক্ষিত রাখতে আমাদের এমন ফাইল তৈরি করতে হবে যা আমাদের এনক্রিপ্ট করা ব্যবহারকারীর নাম এবং পাসওয়ার্ড ধারণ করে।

অ্যাপাচি ব্যবহার করার সময়, আপনি “htpasswd” ইউটিলিটিটি ব্যবহার করতে পারেন। আপনার সিস্টেমে যদি সেই ইউটিলিটি ইনস্টল করা থাকে তবে আপনি পাসওয়ার্ড ফাইল তৈরি করতে এই কমান্ডটি ব্যবহার করতে পারেন:

# htpasswd -c /path/to/file/.htpasswd username

এই কমান্ডটি চালানোর সময়, আপনাকে উপরের ব্যবহারকারীর জন্য একটি পাসওয়ার্ড সেট করতে বলা হবে এবং তার পরে .htpasswd ফাইলটি নির্দিষ্ট ডিরেক্টরিতে তৈরি করা হবে।

২. যদি আপনার কাছে সেই সরঞ্জামটি ইনস্টল না করা থাকে তবে আপনি ম্যানুয়ালি .htpasswd ফাইলটি তৈরি করতে পারেন। ফাইলটিতে নিম্নলিখিত বাক্য গঠন থাকতে হবে:

username:encrypted-password:comment

আপনি যে ব্যবহারকারীর নামটি ব্যবহার করবেন তা আপনার উপর নির্ভর করে, আপনি যা পছন্দ করেন তা চয়ন করুন।

আরও গুরুত্বপূর্ণ অংশটি হল আপনি সেই ব্যবহারকারীর জন্য পাসওয়ার্ড তৈরি করবেন।

পদক্ষেপ 2: এনক্রিপ্ট করা পাসওয়ার্ড তৈরি করুন

৩. পাসওয়ার্ড তৈরি করতে পার্লের সংহত "ক্রিপ্ট" ফাংশনটি ব্যবহার করুন।

এখানে এই আদেশের একটি উদাহরণ:

# perl -le 'print crypt("your-password", "salt-hash")'

একটি বাস্তব জীবনের উদাহরণ:

# perl -le 'print crypt("#12Dfsaa$fa", "1xzcq")'

এখন একটি ফাইল খুলুন এবং সেমিকোলনের সাথে পৃথক করে আপনার ব্যবহারকারীর নাম এবং উত্পন্ন উত্পন্ন স্ট্রিং এ রাখুন।

এটি এখানে:

# vi /home/tecmint/.htpasswd

আপনার ব্যবহারকারীর নাম এবং পাসওয়ার্ড রাখুন। আমার ক্ষেত্রে এটি দেখতে এমন দেখাচ্ছে:

tecmint:1xV2Rdw7Q6MK.

": এসকিউ" টিপুন এবং তারপরে ": ডাব্লিউকিউ" টিপে ফাইলটি সংরক্ষণ করুন।

পদক্ষেপ 3: এনগিনেক্স কনফিগারেশন আপডেট করুন

৪. এখন আপনি যে সাইটটিতে কাজ করছেন তার সাথে যুক্ত Nginx কনফিগারেশন ফাইলটি খুলুন এবং সম্পাদনা করুন। আমাদের ক্ষেত্রে আমরা এখানে ডিফল্ট ফাইলটি ব্যবহার করব:

# vi /etc/nginx/conf.d/default.conf       [For CentOS based systems]
OR
# vi /etc/nginx/nginx.conf                [For CentOS based systems]


# vi /etc/nginx/sites-enabled/default     [For Debian based systems]

আমাদের উদাহরণস্বরূপ, আমরা পাসওয়ার্ডটি nginx এর ডিরেক্টরি রুটটিকে সুরক্ষিত করব যা হ'ল: /usr/share/nginx/html

৫. এখন আপনি যে পথটি সুরক্ষা করতে চান তার নীচে নিম্নলিখিত দুটি লাইন বিভাগ যুক্ত করুন।

auth_basic "Administrator Login";
auth_basic_user_file /home/tecmint/.htpasswd;

এখন ফাইলটি সংরক্ষণ করুন এবং এর সাথে এনগিনেক্স পুনরায় চালু করুন:

# systemctl restart nginx
OR
# service nginx restart

Now. এখন আপনার ব্রাউজারে সেই আইপি ঠিকানাটি অনুলিপি/পেস্ট করুন এবং আপনাকে পাসওয়ার্ডের জন্য জিজ্ঞাসা করা উচিত:

এটাই! আপনার মূল ওয়েব ডিরেক্টরিটি এখন সুরক্ষিত। আপনি যখন সাইটে পাসওয়ার্ড সুরক্ষা অপসারণ করতে চান, কেবলমাত্র আপনি .htpasswd ফাইলটিতে যুক্ত করেছেন এমন দুটি লাইন সরান বা পাসওয়ার্ড ফাইল থেকে যুক্ত ব্যবহারকারীকে সরাতে নিম্নলিখিত কমান্ডটি ব্যবহার করুন।

# htpasswd -D /path/to/file/.htpasswd username