با آموزش نصب گواهی SSL در وب سرور IIS7 از وب سایت سورس باران در خدمت شما دوستان عزیز هستیم. مایکروسافت با ارائه نرم افزار وب سرور IIS7 با ساختاری ماژولار و امکاناتی جدید مانند پشتیبانی کامل از htaccess و URLRewrite کاربرانی را که به لینوکس گرایش داشتند را جذب کرده است. همچنین در IIS 7 کاربر میتواند توسط برنامه IIS Manager که روی کامپیوترخودش نصب میشود از راه دور به حساب IIS خود روی سرور میزبان متصل شده و اکثر امور مدیریتی سایت خود را در آن محیط انجام دهد.
IIS 7 ساختاری ماژولار داردیعنی هر یک از قابلیت های آن به صورت منحصر به فرد میتواند نصب و یا حذف شوند.برخی از این ماژولها به شرح زیر میباشد. در این مقاله شما دوستان عزیز با آموزش نصب گواهی SSL در وب سرور IIS7 آشنا خواهید شد.
آموزش نصب گواهی SSL در وب سرور IIS7
در صورتیکه پیش تر فایل CSR را ایجاد نموده اید و به هاستینگ مورد نظر برای ثبت سفارش SSL خود ارسال نموده اید و هم اکنون فایل گواهی SSL برای شما ارسال شده است، می بایست مراحل زیر را جهت نصب گواهی SSL دنبال نمایید
۱- فایل Certificate گواهی خود را که از شرکت هاستینگ مورد نظر تهیه نموده اید در desktop سرور مربوطه ذخیره نمایید. در صورتیکه فایل ها را به صورت فایل zip تهیه نموده اید فایل zip را در desktop سرور extract نمایید.
۲- بر روی Start و سپس بر روی Administrative tools کلیک نموده و در زیر شاخه آن Internet Information Services (IIS) Manager را انتخاب نمایید. به این صورت وارد کنسول مدیریت وب سرور می شوید.
۳- بعد از باز شدن کنسول مدیریت وب سرور، در سمت چپ کنسول بر روی NetBIOS name یا همان Computer Name خود کلیک نمایید.بعد از آن در قسمت میانی کنسول قادر به مشاهده ماژول های نصب شده در وب سرور خود می باشید. بر روی ماژول Server Certificates کلیک نمایید.
۴- بعد از وارد شدن به محیط ماژول Server Certificates در سمت راست کنسول بر روی گزینه ی Complete Request Certificate کلیک نمایید تا وارد ویزارد نصب گواهی SSL شوید.
۵- در بخش اولی ویزارد در قسمت File name containing the certification authority’s response آدرس فایل Certificate ذخیره شده بر روی desktop را با کلیک بر روی browse و یافتن فایل و سپس انتخاب آن و کلیک بر روی open، آدرس دهی نمایید. در بخش Friendly name یک نام برای این گواهی انتخاب نمایید. دقت نمایید نام انتخابی در این بخش ارتباطی به گواهی SSL شما نداشته صرفا یک نام برای شناسایی گواهی SSL نصب شده برای ارجاع آتی مدیریت سرور می باشد. لذا توصیه می شود نام آن را برابر با نام دامنه مربوطه انتخاب نموده و در انتهای نام آن نیز تاریخ انقضای گواهی را جهت سهولت در پیگیری موارد در آینده وارد نمایید.
۶- جهت نصب گواهی SSL بر روی OK کلیک نمایید.
مشکل مرسوم در IIS7
مشکل مرسومی در IIS7 وجود دارد که در آن حالت بعد از کلیک بر روی OK برای نصب SSL یکی از پیغام خطاهای زیر نمایش داده خواهد شد:
Cannot find the certificate request associated with this certificate file. A certificate request must be completed on the computer where it was created ASN1 bad tag value met
راه کار رفع مشکل
در صورتیکه سروری که قصد نصب گواهی SSL بر روی آن را دارید همان سروری می باشد که CSR را در آن ایجاد نموده اید( که طبیعتا می بایست به همین صورت باشد) گواهی به صورت نرمال بدون مشکل می بایست نصب شود. لذا در صورت مشاهده خطاهای فوق، کنسول مدیریت IIS را بسته و مجددا باز نمایید تا ماژول Server Certificates با این اقدام Refresh شود و قادر به مشاهده SSL نصب شده در لیست موجود در Server Certificates باشید.
۷- بعد از نصب SSL نیاز به انجام تنظیمات Binding برای وب سایت مربوطه می باشد تا بر روی پورت ۴۴۳ و پروتکل https قادر به Listen باشد.
۸- در کنسول مدیریت وب سرور Internet Information Services(IIS) Manager بر روی علامت + در سمت چت Computer Name/NetBIOS Name خود کلیک نمایید تا زیر شاخه های آن expand شوند. سپس اقدام به expand نمودن بخش Sites نمایید تا تمامی وب سایت های سرور برای شما نمایش داده شوند سپس بر روی وب سایت مورد نظر خود کلیک نمایید.
۹- سپس در سمت راست کنسول در بخش Actions می بایست بر روی گزینه Bindings کلیک نمایید تا وارد بخش تنظیمات Binding شوید.
** بخش Binding تعیین کننده این امر برای وب سرور می باشد که از میان تمامی درخواست های ارسال شده به وب سرور که میزبان سایت های متعددی می باشد، کدام یک از درخواست ها می بایست به این وب سایت ارجاع داده شوند و مشخص می شود که صرفا درخواست هایی با مشخصات تعیین شده می بایست به این وب سایت ارجاع داده شوند. بدیهی است هیچ وب سایت دیگری در وب سرور قادر به داشتن binding یکسان با وب سایت دیگری نخواهد بود و IIS اجازه داشتن تنظیمات Duplicate دراین خصوص را به شما نمی دهد :
- hostname: درخواست های ارجاع داده شده می بایست در Header خود چه URL ای را درخواست نموده اند .
- IP address: درخواست های ارجاع داده شده به کدام آی پی سرور ارجاع داده شده اند.
- Port: وب سایت درخواست شده بر روی کدام پورت درخواست شده است. در صورتیکه کاربر در مرورگر خود port ای را تعریف ننموده باشد نرم افزار مرورگر به صورت پیش فرض پورت ۸۰ را در درخواست خود برای وب سرور ارسال می نمایید و در صورتیکه در ابتدای آدرس URL مقدار https را تعیین نموده باشد مرورگر به صورت پیش فرض درخواست را به پورت ۴۴۳ سرور ارجاع می دهد مگر آنکه کاربر در انتهای URL اقدام به تعیین پورت مورد نظر خود نمایید به عنوان مثال example.com:2086
- Type: مشخص کننده Protocol تعیین شده در درخواست ارسالی به سرور می باشد
از میان درخواست های ارسال شده به سرور صرفا درخواست هایی که دارای شرایط تعیین شده در binding وب سایت شما باشند به آن وب سایت ارجاع داده می شوند. هر وب سایت می تواند چندین binding داشته باشد. به عنوان مثال در یکی از binding ها آدرس hostname بدون www تعریف می شود و در binding دیگر آدرس hostname با www تعیین می شود تا در هر دو صورت درخواست به این وب سایت ارجاع داده شود.
در بخش Bindings می بایست تنظیمات جدیدی را با انتخاب TYPE برابر با https و Port برابر با ۴۴۳ اضافه نمایید. بر روی ADD کلیک نمایید و سپس Binding جدیدی را به صورت زیر تعریف نمایید :
- Type را از نوع https انتخاب نمایید.
- IP Address : توصیه می شود این مورد را بر روی All Unsassigned قرار دهید. به این صورت به وب سرور اعلام می شود که درصورتیکه درخواستی با مشخصات اعلام شده بر روی هر یک از آی پی های سرور دریافت شد، آن درخواست مربوط به این وب سایت می باشد
- Port در این قسمت پورت ۴۴۳ را انتخاب نمایید
- SSL certificate در این بخش می بایست Friendly name ای را که پیش تر در هنگام نصب گواهی انتخاب کرده بودید از منو پایین رونده انتخاب نمایید.
۱۰- در این مرحله گواهی SSL شما نصب شده است و وب سایت شما برای دریافت درخواست های امن شده تنظیم شده است.
لیست جلسات قبلی
- SSL چیست؟ آموزش ساخت CSR و نصب SSL بصورت کامل در سی پنل
- آموزش ساخت CSR برای Mdaemon با وب سرور WorldClient
- آموزش ساخت CSR در ویندوز سرور ۲۰۰۸/۲۰۱۲
وب سرور IIS7
یکی از مزیتهای IIS 7 پشتیبانی عالی از PHP می باشد مایکروسافت در IIS ۷ توجه ویژهای به موتور PHP داشته و سرعت اجرای اسکریپتهایPHP در IIS 7 به مراتب افزایش یافته است.
مایکروسافت باارائه نرمافزار وب سرور IIS 7 با ساختاری ماژولار و امکاناتی جدید مانند پشتیبانی کامل از htaccess و URLRewrite کاربرانی را که به لینوکس گرایش داشتند را جذب کرده است. همچنین در IIS 7 کاربر میتواند توسط برنامه IIS Manager که روی کامپیوترخودش نصب میشود از راه دور به حساب IIS خود روی سرور میزبان متصل شده و اکثر امور مدیریتی سایت خود را در آن محیط انجام دهد .
IIS 7 ساختاری ماژولار داردیعنی هر یک از قابلیت های آن به صورت منحصر به فرد میتواند نصب و یا حذف شوند.برخی از این ماژولها به شرح زیر میباشد.
ماژول HTTP :
برای رسیدگی به درخواستهای محاسباتی مربوط به پروتکل HTTP استفاده می شود، مانندرسیدگی به اطلاعات و Query های ارسال شده توسط Client ها و برگرداندن پاسخ ها و یا پیغام خطاهای مناسب.
ماژول امنیتی :
این ماژول وظیفه انجام عملیات لازم برای فراهم آوردن امنیت وب سایت ها را بر عهده دارد، عملیاتی مانند مشخص نمودن نحوه احراز هویت لازم برای ورود وب سایت (Authentication) و انجام عملیات احراز هویت برای هرآدرس URL و راه اندازی فیلترهای امنیتی مختلف.
ماژول محتوا :
این ماژول وظیفه انجام عملیات لازم برای نشان دادن محتوای لازم به کاربر را به عهده دارد عملیاتی مانند محاسبه درخواستهای دریافتی برای نمایش فایلهای Static
محاسبه Default Document در زمانهایی که کاربر دقیقانام فایل مورد نظر را مشخص نمیکند و همچنین انجام عملیات لازم برای لیست کردن محتویات وب سایت (Directory Listing)
ماژول فشرده سازی : این ماژول وظیفه انجام عملیاتلازم جهت فشرده سازی درخواستها و بسته های دریافتی را مانند فشرده کردن بسته هایی که قرار است به کاربر ارسال شوند و اعمال روش فشرده سازی Gzip بر روی کدهای ارسالی و اعمال عملیات فشرده سازی پیشرفته برای اطلاعات و فایلهای محتویات Staticرا به عهده دارد.
ماژول Caching :
این ماژول وظیفه انجام عملیاتCaching برای بهبود سرعتLoad و پاسخ به درخواست ها را به عهده دارد. وظایفی مانند ذخیره اطلاعات محاسبه شده درحافظه سرور تا در زمان درخواست تکرار بعدی اطلاعات لازم را از حافظه سرور سریعتر از گذشته بخواند.
ماژولهای مستند سازی و عیب یابی : این ماژولها برای انجام عملیات مربوط به ثبت وقایع و عیب یابی مورد استفاده قرار می گیرند. نمونه هایی از وظایف آن ارسال اطلاعات ثبت وقایع بهHTTP.sys برای نگهداری در سرور گزارش وقایع تغییرات انجام گرفته و ردیابی درخواستهای ارسالی از طریق آدرس IP آنها می باشد. همچنین نسخه IIS 7.5 که در ویندوز R2 2008 منتشر گردید دارای امکانات قابل توجهی نسبت به نسخه های قبلی خودمیباشد.
این نرم افزار از امکاناتی مانند HTTPS , HTTP ,SMTP ,FTP , FTPS ,NNTP به خوبی پشتیبانی می نماید و به صورت کامل با ویندوز سرور ۲۰۰۸ سازگار میباشد.
نسخه های قدیمی تر IIS دارای آسیب پذیریهای بسیار زیادی بودند که معروف ترین آنها مربوط به کدهای مخرب code red worm در سال ۲۰۰۱ می باشد.گرچه تا به حال هیچ گونه گزارشی مبنی بر وجود حفرههای امنیتی در نسخه های ۶و۷ این نرم افزار منتشر نشده است اما مایکروسافت برای اطمینان هرچه بیشتر کاربرانش به طور کلی سعی در تغییر ساختار امنیتی نرم افزار وب سرور خود در نسخه ۷٫۵ نموده است.
یکی از این امکانات قابلیتی تحت عنوان Web Service Extension از نسخه IIS 6.0 اضافه گردیده که این نرمافزار از اجرای هر برنامه ثالثی بدون اجازه مدیر وب سرور جلوگیری مینماید. تمامی اجزای نرم افزار مذکور در نسخه IIS 7 به صورت ماژولار تغییر یافته است این موضوع باعث میشود تا مدیر وب سرور تنها ماژولهای مورد نیاز را بر روی سرور خود نصب نموده و از به وجود آمدن بار اضافی بر روی سرور جلوگیری کند. همچنین توجه کنید که نصب ماژولهای بیشتر به معنی فراهم شدن امکان هک و یا مورد حملهقرار گرفتن بیشتر نیز میباشد.
در طول نصب IIS 7 ما قادریم که انتخاب های خود را جهت نصب به همراه IIS 7 انتخاب کنیم. طراحی جدید به کار رفته در این نسخه این امکان را برای وب سرور فراهم میکند که تنها به برنامه هایی که نیاز جدی دارند دسترسی پیدا کنند که این امر خود باعث افزایش ضریب امنیت می -شود زیرا خود به تنهایی میتواند بسیاری از مشکلات امنیتی بالقوه در برنامه ها را نشان ندهد.
همچنین بر طبق آمار ارایه شده توسط موسسه امنیتی دانمارکی secunia در ژوئن ۲۰۱۱ IIS 7 تا کنون از مرتفع نمودن ۶ مورد از آسیب پذیریهای قبلی خبر داده است.
یکی دیگر از تغیرات آشکاری که در این نسخه انجام شده است در فایل Web Configاست.این فیل یک فایل XML Basedاست که تمامی هسته پیکربندی را برای وب سرور فراهم میکند و به سادگی میتواند به دیگر سرورها متصل شود این فایل در IIS 7 برای پیکربندیASP.NET به کار رفته است.IIS ۷ همچنین به طور کامل واسطAdministrationخود را در مدیریت کنترل دچار دگرگونی کرده است همچنین Remote Administrationاز طریق استاندارد HTTP بهبودیافته است که این امکان، مدیریت Remote را بسیار آسانتر میکند البته این مدیریت Remote به طور پیش فرض فعال نیست زیرا بسیاری از شرکتها آن را یک مشکل امیتی بزرگ میدانند.
لازم به ذکراست متدهای زیر به صورت اختصاصی در IIS 7.5 به این نرمافزار اضافه شدهاند.
Client Certification Mapping :
دراین روشگواهینامه امنیتی نصب شده در سمت کاربر مورد بررسی قرار میگیرد.
IP Security :
دراین روش میتوان آدرس IP های قابل اطمینان و مشکوک را از هم تفکیک نموده و از دریافت اطلاعات از آدرس های ناامن جلوگیری نمود.
Request filtering :
با استفاده از این قابلیت می توان درخواست دریافتی به وب سایت را فیلتر نموده و انواع آن را طبقه بندی نمود.
URL Authorization :
با استفاده از این قابلیت می توان مراحل احراز هویت را در زمان دسترسی به آدرس های URL انجام داد. برخی دیگر از ماژولهای افزوده شده به سرویس IIS 7.5 به عبارت زیر می باشد.
FTP Publishing Service :
این قابلیت به طراحان وب امکان منتشر نمودن Publish محتویات سایت خود را از طریق یک محیط امن مبتنی بر SSLامنیتی و احراز هویت انجام دهند.
Administration Pack :
این افزونه رابط های کاربری مدیریتی قدرتمندی را به محیط IIS اضافه میکند. برخی از ابزارهای زیر مجموعه این افزونه شامل Custom Errorو ASP.NET Authorizationبرای ساخت صفحات خطای سفارشی، تنظیمات موتوری Fast CGI و Request Filtering می باشد.
Aplication Request Filtering :
ابزاری بسیار کاربردی که برای مسیردهی به بسته های HTTP به سرورهای محتوا باقابلیت HTTP و همچنین در حالت Load Balancingمورد استفاده قرار میگیرد.
Database Manager :
این قابلیت امکان مدیریت بسیارآسانپایگاه دادههای محلی و تحت وب را از طریق محیط کاربری IIS به کاربر می دهد.
Media Service :
این ماژول قابلیت یکپارچه سازی کامل انواع فایلهای چند رسانهای مانند انواع ویدیو وفلش و….را درون وب فراهم را میآورد.
URL Rewrite Module :
بااستفادهاز این ماژول میتوان آدرسهای وارد شده توسط کاربر را قبل از اینکه به وب سرور برسند ویرایش و بازنویسی و یا تبدیل به آدرس دیگری نمود. با استفاده از این قابلیت همچنین میتوانید فایلهای htaccess لینوکس خود را نیز در سرور وارد نمایید.
The post آموزش نصب گواهی SSL در وب سرور IIS7 appeared first on آموزش برنامه نویسی.