آموزش نصب SSL در IIS + ایجاد کد CSR
نصب گواهی امنیتی اس اس ال در IIS شامل ایجاد یا دریافت یک گواهی SSL معتبر، اضافه کردن آن به سرور از طریق IIS Manager، تنظیم بایندینگ برای سایت مورد نظر و اطمینان از فعال بودن پروتکل HTTPS برای تامین امنیت ارتباطات وب…
[ ادامه ]
نصب گواهی امنیتی اس اس ال در IIS شامل ایجاد یا دریافت یک گواهی SSL معتبر، اضافه کردن آن به سرور از طریق IIS Manager، تنظیم بایندینگ برای سایت مورد نظر و اطمینان از فعال بودن پروتکل HTTPS برای تامین امنیت ارتباطات وبسایت است. در این بلاگ آیسرت، ضمن معرفی مزایای استفاده از IIS، مراحل نصب SSL در IIS را بهصورت گامبهگام و همراه تصاویر آموزش میدهیم و تفاوت ورژنهای مختلف IIS را بررسی میکنیم. در ادامه همراه ما باشید.
IIS وب سرور قدرتمند مایکروسافت برای میزبانی وب
وب سرور IIS یا (Internet Information Services) یکی از محصولات قدرتمند و محبوب مایکروسافت است که برای میزبانی وبسایتها، برنامههای تحت وب و سرویسهای آنلاین طراحی شدهاست. این وب سرور بهدلیل یکپارچگی کامل با سیستم عامل ویندوز و رابط کاربری ساده، یکی از گزینههای اصلی برای مدیران سرور و توسعهدهندگان وب است. IIS امکانات گستردهای از جمله مدیریت آسان وبسایتها، پشتیبانی از پروتکلهای امنیتی مانند HTTPS و قابلیت گسترش با ماژولهای اضافی را ارائه میدهد. این ویژگیها باعث شدهاست که IIS بهعنوان یک راهحل جامع برای میزبانی وب در محیطهای ویندوزی شناخته شود.
مزایای استفاده از IIS
وب سرور IIS دارای مزایای متعددی است که در ادامه به مهمترین آنها اشاره میکنیم:
- یکپارچگی با ویندوز: IIS بهصورت پیشفرض با سیستم عامل ویندوز سرور ادغام میشود و نیازی به نصب جداگانه ندارد.
- امنیت بالا: امکان پشتیبانی از پروتکلهای امنیتی مانند SSL/TLS و قابلیت مدیریت دسترسیهای کاربران را دارد.
- قابلیت گسترش: با استفاده از ماژولهای اضافی، میتوانیم قابلیتهای IIS را افزایش دهیم.
- رابط کاربری ساده: ابزار مدیریتی IIS یا بهعبارتی (IIS Manager) به شما امکان میدهد بهراحتی وبسایتها و تنظیمات سرور را مدیریت کنید.
تفاوت نسخههای مختلف IIS در نصب و مدیریت SSL
نسخههای مختلف IIS مانند IIS 7، IIS 8 و IIS 10 تفاوتهایی در نصب و مدیریت SSL دارند. در ادامه، جدول این تفاوتها را مشاهده میکنید:
ویژگی |
IIS 7 | IIS 8 (ویندوز سرور 2012) | IIS 10 (ویندوز سرور 2016 و 2019) |
پشتیبانی از پروتکلها |
TLS 1.0 و TLS 1.1 (پیشفرض)، TLS 1.2 با تنظیمات دستی | TLS 1.2 بهصورت پیشفرض فعال | TLS 1.2 و TLS 1.3 (در ویندوز سرور 2019) فعال |
SNI (Server Name Indication) |
پشتیبانی دارد، اما تنظیمات پیچیدهتر است |
پشتیبانی بهبودیافته از SNI |
پشتیبانی کامل و سادهتر |
HSTS (HTTP Strict Transport Security) |
ندارد |
ندارد |
پشتیبانی کامل |
HTTP/2 |
ندارد |
پشتیبانی بهبودیافته |
پشتیبانی کامل |
Centralized SSL Certificate Store |
ندارد | پشتیبانی دارد |
پشتیبانی بهبودیافته |
رابط کاربری | ساده، فاقد برخی قابلیتهای پیشرفته | بهبودیافته با امکانات بیشتر |
پیشرفتهتر با تنظیمات امنیتی گستردهتر |
مراحل نصب SSL در IIS
در اینجا نصب و فعالسازی گواهی SSL روی وب سرور IIS (Internet Information Services) را آموزش میدهیم. اگر شما گواهی SSL خود را از آیسرت تهیه کردهاید، میتوانید فایل pfx آن را با ارسال تیکت به واحد پشتیبانی فنی دریافت کنید. همچنین، اگر فقط مقادیر Certificate، Private Key و CA-Bundle را در اختیار دارید، میتوانید از وبسایتهایی مانند sslshopper.com برای استخراج فایل pfx استفاده کنید.
در صورتی که قبلا یک گواهی SSL روی سرور دیگری نصب کردهاید و قصد انتقال آن به سرور جدید را دارید، ابتدا باید از گواهی خود Export بگیرید و سپس مراحل ارائهشده در این مقاله را دنبال کنید. در انتهای این مقاله، نحوه Export گرفتن از گواهی SSL روی یک سرور را نیز بهطور کامل توضیح میدهیم. مراحل نصب SSL در IIS به شرح زیر است:
١. ایجاد فایل CSR در IIS
برای ایجاد فایل CSR ابتدا میبایست IIS را در ویندوز جستجو و باز کنید.
در IIS Manager به بخش Server Certificates بروید.
بعد از باز کردن گزینه Server Certificates در پنجره باز شده روی گزینه Create Certificate Request کلیک کنید.
در این مرحله، فرمی به شما نمایش داده میشود که شامل اطلاعات لازم برای ساخت کد CSR و در نهایت صدور گواهی SSL بر اساس آن است. برای تکمیل این فرم، مراحل زیر را بهترتیب دنبال کنید:
- Common Name (نام رایج) این فیلد باید شامل نام دامنه یا زیردامنهای باشد که قصد دارید برای آن گواهی SSL دریافت کنید. بهعنوان مثال، اگر دامنه شما example.com است، این فیلد را با example.com یا sub.example.com (برای زیردامنه) پر کنید.
- در فیلد Organization (سازمان)، نام رسمی شرکت یا سازمان خود را وارد کنید. در فیلد Organization Unit (واحد سازمانی)، نام دپارتمان یا بخش مربوطه را وارد کنید (مثلا فناوری اطلاعات یا بخش فروش).
- در فیلد City (شهر)، نام شهر محل استقرار شرکت را وارد کنید. در فیلد State (استان)، نام استان یا ایالت را بنویسید. در فیلد Country (کشور)، کد کشور را وارد کنید (برای ایران کد IR است).
- در ادامه، باید نام دامنه و سایر مشخصات مورد نیاز مانند محل شرکت را وارد کنید. توجه داشته باشید که بهدلیل تحریمهای بینالمللی، ممکن است با وارد کردن اطلاعات مربوط به ایران (مانند کد کشور IR) با مشکل مواجه شوید. در چنین مواردی، بهناچار باید از موقعیت جغرافیایی دیگری (مانند یک کشور غیرتحریمی) استفاده کنید تا فرایند صدور گواهی SSL با موفقیت انجام شود.
در این مرحله Bit Length را روی ۲۰۴۸ بیتی قرار دهید.
در مرحله بعد باید یک فایل متنی اطلاعات CSR ایجاد و انتخاب شود تا اطلاعات CSR در این فایل ایجاد شود. برای این کار، با کلیک راست روی صفحه و ایجاد فایل .TXT نامگذاری فایل را انجام میدهیم و فایل .TXT را انتخاب میکنیم.
بعد از انتخاب فایل در مرحله آخر روی finish کلیک کنید تا CSR ایجاد شود.
در صورت باز کردن فایل CSR باید متنی مشابه تصویر زیر مشاهده کنید.
اکنون میتوانید با استفاده از CSR ایجاد شده، فرآیند خرید گواهینامه SSL خود را از آیسرت انجام دهید. همچنین، در صورت تمایل میتوانید با مراجعه به tools.icert.ir و استفاده از این راهنما، CSR خود را بهصورت آنلاین تولید کنید.
نکات مهم برای تکمیل فرم
ایجاد فایل CSR نیازمند دقت و اطلاعات صحیح است. در زیر به نکات بهطور کامل نوشته شده است:
- دقت در وارد کردن اطلاعات: هرگونه اشتباه در وارد کردن اطلاعات میتواند منجر به رد درخواست گواهی SSL شود.
- استفاده از اطلاعات واقعی: حتی اگر از موقعیت جغرافیایی دیگری استفاده میکنید، سعی کنید سایر اطلاعات (مانند نام شرکت و دامنه) را بهدرستی وارد کنید.
- بررسی مجدد قبل از ارسال: قبل از ارسال فرم، تمامی فیلدها را دوباره بررسی کنید تا از صحت اطلاعات اطمینان مطمئن شوید.
٢. نصب گواهینامه SSL در IIS با استفاده از فایل .pfx
- ابتدا باید فایلهای گواهینامه امنیتی خود شامل کلید خصوصی، گواهی اصلی (Certificate)، گواهی غیر مستقیم (chain) را ذخیره کنید. (بهغیر از private key که شما هنگام تولید CSR ایجاد میکنید، فایل های گواهینامه در مسیر «سرویسها / سرویسهای من» در بخش «نمایش گواهینامه» قابل دسترسی و ذخیره است).
- سپس به وبسایت sslshopper.com مراجعه کنید. در این مرحله از نصب SSL روی ویندوز سرور، سه فایل گواهینامهای را که قبلا با فرمت .txt آماده کردهاید، در قسمتهای مشخص شده آپلود کنید. دقت داشته باشید که گزینه «Type of Current Certificate» را روی «Standard PEM» و گزینه «Type to Convert To» را روی «PFX/PKCS#12» تنظیم کنید. سپس در قسمت «PFX Password» رمز عبور دلخواه خود را تعیین کنید. توضیحات تولید این فایل را میتوانید در همین مقاله بهطور کامل مطالعه کنید.
نکته: حتما رمز عبوری را که در قسمت «PFX Password» وارد میکنید، به خاطر بسپارید، زیرا هنگام Import کردن گواهینامه در IIS به آن نیاز خواهید داشت.
برای نصب گواهی امنیتی در وب سرور IIS با استفاده از فایل .pfx، مراحل زیر را دنبال کنید.
٣. باز کردن IIS Manager
کلیدهای Win + R را فشار دهید، دستور mmc را وارد کنید و Enter بزنید.
در IIS Manager، از منوی سمت چپ روی فایل کلیک کنید و گزینه Add or Remove Snap-in را انتخاب کنید.
در قسمت Available Snap-in گزینه certificate را انتخاب و روی Add کلیک کنید.
پس از کلیک روی OK، در پنجره بعدی گزینه Computer Accounts را انتخاب و سپس روی دکمه Next کلیک کنید.
در این مرحله، گزینه Local Computer را انتخاب کنید و سپس دکمه Finish را بزنید. پس از آن، پنجرههای Add Standalone Snap-in و Add/Remove Snap-in را ببندید و خارج شوید.
با انجام مراحل بالا قابلیت اضافه کردن گواهینامه امنیتی به سیستم انجام شدهاست. در سمت چپ به مسیر مسیر
Console Root > Certificates > [Local Computer] > Personal > Certificates
بروید و مطابق تصویر روی Import کلیک کنید.
روی next کلیک کنید و به مرحله بعد بروید.
مسیر فایل قرارگیری فایل .pfx در سیستم خود را با استفاده از گزینه Browse انتخاب کنید.
روی فایل .pfx کلیک کرده و روی گزینه open کلیک کنید.
مسیر فایل .pfx گواهینامه در فیلد خالی مشخص میشود. روی گزینه Next کلیک کنید:
پسورد واردشده در زمان ایجاد فایل .pfx را وارد و روی گزینه next کلیک کنید.
در این قسمت گزینه automatically select the certificate store based on type of certificate انتخاب و برروی next کلیک کنید.
بعد از انجام مراحل بالا پیغام completing the certificate import wizard مشاهده خواهید کرد. در این مرحله روی گزینه finish کلیک کنید.
در صورتی که تمامی مراحل بهدرستی انجام داده باشید، میتوانید فایل گواهینامه خود را در لیست گواهیهای سرور مشاهده کنید.
به این ترتیب، گواهینامه SSL با موفقیت روی وب سرور IIS نصب شدهاست.
۴. اختصاص گواهینامه به سایت یا فعالسازی SSL
در برخی مواقع، پس از تکمیل فرایند نصب، ممکن است مرورگرها گواهینامه را بهعنوان یک گواهی معتبر تشخیص ندهند و پیامی مشابه «Certificate Not Trusted» نمایش داده شود. برای رفع این مشکل لازم است «Bundle یا Chain Certificate» را روی سرور نصب کنید. در ادامه مراحل انجام این کار را توضیح میدهیم.
- در منو استارت IIS را جستجو کنید.
- در IIS Manager، نام سرور خود را انتخاب کنید.
- روی پوشه Sites کلیک کنید.
- وبسایتی را انتخاب کنید که قصد دارید گواهی SSL را برای آن فعال کنید.
- در بخش Actions و در قسمت Edit Site، گزینه Bindings را انتخاب کنید. این گزینه در تصویر زیر قابل مشاهده است.
در قسمت binding صفحه مطابق با تصویر زیر مشاهده میکنید. روی گزینه Add کلیک کنید. اگر پیش از این لینک HTTPS ایجاد شده است، آن را انتخاب و سپس روی دکمه Edit کلیک کنید.
در بخش Type، از منوی کشویی، گزینه HTTPS را انتخاب کنید. این گزینه برای فعالسازی اتصال امن به وبسایت شما استفاده میشود.
در قسمت IP Address، آیپی اختصاص دادهشده به وبسایت خود را وارد کنید.
اگر آیپی خاصی ندارید یا میخواهید از آیپی پیشفرض سرور استفاده کنید، گزینه Unassigned را انتخاب کنید. این گزینه به سرور امکان میدهد بهطور خودکار از آیپی موجود استفاده کند.
در قسمت Port، شماره پورت پیشفرض را برای HTTPS مقدار 443 قرار دهید و در قسمت SSL Certificate گواهینامه مورد نظر را انتخاب کنید.
- اعمال تنظیمات: پس از انتخاب گواهی، روی گزینه OK کلیک کنید. با این کار، گواهی SSL بهدرستی روی سرور IIS نصب میشود و وبسایت شما از این پس از پروتکل HTTPS برای انتقال امن اطلاعات استفاده خواهد کرد.
- راهاندازی مجدد سرور (در صورت نیاز): در برخی موارد ممکن است نیاز باشد سرور خود را مجددا راهاندازی (Restart) کنید تا تغییرات اعمالشده و گواهی جدید بهدرستی تشخیص داده شود. برای این کار میتوانید از ابزار IIS Manager یا دستورات PowerShell استفاده کنید.
نکته مهم: در صورتی که گواهی SSL شما برای هر دو حالت دامنه (هم با www و هم بدون www) صادر شده است، باید مطمئن شوید که هر دو گواهی بهدرستی روی سرور نصب شدهاند. این کار به کاربران امکان میدهد بدون توجه به اینکه آیا www را در آدرس وارد کردهاند یا نه، از اتصال امن HTTPS استفاده کنند. مراحل قبلی نصب را برای هر دو گواهی انجام دهید تا از نصب گواهی هم با www و هم بدون آن اطمینان حاصل کنید.
نکات مهم پس از نصب SSL در IIS
- پس از نصب گواهی، اتصال HTTPS وبسایت خود را با استفاده از مرورگر یا ابزارهایی مانند SSL Labs تست کنید.
- مطمئن شوید که تمامی بخشهای وبسایت شما بهدرستی با پروتکل HTTPS کار میکنند.
- اگر لینکهای داخلی وبسایت شما هنوز از HTTP استفاده میکنند، آنها را به HTTPS تغییر دهید تا از بروز مشکلات امنیتی جلوگیری شود.
- تغییرات را ذخیره کنید و سایت را ریاستارت کنید.
آموزش Export بکآپ SSL به فایل .pfx
اگر گواهی SSL شما روی یک سرور قدیمی نصب شده و قصد دارید آن را به سرور جدید منتقل کنید، باید ابتدا گواهی را از سرور قبلی Export کرده و سپس آن را روی سرور جدید Import و فعال کنید. در ادامه، مراحل انجام این کار را بهصورت گامبهگام توضیح میدهیم.
باز کردن کنسول مدیریت گواهیها
از منوی Start، روی Run کلیک و عبارت mmc را تایپ کنید.
پس از باز شدن کنسول مدیریت، از منوی File گزینه Add / Remove Snap-in را انتخاب کنید.
از لیست Snap-inهای موجود، گزینه Certificates را انتخاب و روی Add کلیک کنید.
در پنجره بازشده، گزینه Computer Account را انتخاب کنید و Next را بزنید.
سپس Local Computer را انتخاب و روی Finish کلیک کنید.
در نهایت، پنجرههای Add Standalone Snap-in و Add/Remove Snap-in را ببندید.
روی گواهینامه مورد نظر خود که میخواهید از آن نسخه بکآپ بگیرید، کلیک کنید و در All tasks روی Export کلیک کنید و با انتخاب Yes از کلید خصوصی Export بگیرید.
خطاهای متداول در IIS7 و نحوه رفع آن
یکی از خطاهای رایج در IIS7، خطای «Certificate Not Trusted» است. برای رفع این مشکل، مراحل زیر را دنبال کنید:
- بررسی گواهینامههای میانی و ریشه:
اطمینان حاصل کنید که گواهینامههای ریشه (Root) و میانی (Intermediate) به درستی نصب شدهاند.
از ابزار MMC برای مدیریت گواهینامهها استفاده کنید و گواهینامههای میانی را به بخش Intermediate Certificate Authorities اضافه کنید.
- پاکسازی کش مرورگر:
تنظیمات مرورگر و کش مربوط به گواهینامهها را بررسی و در صورت نیاز پاکسازی کنید.
- بررسی تنظیمات IIS:
مطمئن شوید که گواهینامه بهدرستی به سایت اختصاص داده شده است.
نکات مهم برای بهینهسازی SSL در IIS
- استفاده از گواهینامههای معتبر: همیشه از گواهینامههای صادرشده توسط مراجع معتبر (CA) استفاده کنید.
- تنظیمات پیشرفته SSL: در IIS میتوانید از قابلیتهایی مانند HSTS (HTTP Strict Transport Security) برای افزایش امنیت استفاده کنید.
- بررسی منظم گواهینامهها: تاریخ انقضای گواهینامهها را بهطور منظم بررسی کنید تا از قطع شدن سرویس جلوگیری شود.
اهمیت نصب SSL در IIS برای امنیت و اعتماد بیشتر
نصب و مدیریت گواهینامه SSL در IIS نه تنها امنیت وبسایتها را افزایش میدهد، بلکه اعتماد کاربران را نیز جلب میکند. با دنبال کردن مراحل فوق، میتوانید بهراحتی SSL را در IIS نصب و مدیریت کنید. در این مقاله، نصب SSL در IIS را بهصورت کامل بررسی کردیم. امروزه استفاده از پروتکل HTTPS به یک ضرورت برای وبسایتها تبدیل شده است، زیرا این پروتکل ارتباط بین سرور و کاربران را رمزگذاری و امنیت دادهها را تضمین میکند.
سوالات متداول
۱. وب سرور IIS چیست؟
IIS یا Internet Information Services یک وب سرور قدرتمند است که مایکروسافت آن را توسعه دادهاست و برای میزبانی وبسایتها و برنامههای تحت وب در محیط ویندوز استفاده میشود.
۲. چه تفاوتی بین IIS و سایر وب سرورها مانند Apache و Nginx وجود دارد؟
IIS بهطور خاص برای سیستمعامل ویندوز طراحی شدهاست و با آن یکپارچگی کامل دارد، در حالی که Apache و Nginx برای سیستم عاملهای مختلفی مانند لینوکس نیز در دسترس هستند.
۳. چگونه میتوانیم IIS را روی ویندوز نصب کنیم؟
IIS بهصورت پیشفرض در ویندوز سرور موجود است. برای فعالسازی آن در نسخههای دیگر ویندوز، میتوانید آن را از طریق Control Panel > Programs > Turn Windows features on or off نصب کنید.
۴. چرا باید از IIS برای میزبانی وب استفاده کنیم؟
IIS دارای امنیت بالا، پشتیبانی از پروتکلهای HTTPS، یکپارچگی با Windows Server و امکان گسترش با ماژولهای اضافی است.
۵. آیا IIS از HTTPS پشتیبانی میکند؟
بله، IIS از HTTPS پشتیبانی میکند و امکان نصب و مدیریت گواهینامههای SSL را فراهم میکند.
مقالات مرتبط
پروتکل TLS نوعی استاندارد امنیتی برای رمزنگاری دادههای ردوبدلشده در اینترنت است که از ارتباطات در برابر استراق سمع و دستکاری محافظت میکند. در این بلاگ آیسرت علاوهبر اینکه بررسی میکنیم TLS چیست، نح…
نصب گواهینامه SSL در سیپنل، دایرکت ادمین و پلسک برای افزایش امنیت وبسایت و حفاظت از اطلاعات کاربران انجام میشود. در این بلاگ آیسرت، نصب SSL در این کنترل پنلها را بهصورت مشروح و تصویری آموزش میدهیم. …
پروتکل SSL/TLS بهعنوان یک استاندارد امنیتی، از تبادل دادهها بین کاربر و سرور محافظت میکند. اما گاهی اوقات، خطای SSL این امنیت را مختل و دسترسی به وبسایتها را با مشکل مواجه میکند. هیچکس دوست ندارد ه…
الگوریتم ECC یا منحنیهای بیضوی، امنیتی مشابه با کلیدهای کوتاهتر نسبت به روشهای رایج مانند الگوریتم RSA فراهم میکند. این فناوری در گواهینامههای SSL، اینترنت اشیا و خودروهای خودران امنیت آنلاین بهطو…
گواهینامه امنیتی اس اس ال رایگان و پولی تفاوتهای متعددی از نظر امکانات، امنیت و پشتیبانی دارند. این تفاوتها میتوانند بر عملکرد وبسایت و اعتماد کاربران به سایت شما اثرگذار باشند. در این بلاگ آیسرت، …