پرش به مطلب اصلی

تنظیمات HTTPS

به‌وسیله‌ی تنظیمات HTTPS ابر آروان می‌توانید پروتکلی که ارتباط کاربران با سایت و ارتباط سرورهای لبه CDN با سرور اصلی میزبان سایت توسط آن انجام می‌شود را مدیریت کنید. هم‌چنین در این بخش از پنل ابر آروان می‌توانید تنظیمات مربوط به بارگذاری محتوای وب به‌وسیله‌ی پروتکل امن HTTPS و تنظیمات استفاده از گواهینامه‌ی (SSL/TLS) رایگان ابر آروان را انجام دهید یا گواهینامه‌ی شخصی خود را بارگذاری کنید. تنظیمات مربوط به HSTS و هم‌چنین HTTP2 نیز در این قسمت انجام خواهد شد.

فعال‌سازی HTTPS

با فعال‌سازی این بخش، ارتباط کاربران ‌وب‌سایت شما با سرورهای لبه CDN روی پروتکل HTTPS برقرار خواهد شد و پروتکل امن SSL/TLS روی دامنه‌ی شما فعال می‌شود.

با فعال‌سازی گواهینامه‌ی ابر آروان، یک گواهی SSL از طریق Let's encrypt برای دامنه‌ی شما صادر خواهد شد که اعتبار ۳ ماهه دارد و پس از ۳ ماه، مجدد به‌شکل خودکار فعال خواهد شد.

برای فعال‌سازی HTTPS روی دامنه از طریق API می‌توانید از نمونه درخواست زیر استفاده کنید:

curl --location --request PATCH 'https://napi.arvancloud.ir/cdn/4.0/domains/example.com/ssl' \
--header 'authority: napi.arvancloud.ir' \
--header 'accept: application/json, text/plain, */*' \
--header 'authorization: API KEY 1 2 3 4' \
--header 'content-type: application/json' \
--data '{"ssl_status":true}'

هم‌چنین برای غیرفعال کرد آن کافی است تا مقدار کلید ssl_status را برابر false قرار دهید.

هم‌چنین با آپلود گواهی‌نامه‌ی شخصی، می‌توانید از گواهی‌نامه SSL/TLS شخصی خود استفاده کنید. با انتخاب این گزینه و بارگذاری فایل‌های مربوط به کلید خصوصی (Private Key) و گواهی‌نامه یا همان Certificate دامنه‌ی خود، با فرمت PEM، دامنه‌ی شما از گواهی شخصی آپلود شده استفاده خواهد کرد.

برای آپلود گواهی‌نامه‌ی شخصی‌تان روی دامنه از طریق API می‌توانید از نمونه درخواست زیر استفاده کنید:

curl --location 'https://napi.arvancloud.ir/cdn/4.0/domains/yourdomain.com/ssl/certificates' \
--header 'authority: napi.arvancloud.ir' \
--header 'accept: application/json, text/plain, */*' \
--header 'authorization: API KEY 1 2 3 4' \
--header 'content-type: multipart/form-data; boundary=----WebKitFormBoundary7ZnkHJORO8lP1SVi' \
--data 'data'

پیش‌فرض شدن HTTPS

