HSTS( اچ اس تی اس) چیست؟
HSTS( اچ اس تی اس) یا HTTP Strict Transport Security یکی از ابزارهای اساسی در دستهی امنیت وب است که به طور فراگیر در سطح اینترنت استفاده میشود. این استاندارد به مرورگرها و کلاینتها اعلام میکند که ارتباط با یک وبسایت باید حتماً از طریق پروتکل HTTPS (یا HTTP امن) انجام شود و هرگونه تلاش برای دسترسی از طریق HTTP باید بهطور خودکار به HTTPS تبدیل شود.
به طور ساده، HSTS مانع از امکان دسترسی به سایت از طریق روشهای غیرامن مثل HTTP میشود. این استاندارد بهصورتی عمل میکند که وبسرور در زمانی که با یک مرورگر ارتباط برقرار میکند، یک هدر خاص (header) را ارسال میکند که حاوی دستوراتی است که مرورگر را ملزم به استفاده از HTTPS برای ارتباط با سایت میکند.
استفاده از HSTS( اچ اس تی اس) به دو عنوان مهم برای امنیت اطلاعات میتواند آورده شود:
- محافظت در برابر حملات MITM (Man-in-the-Middle): این حملات زمانی رخ میدهند که مهاجمان توانایی میانرده کردن (intercepting) ارتباطات بین کاربران و سرور را دارند. با فعالسازی HSTS، مهاجمان نمیتوانند ارتباطات را به HTTP تغییر داده و از امنیت ارتباطات استفاده کنند.
- جلوگیری از حملات downgrade: در این حملات، مهاجمان تلاش میکنند ارتباطات را از حالت امن HTTPS به حالت ناامن HTTP تبدیل کنند. استفاده از HSTS این امکان را از بین میبرد و موجب میشود که حتی اگر تلاشی برای تغییر ارتباط به HTTP انجام شود، مرورگر بهطور خودکار آن را به HTTPS تبدیل کند.
بهطور خلاصه، HSTS یک استاندارد قدرتمند و ضروری برای افزایش امنیت ارتباطات وب است که با ارسال هدرهای مربوط، مرورگرها را به استفاده از اتصالات امن HTTPS برای دسترسی به سایتها ملزم میکند. این استاندارد تضمین میکند که اطلاعات حساس کاربران در حین ارتباطات وب محافظت شده و از تهدیدهای امنیتی جلوگیری شود.
الزامات فعالسازی HSTS( اچ اس تی اس):
برای اینکه پروتکل HSTS بهدرستی و مطابق با انتظارات کار کند، باید الزامات زیر را رعایت کنید. بررسی و رعایت این موارد قبل از فعالسازی HSTS میتواند به کاهش حملات سایبری و افزایش امنیت وبسایت شما کمک کند:
- فعالسازی HTTPS قبل از HSTS: ابتدا باید اطمینان حاصل کنید که وبسایت شما از پروتکل HTTPS استفاده میکند. بدون فعالسازی HTTPS، مرورگرها نمیتوانند تنظیمات HSTS را بپذیرند و اعمال کنند. بنابراین، گواهی SSL معتبر را نصب کنید و وبسایت خود را به HTTPS منتقل کنید.
- حفظ فعال بودن HTTPS: پس از فعالسازی HSTS، باید اطمینان حاصل کنید که HTTPS همواره فعال باقی بماند. این به معنای نگه داشتن گواهی SSL و اطمینان از عملکرد صحیح آن است. در صورتی که HTTPS غیرفعال شود، HSTS نیز کارایی خود را از دست خواهد داد.
- اجتناب از تغییر رکوردهای DNS: بعد از فعالسازی HSTS، از تغییر رکوردهای DNS از حالت Proxied به DNS only خودداری کنید. این تغییر میتواند موجب دسترسی مستقیم به سرور شود که ممکن است خطرات امنیتی به همراه داشته باشد.
- اجتناب از ریدایرکت از HTTPS به HTTP: پس از فعالسازی HSTS، باید از ریدایرکت کردن کاربران از HTTPS به HTTP خودداری کنید. این کار نه تنها خلاف اصول امنیتی است، بلکه باعث میشود که HSTS بیاثر شود و کاربران به نسخه ناامن سایت هدایت شوند.
- حفظ سرویس SSL فعال: بعد از فعالسازی HSTS، سرویس SSL باید همچنان فعال باقی بماند. غیرفعالسازی SSL موجب میشود که HSTS نتواند ارتباطات امن را تضمین کند و امنیت سایت به خطر بیفتد.
ذکر این نکته ضروری است که برای انتقال وبسایت از HTTP به HTTPS به یک گواهی SSL معتبر نیاز دارید. این انتقال باعث بهبود امنیت و اعتماد کاربران به وبسایت شما میشود و همچنین میتواند تاثیر مثبتی بر رتبهبندی سایت شما در موتورهای جستجو داشته باشد.
فعالسازی HSTS( اچ اس تی اس) در وبسرور آپاچی و لایت اسپید:
برای فعالسازی HSTS در وبسرور آپاچی و لایت اسپید، ابتدا به فایل .htaccess در پوشه public_html در فایل منیجر هاست دسترسی پیدا کنید. سپس کدهای زیر را به فایل .htaccess اضافه کنید:
این کد تنظیمات HSTS را اعمال میکند و مشخص میکند که مرورگرها باید برای مدت یک سال (31536000 ثانیه) ارتباط را فقط از طریق HTTPS برقرار کنند. همچنین با استفاده از preload، میتوانید وبسایت خود را برای اضافه شدن به فهرست HSTS preload که توسط مرورگرها مورد استفاده قرار میگیرد، ثبت کنید.
اگر میخواهید همه سابدامینهای خود نیز از HTTPS استفاده کنند، میتوانید از کد زیر استفاده کنید:
با اضافه کردن includeSubDomains، تمام سابدامینهای شما نیز مجبور به استفاده از HTTPS میشوند.
با این اقدام، وبسایت شما بهصورت خودکار از HTTP به HTTPS ریدایرکت میشود و از مزایای امنیتی HSTS بهرهمند میشود.
فعال کردن HSTS( اچ اس تی اس) در وبسرور NGINX:
برای فعال کردن HSTS در وبسرور NGINX، شما باید کد زیر را به فایل تنظیمات nginx.conf در وبسرور خود اضافه کنید:
add_header Strict-Transport-Security “max-age=63072000;”;
این کد مشخص میکند که مرورگرها باید برای مدت دو سال (63072000 ثانیه) ارتباط را فقط از طریق HTTPS برقرار کنند.
بعد از افزودن این کد، وبسرور NGINX خود را ریاستارت کنید تا تنظیمات اعمال شود. حالا وبسایت شما از HSTS بهرهمند میشود و ارتباط با آن تنها از طریق HTTPS انجام میشود.
در نتیجه:
فعالسازی پروتکل HSTS یکی از مهمترین گامها در جهت افزایش امنیت وبسایتها و محافظت از کاربران در برابر حملات سایبری است. با اعمال این پروتکل، مرورگرها ملزم میشوند تا تمام ارتباطات با سایت شما را از طریق HTTPS برقرار کنند و هرگونه تلاش برای دسترسی از طریق HTTP بهطور خودکار به HTTPS تبدیل میشود. این ویژگی از حملات downgrade و فرد واسط (MITM) جلوگیری میکند و امنیت دادههای کاربران و کوکیها را بهبود میبخشد.
برای بهرهمند شدن از مزایای HSTS، ابتدا باید HTTPS را با استفاده از گواهی SSL معتبر فعال کنید و سپس با اعمال تنظیمات مناسب در فایلهای پیکربندی سرور، این پروتکل را فعال نمایید. همچنین باید اطمینان حاصل کنید که HTTPS همواره فعال و عملکرد صحیحی داشته باشد.
با رعایت الزامات و مراحل فعالسازی HSTS، شما میتوانید امنیت وبسایت خود را به میزان قابل توجهی افزایش دهید، اعتماد کاربران را جلب کنید و همچنین بهبود در رتبهبندی سایت خود در موتورهای جستجو را تجربه کنید. این اقدامات نه تنها از نظر امنیتی حیاتی هستند، بلکه میتوانند به بهبود کلی تجربه کاربری و اعتماد کاربران به وبسایت شما کمک کنند.