خانه / سیستم عامل لینوکس / اوبونتو / چگونه وب سرور NGINX را بر روی اوبونتو ۱۶٫۰۴ امن کنیم؟
چگونه وب سرور NGINX را بر روی اوبونتو ۱۶٫۰۴ امن کنیم؟

چگونه وب سرور NGINX را بر روی اوبونتو ۱۶٫۰۴ امن کنیم؟

همانطور که می دانید Let’s Encrypt گواهینامه رایگانی است که توسط ISRG ارائه شده است. این گواهینامه روش آسان و خودکاری را برای  فراهم کردن گواهینامه های رایگان SSL/TSL  در اختیار افراد قرار می دهد که مراحل ضروری برای فعالسازی رمزگذاری و ترافیک HTTPS بر روی وب سرور هستند. این نرم افزار را می توان در حضور دسترسی شل به سرور نیز مورد استفاده قرار داد. در این مقاله سعی می کنیم نحوه استفاده از certbot را برای فراهم کردن گواهینامه رایگان SSL مورد بررسی قرار دهیم و ببینیم چگونه می توانیم آن را به همراه Nginx بر روی سرور اوبونتو استفاده نماییم. پس همراه وب ایده باشید.

 نصب Certbot:

اولین مرحله نصب Certbot است که تقریبا همه فرآیندهای موردنیاز را خودکار می سازد. توسعه دهندگان Certbot مخزن نرم افزارهای اوبونتوی خود را دارند که دربرگیرنده نرم افزارهای جدیدتری نسبت به نرم افزارهای موجود در مخزن اوبونتو می باشد. به کمک دستور زیر، مخزن Certbot را اضافه کنید:

 

در مرحله بعدی، فهرست منابع APT را به روزرسانی نمایید:

 

در این مرحله از کار، می توان Certbot را به کمک دستور زیر نصب کرد:

 

خوب حالا Certbot نصب شده و آماده ی استفاده هست.

فراهم کردن گواهینامه:

برای فراهم کردن گواهینامه SSL، افزونه های Certbot متعددی وجود دارد. این افزونه ها به فراهم کردن گواهینامه کمک می کنند ولی نصب و پیکربندی شان بر روی وب سرو بر عهده ادمین است. ما در این مقاله سعی می کنیم از افزونه ای به نام Webroot استفاده کنیم. این افزونه در مواردی که می توان محتوای موجود را اصلاح کرد توصیه می شود.  در طول فرآیند صدور و انتشار گواهینامه نیازی به متوقف کردن وب سرور نیست.

 پیکربندی NGINX:

افزونه Webroot یک فایل موقت برای هر کدام از دامنه های موجود در دایرکتوری با نام .well-known ایجاد می کند. در این مقاله دایرکتوری روت ما /var/www/html نام دارد. اطمینان حاصل کنید که دایرکتوری برای Let’s Encrypt در دسترس است و می تواند آن را تایید کند. برای انجام اینکار،پیکربندی NGINX را ویرایش کنید. به کمک ویرایشگر فایل، /etc/nginx/sites-available/default  را باز کنید:

 

در این فایل، در بلوک سرور، محتوای زیر را قرار دهید:

 

فایل را ذخیره کرده و از آن خارج شوید. پیکربندی NGINX را بررسی کنید.

 

اگر خطایی وجود نداشته باشد باید پیام زیر را دریافت کنید:

 

NGINX را ریستارت کنید:

 

فراهم کردن گواهینامه با Certbot:

مرحله بعدی فراهم کردن گواهینامه جدید به کمک Certbot و افزونه Webroot است. در این مقاله ما سعی می کنیم دامنه ی نمونه ای با عنوان www.example.com را امن نماییم. باید هر دامنه ای که مجبور هستید با گواهینامه امن کنید را مشخص نمایید. دستور زیر را اجرا نمایید:

 

در طول این فرآیند، Cerbot آدرس ایمیل معتبری را برای ارسال نوتیفیکیشن درخواست خواهد کرد. بعد از اینکه با قوانین موجود موافقت کردید، گواهینامه جدید برایتان فراهم خواهد شد. در انتها، دایرکتوری/etc/letsencrypt/archive  در برگیرنده فایل های زیر خواهد بود:

  • pem
  • pem
  • pem

همچنین Certbot یک لینک برای  فایل های اخیر گواهینامه در etc/letsencrypt/live/domain_name/ ایجاد خواهد کرد.  این همان مسیری است که در پیکربندی سرور از آن استفاده خواهیم کرد.

 پیکربندی SSL/TLS بر روی NGINX:

خوب مرحله بعدی، پیکربندی سرور است. اسنیپت جدیدی را در /etc/nginx/snippets/ ایجاد کنید. این اسنیپت بخشی از فایل پیکربندی است که  می توان آن را در فایل پیکربندی ویرچوال هاست قرار داد. پس فایل جدیدی ایجاد کنید:

 

محتوای این فایل، دستوردهنده ای خواهد بود که موقعیت گواهینامه و Key را مشخص می کند. محتوای زیر را پیست کنید:

 

ما به جای domain_name  عبارت example.com را قرار داده ایم. شما باید از نام دامنه خود استفاده کنید.

 ویرایش پیکربندی NGiNX:

فایل ویرچوال هاست پیش فرض را ویرایش کنید:

 

 

این کد، رمزگذاری بر روی NGINX را فعال می سازد. حالا فایل را ذخیره کرده و ببندید. فایل پیکربندی NGINX را بررسی کنید:

 

 

حالا NGINX را به کمک دستور زیر ریستارت کنید:

 

نتیجه گیری:

دنبال کردن مراحل بالا، به شما کمک می کند وب سرور مبتنی بر NGINX امنی داشته باشید. البته این تنها پیکربندی اولیه است و می توان پارامترهای مختلفی را برای شخصی سازی همه موارد بر اساس نیازهای موجود به کار برد.

جوابی بنویسید

ایمیل شما نشر نخواهد شدخانه های ضروری نشانه گذاری شده است. *

*