با فعال شدن این قابلیت، تمام ترافیک HTTP به‌شکل خودکار به HTTPS انتقال پیدا می‌کند. به کمک پروتکل (HSTS (HTTP Strict Transport Security این کار به امن‌ترین روش ممکن انجام می‌شود و از حملات Man-in-the-Middle احتمالی نیز جلوگیری خواهد کرد.

پس از فعال‌سازی این امکان و Cache شدن تنظیم HSTS در مرورگر کاربران، اعمال تغییرات تا زمان منقضی شدن تنظیمات ممکن نخواهد بود.

برای فعال‌سازی این ویژگی از طریق API می‌توانید از نمونه درخواست زیر استفاده کنید:

curl --location --request PATCH 'https://napi.arvancloud.ir/cdn/4.0/domains/example.com/ssl' \
--header 'authority: napi.arvancloud.ir' \
--header 'accept: application/json, text/plain, */*' \
--header 'authorization: API KEY 1 2 3 4' \
--header 'cache-control: no-cache' \
--header 'content-type: application/json' \
--data '{"https_redirect":true}'

هم‌چنین برای غیرفعال کرد آن کافی است تا مقدار کلید https_redirect را برابر false قرار دهید.

بازنویسی فایل‌ها بر اساس HTTPS

با فعال‌سازی این قابلیت، تمامی لینک‌های استفاده شده در فایل‌های HTML و JS که از پروتکل HTTP استفاده می‌کنند، به‌شکل خودکار با لینک‌های HTTPS جایگزین می‌شوند.

برای فعال‌سازی این ویژگی از طریق API می‌توانید از نمونه درخواست زیر استفاده کنید:

curl --location --request PATCH 'https://napi.arvancloud.ir/cdn/4.0/domains/example.com/ssl' \
--header 'authority: napi.arvancloud.ir' \
--header 'accept: application/json, text/plain, */*' \
--header 'authorization: API KEY 1 2 3 4' \
--header 'cache-control: no-cache' \
--header 'content-type: application/json' \
--data '{"replace_http":true}'

هم‌چنین برای غیرفعال کرد آن کافی است تا مقدار کلید replace_http را برابر false قرار دهید.

تنظیم حداقل نسخه TLS

HTTPS برای برقراری امنیت ارتباط میان دو نقطه از پروتکل TLS بهره می‌گیرد. ابر آروان برای تضمین‌ دسترسی کاربران به داده‌ها در کم‌ترین زمان ممکن و با بیش‌ترین امنیت، یکی از پشتیبانی‌کنندگان پروتکل TLS 1.3 در سطح جهانی است. بهبودهای عملکردی در این پروتکل، سبب شده تا افزون‌بر فراهم آمدن امنیت بیش‌تر نسبت به نسخه‌های قدیمی‌تر آن، تاخیر کاهش و سرعت دسترسی به داده‌های امن افزایش چشم‌گیری یابد.

در این بخش می‌توانید پایین‌ترین نسخه‌ی TLS مورد پشتیبانی را انتخاب کنید. به این ترتیب، هر کاربری که از نسخه‌ی TLS پایین‌تری نسبت به نسخه‌ی تعیین‌شده استفاده کند، امکان مشاهده‌ی وب‌سایت از طریق HTTPS را نخواهد داشت.

برای فعال‌سازی این ویژگی از طریق API می‌توانید از نمونه درخواست زیر استفاده کنید:

curl --location --request PATCH 'https://napi.arvancloud.ir/cdn/4.0/domains/example.com/ssl' \
--header 'authority: napi.arvancloud.ir' \
--header 'accept: application/json, text/plain, */*' \
--header 'authorization: API KEY 1 2 3 4' \
--header 'content-type: application/json' \
--data '{"tls_version":"TLSv1.2"}'

در کلید tls_version برای تنظیم Default مقدار “” و برای دیگر نسخه های TLS مقدار “TLSvx.x” را قرار دهید.

پروتکل HSTS

وظیفه‌ی اصلی این پروتکل انتقال امن وب‌سایت و کلیه لینک‌ها از پروتکل HTTP به HTTPS است. به کمک امکانات موجود در پنل کاربری ابر آروان، به‌سادگی می‌توانید تمام ویژگی‌های پیشرفته این پروتکل از جمله مدت زمان الزام مرورگر به نمایش سایت با HTTPS، پیروی تمام زیردامنه‌ها از HSTS و آماده‌سازی دامنه برای ارایه به موتور جست‌وجو را فعال کنید.

پس از کلیک روی گزینه «ویرایش تنظیمات» امکان فعال کردن ویژگی‌های این قابلیت با توجه به نیازتان فراهم خواهد شد.

بیش‌تر کاربران به‌شکل پیش فرض از طریق پروتکل HTTP به سرورها متصل می‌شوند. در شرایطی که استفاده از پروتکل امن اجباری باشد، باید این درخواست ها به‌شکل اتوماتیک به HTTPS تغییر مسیر دهند. استفاده از روش‌های عادی می‌تواند مخاطرات امنیتی بسیاری را به همراه داشته باشد. HTTP Strict Transport Security یا به‌شکل خلاصه HSTS مجموعه سیاست‌های امنیتی است که به‌شکل امن به وب‌سایت‌ها اجازه می‌دهد قفط از طریق پروتکل HTTPS قابل دسترس باشند. این سیاست‌ها در یک‌ وب‌سایت، از طریق ارسال یک Header به عنوان Strict-Transport-Security به کاربر اعلام می‌شود.

برای فعال‌سازی HSTS روی دامنه از طریق API می‌توانید از نمونه درخواست زیر استفاده کنید:

curl --location --request PATCH 'https://napi.arvancloud.ir/cdn/4.0/domains/example.com/ssl' \
--header 'authority: napi.arvancloud.ir' \
--header 'accept: application/json, text/plain, */*' \
--header 'authorization: API KEY 1 2 3 4' \
--header 'content-type: application/json' \
--data '{"hsts_status":true,"hsts_max_age":"2mo","hsts_subdomain":true,"hsts_preload":true}'

در این درخواست کلید‌های hsts_status ،hsts_subdomian و hsts_preload مقادیر true و false را می‌پذیرند. هم‌چنین برای تنظیم کلید hsts_max_age پارامتر دریافتی به‌شکل “xmo” خواهد بود. (x مدت زمان موردنظرتان است که می‌تواند یکی از اعداد ۱-۲-۳-۴-۵-۶-۱۲ و ۲۴ باشد)

واکنش مرورگر به HSTS

پس از ارسال اولین درخواست توسط کاربر، سرور یک Header مانند نمونه‌ی زیر که سیاست‌های پروتکل HSTS را درون خود دارد، ارسال می‌کند.

Strict-Transport-Security: max-age=2628000; includeSubDomains;

به این معنی که این دامنه و کلیه‌ی زیر دامنه‌های آن تا ۲۶۲۸۰۰۰ ثانیه دیگر (یک ماه) فقط از طریق پروتکل HTTPS قابل دسترس خواهند بود. در اینجا مرورگر دو کار مهم را انجام می دهد:

  • به‌شکل خودکار تمام لینک‌های غیر امن را به لینک‌های امن تغییر می‌دهد. برای نمونه http://www.arvancloud.ir به https://www.arvancloud.ir تغییر می‌کند.
  • اگر مرورگر نتواند از امنیت لینک اطمینان حاصل کند، پیام خطایی نمایش داده می‌شود و اجازه‌ی دسترسی به وب‌سایت داده نخواهد شد.

راهکار گوگل و Preload

فرض کنید یک کاربر با یک سیستم‌عامل جدید برای اولین بار و در یک محیط ناامن آدرس وب‌سایتی را در مرورگر وارد می‌کند. در همین اولین ارتباط و دریافت سیاست های امنیتی HSTS یک خطر امنیتی وجود دارد. گوگل برای پروژه کرومیوم تصمیم گرفت تا اسامی سایت هایی که باید همواره از طریق پروتکل HTTPS متصل شوند را Hardcode کند. البته شما نیز می توانید نام وب‌سایت خود را به این لیست اضافه کنید. کافی است از طریق این صفحه دامنه‌ی خود را وارد کنید. پیش از انجام این‌کار از داشتن شروط زیر مطمین شوید.

  • یک Certificate معتبر داشته باشید.
  • تمام ترافیک‌های HTTP را به HTTPS انتقال دهید.
  • تمام زیردامنه‌ها تنها از طریق HTTPS قابل دسترس باشند.
  • Header درستی جهت تنظیمات برای کاربران ارسال شود.

ابر آروان تمام این موارد را به‌شکل خودکار برای شما انجام می دهد. تنها کافی است که شما نام دامنه خود را به گوگل اعلام کنید. در حال حاضر جز گوگل کروم؛ فایرفاکس، اپرا، سافاری و به زودی مایکروسافت اینترنت اکسپلورر نیز از این لیست گوگل استفاده می‌کنند.

لیست مرورگران پشتیبانی‌کننده HSTS

  • گوگل کروم از نسخه 4.0.211.0
  • فایرفاکس از نسخه 4
  • اینترنت اکسپلورر 11 و مایکروسافت اج ( هم‌زمان با سیستم عامل ویندوز 10)
  • اپرا از نسخه 12
  • سافاری از زمان ارایه سیستم‌عامل OS X Mavericks از ژانویه 2013

پروتکل ارتباط آروان با سرورهای اصلی

با تنظیم این گزینه می‌توانید شیوه‌ی ارتباط بین سرورهای آروان و سرور اصلی خود را مشخص کنید. این ارتباط می‌تواند به‌شکل HTTP ،HTTPS یا خودکار باشد. برای فعال‌سازی گزینه‌ی HTTPS یا خودکار نیاز است سرور شما پروتکل HTTPS را پشتیبانی کند.

در حالت خودکار، پروتکل ارتباطی سرورهای آروان با سرور اصلی براساس پروتکل درخواستی کاربر به سرورهای آروان خواهد بود. شما می‌توانید برای هر کدام از رکوردها در بخش فعال‌سازی پروتکل ارتباطی با سرور اصلی را به‌شکل جداگانه مشخص کنید. اگر در بخش فعال‌سازی گزینه‌ی پروتکل روی پیش‌فرض باشد، تنظیمات این بخش لحاظ خواهد شد.

برای فعال‌سازی و مدیریت این ویژگی از طریق API می‌توانید از نمونه درخواست زیر استفاده کنید:

curl --location --request PATCH 'https://napi.arvancloud.ir/cdn/4.0/domains/example.com/load-balancers/settings' \
--header 'authority: napi.arvancloud.ir' \
--header 'accept: application/json, text/plain, */*' \
--header 'authorization: API KEY 1 2 3 4' \
--header 'Content-Type: text/plain' \
--data '{"protocol":"https"}'

در این درخواست کلید protocol سه مقدار http ،https و auto را می‌پذیرد.