منو سایت

علامت نام سرور (SNI) چیست؟

 تاریخ انتشار :
/
  وبلاگ
علامت نام سرور (SNI) چیست؟

علامت نام سرور (SNI) چیست؟ امنیت نقش مهمی در اینترنت دارد. در نتیجه، استانداردها، گواهی ها و پروتکل هایی وجود دارند که سعی می کنند از کاربران و همچنین سرورها در برابر حملات مخرب محافظت کنند. یکی از این پروتکل ها TLS (Security Layer Security) نام دارد. از آنجایی که این سیستم مشکل ساز است، شناسه نام سرور (SNI) به عنوان پسوند عمل می کند.

فناوری SNI چیست؟

چرا نماد نام سرور مورد نیاز است؟

قبل از اینکه بدانید چرا SNI توسعه یافته است. ابتدا باید بدانید که TLS چگونه کار می کند. جانشین لایه سوکت ایمن (SSL) با استفاده از به اصطلاح TLS دستکاری شده است. اینجا جایی است که مشتری و سرور – در عمل، معمولاً به معنای مرورگر وب و وب سایت است – قبل از شروع انتقال واقعی داده، اطلاعات را مبادله می کنند. با استفاده از این دستکاری مجازی، سرور خود را برای مشتری شناسایی می کند و گواهی امنیتی مربوطه را ارسال می کند. پس از تایید مشتری، هر دو شریک ارتباطی داده ها را دریافت می کنند، در صورتی که تایید منفی باشد، دیگر انتقال داده اتفاق نمی افتد.

علامت نام سرور (SNI) چیست؟

اما چه اتفاقی می افتد زمانی که چندین وب سایت با یک آدرس IP در حال اجرا هستند، همانطور که در مورد میزبانی مجازی وجود دارد؟ از آنجایی که IPv6 هنوز به طور کامل خود را تثبیت نکرده است، ما باید با محدوده آدرس IP بسیار محدودی کار کنیم و هر دامنه نمی تواند آدرس IP خود را ادعا کند. بنابراین به کدام مشتری “سلام” (اولین مرحله برای دریافت TLS) پاسخ می دهد؟ احتمال اینکه وب سایت اشتباه پاسخ دهد و گواهی اشتباه – با نام میزبان صحیح – ارسال شود و ارتباط برقرار نشود، زیاد است. به همین دلیل است که مشتریان لازم است دامنه را با سرور (میزبان) که ترجیح می دهند با آن ارتباط برقرار کنند به اشتراک بگذارند. برای این منظور، Server Name Indicator معرفی شد.

SNI چگونه کار می کند؟

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

SNI فرمت TLS است. پروتکل رمزگذاری بخشی از پشته پروتکل TCP/IP است. به طور مشابه، TLS پروتکل کنترل انتقال (TCP) را با رمزگذاری گسترش می دهد. لایه اضافی HTTP را به HTTPS تبدیل می کند. اگر TLS را با یک شناسه سرور نام گذاری کنید، امضا یک فیلد دیگر به پروتکل امنیتی اضافه می کند: ClientHelloExtension دارای یک قسمت ServerName است. در اینجا مشتری نام میزبان را وارد می کند (مرورگر وب این کار را به طور خودکار انجام می دهد) که می خواهد به آن آدرس داده شود. این تضمین می کند که پاسخ صحیح میزبان درست است.

نماد نام سرور در مرورگر

به عنوان یک کاربر عادی، نباید با فرآیند SNI تماس بگیرید. در بیشتر موارد، کاربران نیازی به نصب یا پیکربندی چیزی برای این کار ندارند. استفاده از سیستم عامل فعلی و یک مرورگر مدرن کاملاً کافی است. فایرفاکس، کروم، اج، اپرا و سافاری همگی از برنامه های پیش فرض پشتیبانی می کنند. برای برخی از کاربرانی که هنوز از ویندوز XP استفاده می کنند. (یا حتی نسخه های قدیمی تر ویندوز) و اینترنت اکسپلورر، که نشان می دهد نام سرور در دسترس نیست. حتی اگر هنوز از سیستم عاملی استفاده می‌کنید که دیگر توسط به‌روزرسانی پشتیبانی نمی‌شود، ممکن است این گزینه را داشته باشید که مرورگر دیگری را نصب کنید که از SNI پشتیبانی می‌کند. اکثر مرورگرهای موبایل نیز از SNI استفاده می کنند.

معایب SNI چیست؟

توکن های نام سرور همه مزایا نیستند. به عنوان مثال، SNI توسط همه مرورگرهای وب پشتیبانی نمی شود. با این حال، این تنها بر تعداد کمی از کاربران تأثیر می گذارد. واقعیت این است که SNI یک مدل کامل نیست (بیشتر یک راه حل انتقال ساده است.) این را می توان در نحوه انتقال اطلاعات غیر رمزگذاری شده مشاهده کرد. درست است، تنها اطلاعات نام میزبان است. اما این اطلاعات را می توان در برابر حملات شخص ثالث حتی با رمزگذاری اولیه محافظت کرد. اگر مجبور نیستید از SNI استفاده کنید. و در عوض، هر وب سایت آدرس IP مخصوص به خود را داشت که امنیت آن را بیشتر می کرد.

به آن امتیاز دهید

نشانگر نام سرور (SNI) چیست؟ این اتفاق برای اولین بار در نوین رخ می دهد. ظاهر شد.