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

چکلیست امنیتی شبکه و سازمان
- حتماً برای هر سرور یک نام اختصاصی لحاظ کنید تا پس از اضافه شدن به Domain Controller و DNS Server دارای یک رکورد منحصربهفرد باشد.
- محل قرارگیری سرورهای فیزیکی در مکانی امن باشد و تا جای ممکن کسی جز افراد موردنظر به آنها دسترسی نداشته باشند.
- حتماً بر روی تمام سرورهایی مورداستفاده کاربران دو کارت شبکه، یکی برای مدیریت سرور و دیگری جهت اتصال کاربران متصل کنید.
- حتماً برای هرکدام از کارت شبکههای تعریفشده بر روی سرور یک کارت شبکه دیگر بهعنوان Redundancy قرار دهید.
- همه سرورها را بهصورت مرتب و پیوسته بازبینی کنید.
یک Encryption قوی و مناسب برای Remote Desktop سرورهای شبکه و سازمان خود انتخاب کنید و قابلیتهای Account Lockout و Session Timeout را برای آن فعال کنید. - قبل از اعمال هر تغییر در سختافزار یا نرمافزار سرور، آن تغییر را موردمطالعه فرار داده و آزمایش کنید.
- پیوسته ریسکها را آنالیز کنید و فهرستی اولویتبندی شده از همه سرورها ایجاد کنید تا اطمینان پیدا کنید که ضعفهای امنیتی طبق برنامه زمانیترمیم میشوند.
- پورتهای مورداستفادهی سازمان را بررسی کرده و دیگر پورتهای غیرقابل استفاده را مسدود یا بلاک کنید.
چکلیست امنیتی سخت افزار ویندوز سرور
- بایوس سختافزار سازمانی پسورد تنظیم شود تا از تغییرات غیرمجاز هنگام بالا آمدن سیستمعامل جلوگیری شود.
- هنکام بوت کردن سیستمعامل خود مطمئن شوید عملیات بوت از بوت امن (Secure Boot) استفاده کرده است زیرا Secure Boot تنها سیستمعامل و نرمافزارهایی را بوت میکند که توسط شرکت سازنده دستگاه تأیید شده باشند.
- لاگین خودکار با اکانت های گروه Administrators در Recovery Console را غیرفعال کنید.
- ترتیب بوت شدن سرورهای فیزیکی یا ماشینهای مجازی را طوری تنظیم کنید که بهطور خودکار و غیرمجاز از رسانههای دیگر بوت نشوند.
چکلیست امنیتی در سیستم عامل ویندوز سرور
- مراقب خاموش نشدن سیستمعامل در هنگام نصب باشید.
- هنگام پیکربندی بر اساس یک نقش خاص از Security Configuration Wizard استفاده کنید.
- تمام آپدیتهایی چون سرویس پک، Patch های ارائهشده توسط شرکت ماکروسافت را بر روی ویندوز سرورهای خود نصب کنید. (میتوانید ازWSUS یا SCCM برای دریافت جدیدترین آپدیتها میتوانید استفاده کنید.)
- همیشه مطمئن شوید که سیستمعامل ازلحاظ امنیتی در شرایط خوبی میباشد.
- هرگز بر روی سرورهای خود نرمافزار های غیر لازم که مخصوص ویندوزهای کلاینت میباشد را نصب نکنید.
- سرویسهای غیر لازم بر روی سرورها را غیرفعال کنید.
- دسترسی کاربران به سرویسهای فعال ویندوز سرورها را محدود کنید.
- سرویس Telnet را حتماً غیرفعال کنید تا دسترسی ریموت بهصورت Clear Text از روی ویندوز سرورها غیرفعال شود.
- حتماً تنظیمات امنیتی مربوط به CMOS را انجام دهید.
- استفاده از آنتیویروس های قدرتمند و تحت شبکه یا حداقل ویندوز دیفندر (Windows Defender) که بهطور پیشفرض در ویندوز سرور ۲۰۱۶ و ویندوز سرور ۲۰۱۹ فعال است و میتوانید ویندوز دیفندر را را با استفاده از Group Policy، PoweShell، Windows Management Instrumentation (WMI) یا از رابط کاربری خود ویندوز دیفندر پیکربندی کنید.
- CD-ROM و USB Driveرا در صورت نیاز با فراهم کردن مباحث امنیتی در سیستم فعال کنید.
- اگر در سازمان خود فایروالهای قدرتمند ندارید هرگز فایروال ویندوز را غیرفعال نکنید و آن را طبق
Best Practice های ارائهشده تنظیم کنید. - دیسکهای حساس خود در سیستمعامل از رمزگذاری دیسک ویندوز (Bitlocker Drive) استفاده کنید.
- استفاده از Device Guard کمک میکند سیاستهایی یک پارچه سازی کد code integrity policy کدام کدهای user mode و kernel mode اجازه دارند بر روی سرور اجرا شوند که از اجرای کدهای مخرب بر روی ویندوز سرور جلوگیری میکند.
- با استفاده از Operating Management Suite میتوانید تهدیدهای سیستم عاملهایی که نرمافزارها و ضدویروسهایشان آپدیت نشده است را شناسایی کنید.گزینه Enable LMhosts lookup را حذف کنید.
- گزینه NetBIOS over TP/IP را غیرفعال کنید.
- گزینه ncacn_ip_tcp را حذف کنید.
- پیکربندی Microsoft Network Client و Microsoft Network Server را طوری انجام دهید که ارتباطشان دیجیتالی امضا شود.
- Local System NULL session fallback را غیرفعال کنید.
چکلیست امنیتی حساب های کاربری ویندوز سرور
- یک پسورد پیچیده را برای حسابهای کاربری خود انتخاب کنید که قابلردیابی نباشد.
- سیاستهای مناسب طبق Best Practice های ارائهشده برای Group Policy ها جهت محدودسازی اکانتها تنظیم کنید.
- حسابهای کاربری غیر لازم بر روی سرور و سیستمها را غیرفعال و حذف کنید، مثل حساب کاربری Guest
- نام کاربر Administrator را تغییر دهید یا یک اکانت دیگری با همان دسترسی ایجاد کنید و نام کاربر Administrator را غیرفعال کنید.
- اگر حساب کاربری IUSR_MACHINE توسط برنامهها استفاده نمیشود، آن را غیرفعال کنید.
- اگر سرویس anonymous account را استفاده میکنید، یک حساب کاربری با دسترسی محدود برای آن ایجاد کنید.
- کاربر anonymous نباید دسترسی نوشتن و تغییر محتوای Directory و پوشهها و اجرای دستورات بر روی سرور را داشته باشد.
- اگر چندین Web Application بر روی سرور دارید، باید هرکدام کاربر anonymous جداگانه داشته باشد. نباید از اکانت پیش فرضی که برای ASP.NET ایجادشده است استفاده کنید و باید حسابهای کاربری با دسترسی محدود با کمترین سطح دسترسی برای ASP.NET ایجاد کنید.
- یک Password Policy بسیار قوی برای تمام حسابهای کاربری بر روی سرورها ایجاد کنید.
- دسترسی Remote را بر روی سرورها به حداقل برسانید، گروه Everyone را ازAccess this computer from network حذف کنید.
- برای هرکدام از مدیران و متخصصین شبکه یک حساب کاربری مجزا ایجاد کنید و از اکانت مشترک استفاده نکنید.
- Anonymous Logon یا Null Session را غیرفعال کنید.
- کاربران دیگر نباید بتوانند به یکدیگر اجازهی دسترسی دهند و تنها باید دسترسیهای لازم را به آنها داد.
- گروه Administrators نباید برای بیشتر از ۳ کاربر تعریفشده باشد.
- حتماً از رمزنگاری برای Logon بهصورت Remote Desktop استفاده کنید.
- هرگز به فایلSAM اجازه دسترسی بهصورت ناشناس و غیرمجاز داده نشود زیرا تمام اطلاعات کاربران و پسورد آنها در آن ذخیره میشود (در دورهی CEH به پیدا کردن پسوردهای آن اشارهشده است).
- ترجمه SID/Name بهصورت ناشناس را غیرفعال کنید.
- شبکه را طوری تنظیم کنید که تنها کاربران احراز هویت شده بتوانند از شبکه و کامپیوترهای آن استفاده کنند.
- اکانتهای میهمان نباید با مجوز سرویس (Log on as a service)، رشته وظایف (log on as a batch job)، را بهصورت محلی (log on locally) یا از طریق RDP لاگین کنند.
- از ارسال پسوردهای رمزنگاری نشده به سرورهای SMB پرهیز کنید.
- هرگز کاربران ناشناس نباید به دادههای اشتراکی دسترسی پیدا کنند.
- کامپیوترها در سیستم محلی (Local System)باید امکان احراز هویت برای NTLM را داشته باشند.
- انواع رمزنگاریها را برای Kerberos فراهم کنید.
- مقادیر LAN Manager hash را ذخیره نکنید.
- سطح احراز هویت مدیریت LAN را فقط بر روی NTLMv2 تنظیم کنید و احراز هویت از LM و NTLM را انجام ندهید.
چکلیست پیکربندی امنیتی رجیستری ویندوز سرور
- راهکارهایی پیدا کنید تا مدیران بتوانند عملکرد و هدف رجیستری را بدانند، زیرا بسیاری از ضعفهای سیستمعامل ویندوز با ترمیم کلیدهای رجیستری انجام میشود.
- دسترسی به سرویس Remote Registry را غیرفعال کنید تا کاربران ناشناس نتوانند به آن دسترسی یابند.
- سرورهای Standalone باید تنظیمات رجیستری NoLMHash را برای امن کردن فایل SAM فعال کنید.
- حتماً قابلیتهای Auditing و Logging را بر روی سرورها فعال کنید.
- مقادیر MaxCachedSockets (REG_DWORD)، SmbDeviceEnabled (REG)DWORD، AutoShareServer و AutoShareWks را روی صفر قرار دهید.
- تمام مقادیر درون کلید NullSessionShares و NullSessionPipes را پاککنید.
نکات امنیتی فایل، پوشه و Virtual Directory ها
- هارددیسک باید چندین پارتیشن داشته باشد.
- حتماً فایل سیستم پارتیشنهای ویندوز سرورتان را NTFS ایجاد کنید.
- محتویات هر وبسایت را در یک پارتیشن NTFS جدا غیر از Home Directory وب سرور قرار دهید.
- دسترسی گروه Anonymous و Everyoneبه پوشههای system32 و وبسایت را به حداقل برسانید.
- مطمئن شوید کاربران عادی به پوشه اصلی یا پوشههایی که اطلاعات مهم و حساس دارید مثل پوشهی اصلی وب سرور، دسترسی نداشته باشند.
- قابلیت Remote IIS Administration یا Remote WWW Administration همراه با سرویس را غیرفعال و حذف کنید.
- تمامی ابزار های Resource Kit را به همراه SDK ها باید از روی وب سرور حذف کنید.
- از ابزارهای امنیتی Control Flow Guard ویندوز سرور که از نسخهی۲۰۱۶ اضافه گردید برای جلوگیری از حملات تغییر محتوای حافظه استفاده کنید.
- برای دیسکهای حساس خود در سیستمعامل از رمزگذاری دیسک ویندوز (Bitlocker Drive) استفاده کنید.
- Virtual Directory های پر ریسک مثل IISSamples ،IISAdmin ، IISHelp ، Scripts و IIS Internet Printing را حذف کنید.
- Virtual Directory مربوط به MSADC را حذف کنید.
نکات امنیتی اشتراکگذاری در شبکه
- تمامی اشتراکگذاری بدون استفاده پیشفرض مثل Administrative share را غیرفعال کنید. (دقت کنید سیستمهای مانیتورینگی مثل SCOM و SCCM از System Center با Administrative Share استفاده میکنند.)
- حتماً برای اعمال دسترسیهای مجاز به افراد، در اشتراکگذاری فایلها دقت کنید و به همه توسط گروه everyone دسترسی ندهید.
- تنها پورتهای مورداستفاده در File and Printer Sharing را بر روی فایروال اجازه دسترسی دهید.
- تنها دسترسی به اینترنت را بر روی پورتهای ۸۰ یا ۴۴۳ را مجاز کنید.
- حتماً برای استفاده از اینترنت پروتکلهای امن مثل SSL را مورداستفاده قرار دهید.
- اگر تعداد افراد استفادهکننده از فایلهای اشتراکگذاری مشخص است، حتماً از محدودیت Concurrent Connections استفاده کنید.
نکات امنیتی در مورد وب سرور IIS (میزبان وبسایت)
- وب سرور IIS را بر روی Domain Controller نصب نکنید.
- هرگز Home Directory سیستم عامل وب سرور را درون آن قرار ندهید.
- حتما تمامی تنظیمات و برنامه های پیش فرض مثل وب سایت IIS را حذف کنید و با دقت آن ها را تنظیم و راه اندازی کنید.
- هیچگاه از وب سایت پیشفرض یا Default Site استفده نکنید و یک وب سایت جدید بسازید.
- آدرس IP را از Header به دلیل جلوگیری از شناسایی حذف کنید.
- ابزار IIS Lockdown را بر روی ویندوز سرور و IIS های قدیمی فعال کنید.
- تنظیمات Parent Path وب سرور را غیرفعالکنید.
- حتماًCertificate های معتبر و بهروزی را برای سرورهای خود تهیه کنید و همیشه از آنها اطمینان حاصل کنید.
- از معتبر بودن Public Key که مربوط به Certificate تهیهشده است و اینکه Revoke نشده باشد مطمئن شوید.
- ISAPI Filter غیر قابلاستفاده را از روی سرور حذف کنید.
- دسترسی به فایل Metabase.bin مربوط به وب سرور IIS را همیشه چک کنید.
- تنظیمات IIS را بهگونهای انجام دهید که W3C Extended Log File چک شود.
- نصب و راهاندازی ابزار امنیتی URLScan را بر روی وب سرور IIS انجام دهید.
- اگر سرویسهای FTP ، SMTP و NNTPرا نیاز ندارید غیرفعال کنید.
- اگر سرویسهای ASP.NET ، ASP.NET State ServiceیاWebDAV توسط برنامهها استفاده نمیشود، آنها را غیرفعال کنید. اگر فعال بودند حتماً پارامتر و مباحث امنیتی را رعایت کنید.
- اگر Data Access Components را نیاز ندارید حتماً آن را حذف کنید.
- اگر MS Index Server را نیاز ندارید نصب نکنید.
- گزینه HTML Version ازInternet Service Manager را فعال یا نصب نکنید.
- اگر MS FrontPage Server extensions را نیاز ندارید حتماً حذف کنید.
- TCP/IP Stack ازلحاظ امنیتی در شرایط خوبی باشد.
- پورتهای NetBIOS و SMB که داری پورتهای ۱۳۷ ، ۱۳۸ ، ۱۳۹ و ۴۴۵ می باشد را در فایروال مسدود کنید.
- پالیسی های مربوط به Recycle Bin و Paging File System را متناسب با وب سرور راهاندازی کنید.
نکات امنیتی Log برداری و Audit Policy
- Audit Policy را بهدرستی در ویندوز فعال کنید زیرا با استفاده از Audit Policy میتوانید رخداد و رویدادهاییکه درون ویندوز سرور اتفاق افتاده را از بخش log Security ویندوز سرور ثبت و بررسی کنید.
- ذخیرهسازی پیوسته Event log را طوری تنظیم کنید که در صورت نیاز بازنویسی شود.
- حتماً تلاشهای ورود ناموفق بر روی سرور را چک کنید.
- حداقل باید هرچند وقت یکبار Log های امنیتی درون سرور و شبکه را پس از آرشیو، تجزیهوتحلیل کنید.
- حداکثر اندازه Log File شبکه خود را مشخص کنید.
- همیشه از تمام ویندوز سرورهای خود در سرور و دیسک مجزا Log برداری کنید و آنها را بهصورت مرتب موردبررسی قرار دهید.
- بهصورت مرتب و پیوسته از سرورها در فضا یا هارددیسک های جدا Backup بگیرید .(حتماً از نرمافزار های قدرتمند Backup گیری استفاده کنید.)