مدیران پروژه های وب همواره باید از کار خود محافظت کنند، این ممکن است در ابتدا یک کار سخت و زمان بر به نظر برسد، اما آذرسیس همه راه ها را برای شما هموار می کند. ما در این مقاله با استفاده از یک تکنیک ساده و کاربردی، نحوه محافظت از دایرکتوری های وب با کمک رمز عبور در Nginx را به شما آموزش خواهیم داد. و در واقع به شما نشان خواهیم داد که هنگام اجرا Nginx به عنوان وب سرور چگونه دایرکتوری وب محافظت شده را ایجاد و با رمز عبور انجام دهید. از شما دعوت می کنیم که تا پایان این موضوع جذاب از سری وبلاگ های آذرسیس همراه ما باشید و در صورت تمایل مطالب ما را با دوستان خود به اشتراک بگذارید.
فهرست مطالب
پیش نیازها
برای آشنا شدن با نحوه محافظت از دایرکتوری های وب با کمک رمز عبور در Nginx، یک سری پیش نیاز ها لازم دارید که ما آن ها را برای شما آورده ایم:
- وب سرور Nginx نصب شده
- دسترسی روت به سرور
نحوه ایجاد کاربر و رمز عبور
ابتدا قبل از هر کاری باید فایلی ایجاد کنید که حاوی نام کاربری و رمز عبور رمزگذاری شده باشد، برای این کار مراحل زیر را طی کنید:
زمانی که از آپاچی استفاده می کنید می توانید از ابزار “htpasswd” نیز استفاده کنید. در صورت نصب این ابزار، برای ایجاد فایل رمز عبور کافی است دستور زیر را وارد کنید:
htpasswd -c /path/to/file/.htpasswd username
بیاد داشته باشید که هنگام اجرای دستور فوق باید برای کاربر رمز عبور تنظیم کنید. سپس فایل .htpasswd در دایرکتوری مورد نظر ایجاد خواهد شد.
همچنین می توانید فایل .htpasswd را به صورت دستی و بدون کمک ابزار “htpasswd” نیز ایجاد کنید. دقت کنید که فایل باید دارای سینتاکس زیر باشد:
username:encrypted-password:comment
نحوه ایجاد پسورد رمزگذاری شده
با کمک تابع یکپارچه “crypt” از Perl می توانید رمز عبور ایجاد کنید. دستور زیر یک نمونه از تابع فوق است:
perl -le 'print crypt("your-password", "salt-hash")'
دستور زیر یک مثال زندگی واقعی است:
perl -le 'print crypt("#12Dfsaa$fa", "1xzcq")'
در این مرحله باید بصورت زیر یک فایل باز کنید و نام کاربری و کاربر ایجاد شده را در استرینگ آن قرار دهید و با نقطه ویرگول آن ها را از هم جدا کنید:
vi /home/azarsys/.htpasswd
در ادامه مراحل محافظت از دایرکتوری های وب، باید نام کاربری و رمز عبور خود را به شکل زیر قرار دهید:
azarsys:1xV2Rdw7Q6MK.
برای ذخیره فایل ابتدا Esc و سپس :wq را بزنید.
نحوه بروزرسانی و پیکربندی Nginx برای محافظت از دایرکتوری های وب
مرحله بعدی در نحوه محافظت از دایرکتوری های وب با کمک رمز عبور در Nginx این است که ابتدا باید فایل پیکربندی 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/azarsys/.htpasswd;
به یاد داشته باشید که فایل را ذخیره کرده، سپس با کمک دستور زیر Nginx را ریستارت کنید:
systemctl restart nginx OR service nginx restart
در نهایت برای تکمیل نحوه محافظت از دایرکتوری های وب با کمک رمز عبور در Nginx، آدرس IP خود را در مرورگر خود کپی و سپس پیست نمایید، اما دقت کنید که باید از شما رمز عبور خواسته شود.
اگر خواستید محافظت با پسورد را از سایت حذف کنید می توانید دو خطی را که به فایل .htpasswd اضافه کرده اید، حذف کنید یا دستور زیر را وارد کنید:
htpasswd -D /path/to/file/.htpasswd username
پس از طی این مراحل محافظت از دایرکتوری های وب با رمز عبور Ngnix به پایان می رسد و می توانید از مزایا آن بهره ببرید.
آذرسیس ارائه دهنده سرور اختصاصی با آپتایم 99.9 درصد، قدرت بالا و انعطاف پذیری زیاد همراه همیشگی کسب و کار شماست.
لازم به ذکر است آذرسیس تا حدی به خدمات خود اطمینان دارد که در صورت عدم نارضایتی کاربران، امکان ضمانت بازگشت وجه تا 7 روز را به شما عزیزان می دهد.
سخن آخر
در این مقاله نحوه محافظت از دایرکتوری های وب با کمک رمز عبور در Nginx آموزش داده شد، که کاملاً مناسب مدیران پروژه ای می باشد. وب باید از کار خود به روشی محافظت کند و می تواند این کار را با قرار دادن رمز عبور انجام دهد، در واقع شما با این کار دایرکتوری وب اصلی را محافظت می کنید. امیدوارم مقاله محافظت از دایرکتوری های وب برایتان مفید بوده باشد، در صورتی که سوالی برای تان پیش بیاید می توانید از طریق ارسال تیکت به صورت 24 ساعته با کارشناسان آذرسیس در ارتباط باشید.