چگونه امنیت ویندوز سرور را افزایش دهیم؟

همیشه موضوع امنیت سرور مطرح بوده و خواهد بود. در این مقاله برخی  قوانین اساسی برای افزایش امنیت سرور ویندوز را بررسی می‌کنیم که می‌تواند برای کاربران سیستم عامل Window Server که با سرور مجازی ویندوز کار می‌کنند مفید باشد.


مصرف غیرطبیعی در سرور مجازی ویندوز می‌تواند دلیل آلودگی سرور به بدافزار باشد، در این قبیل موارد بهتر است ابتدا از بخش Task Manager وضعیت سرور  و پروسس‌های روی آن را به دقت بررسی کرد.Task Manager ابزاری است که از اولین روزهای استفاده از رابط گرافیکی در تمام سیستم عامل های ویندوز وجود داشته است، اما در طول سال ها پیشرفت بسیار زیادی داشته است.
Task Manager معمولا توسط Ctrl + Alt + Del روی صفحه کلید و سپس کلیک بر روی Task Manager یا با کلیک راست بر روی Taskbar و انتخاب Task Manager فراخوانی می شود.

اجرای Task Manager روی ویندوز سرور
 

به‌روزرسانی‌ سیستم‌عامل و نرم‌افزارهای نصب‌شده 

خیلی‌ها معتقدند به روز رسانی ویندوز نیاز نیست و چیزی جز دردسر ندارد و بهتر است آن را غیرفعال کنیم! این یکی از بزرگترین اشتباهات است. نصب به‌موقع به‌روزرسانی‌ها، به‌ویژه موارد حیاتی، بسیار مهم است. به روز نگه داشتن نرم افزارهای مرتبط نصب شده از جمله سامانه مدیریت پایگاه داده‌ (DBMS) ، فریمورک های مختلف و ... هم اهمیت دارد.
 

تهیه نرم افزار از منابع قابل اعتماد(سایت‌های معتبر)

توصیه می‌کنیم قبل از دانلود بسته نصبی نرم افزار حتی اگر Open Source  باشد، از معتبر بودن منبع مطمئن شوید. اغلب اتفاق می افتد که منبعی از نظر ظاهری کاملا شبیه به وب سایت رسمی است ولی نرم افزارهای در معرض خطر (فیشینگ) را توزیع می کند. ممکن است یک فایل با کد مخرب به بسته نصب اضافه شده باشد.

 

پیکربندی درست فایروال


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

هرچه پورت‌های TCP/UDP کمتری از خارج در دسترس باشد، احتمال حمله به سرور کمتر است. در این مورد، مهم است که بدانید چه چیزی را باید مسدود کنید. اگر ما در مورد یک وب سرور صحبت می کنیم، پورت‌های TCP مانند 80 و 443 باید در دسترس باشند (سرویس به طور پیش فرض به این پورت‌ها Listen می‌شود).

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

  • 3389 - RDP (پروتکل ریموت دسکتاپ)
  • 135-139 - NetBIOS
  • 445 - Samba (به اشتراک گذاری فایل‌ها و پوشه‌ها)
  • 5000 - 5050 - FTP در passive mode
  • 1433 - 1434 - پورت های SQL
  • 3306 - پورت استاندارد برای MySQL
  • 53 – DNS

ایجاد یک Rule کار سختی نیست. منوی زیر را باز کنید

 

 Start → Control Panel → System and Security → Administrative Tools → Windows Firewall with Advanced Security.


در پنجره برنامه روی Rules for incoming connections راست کلیک کرده و در منوی زمینه که باز می شود، Create Rule را انتخاب کنید.
 

چگونه می‌توانید از طریق ریموت دسکتاپ به سرور مجازی ویندوز در پارسدو متصل شوید؟

 

نام حساب administrator را تغییر دهید


از چندین حساب مدیر استفاده کنید.
اگر چندین نفر سرور را مدیریت می‌کنند، باید برای هر کدام یک حساب جداگانه ایجاد کنید. چنین اقدامی به شما این امکان را می دهد که مقصر آنچه را که اتفاق افتاده ردیابی کنید.


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

نکته :  در صورت دسترسی غیرمجاز به حساب administrator، مهاجم به سیستم دسترسی کامل خواهد داشت.

به اشتراک گذاری فایل و پوشه را محدود کنید، password protection را فعال کنید.
پیشنهاد می‌کنیم که کانکشن‌ها را با کاربران ناشناس (anonymous) یا کاربران بدون رمز عبور به اشتراک نگذارید. حتی اگر فایل‌های ذخیره شده در پوشه‌ها ارزشی نداشته باشند، هیچ چیز مانع از این نمی‌شود که مهاجم فایل شما را با فایلی با محتوای مخرب جایگزین کند. پیامدهای چنین تغییری می تواند بسیار بد باشد.

علاوه بر استفاده از password protection ، توصیه می کنیم کاربران مختلف را در سطح دسترسی به فایل ها و پوشه‌ها (خواندن، نوشتن، تغییر) محدود کنید.


هنگام خروج از حالت idle ، درخواست رمز ورود برای ورود به سیستم و همچنین قطع کردن جلسات در حالت idle را فعال کنید.
هنگام استفاده از یک سرور فیزیکی (نه ریموت یا سرور مجازی)، توصیه می شود که درخواست رمز عبور کاربر را در wakeup فعال کنید. این تنظیم در کنترل پنل پیکربندی شده است:


 Control Panel → All Control Panel Items → Power Options.

 

همچنین تعیین محدودیت‌های عدم فعالیت کاربر و درخواست رمز عبور  upon return نیز مهم است. در صورت خروج یا فراموش کردن جلسه RDP، این امکان را از ورود شخص دیگری از طرف کاربر حذف می کند. برای پیکربندی این مورد، از تنظیمات پالیسی محلی secpol.msc استفاده کنید.
 

استفاده از Security Configuration Wizard

(SCW – Security Configuration Wizard) به شما امکان می دهد فایل های XML از سیاست های امنیتی ایجاد کنید که بعدا می توانند به سرورهای دیگر منتقل شوند. این سیاست ها نه تنها شامل قوانین استفاده از خدمات، بلکه تنظیمات کلی سیستم و رول‌های  فایروال نیز می شود.

 

پیکربندی درست سیاست‌های امنیتی

علاوه بر پیکربندی اولیه سیاست‌های گروه Active Directory، باید به صورت دوره‌ای بازبینی و پیکربندی مجدد شوند. این یکی از راه های اصلی تضمین امنیت زیرساخت ویندوز است.

برای سهولت مدیریت سیاست‌های گروه (group policies)، می‌توانید نه تنها از ابزار gpmc.msc که در Windows Server تعبیه شده است، بلکه از (SCM-SecurityCompliance Manager) استفاده کنید که توسط مایکروسافت ارائه شده است.

 

استفاده از سیاست‌های امنیتی لوکال


علاوه بر استفاده از سیاست‌های امنیتی گروه Active Directory، باید از سیاست‌های محلی نیز استفاده کرد که بر حقوق کاربران ریموت و حساب‌های محلی تأثیر می‌گذارد.

 

برای مدیریت سیاست‌های محلی، می‌توانید از Local Security Policy مناسب استفاده کنید که با دستور secpol.msc در مسیر زیر فراخوانی می‌شود.
 

Start -> Run  (Windows key + R)
 

محافظت از سرویس ریموت دسکتاپ (RDP)

اتصالات RDP را برای کاربران با رمز عبور خالی مسدود کنید.
حضور کاربران بدون رمز عبور غیرقابل قبول است، اما اگر نمی‌توان از این امر اجتناب کرد، حداقل می توانید اتصال به RDP را غیرفعال کنید. برای انجام این کار به مسیر  زیر را باز کنید.
 

Start → Administrative Tools 
 

محافظت از ریموت دسکتاپ در ویندوز سرور

در پوشه‌ای که باز می شود، Local Security Policy را اجرا نمائید.

تنظیم لوکال پالیسی در ویندوز سرور

در پنجره Local Security Policies، در سمت چپ، Local Policies → Security Options را انتخاب کرده و در قسمت اصلی پنجره Accounts: Limit account local use of blank passwords to console logon only را پیدا نمائید.

تنظیمات امنیتی برای ریموت دسکتاپ

 

این مورد را با دوبار کلیک کردن انتخاب و سوئیچ را به موقعیت  Disabled ببرید و دکمه OK را فشار دهید.
 

پک لیست امنیت برای سرور مجازی ویندوز

 

پورت پیش فرض RDP را تغییر دهید
 

جایگزینی پورت TCP سرویس‌های استاندارد با اعداد دیگر ممکن است امنیت سرور را افزایش دهد، نکته اصلی این است که شماره پورت جدید را فراموش نکنید.

برای تغییر پورت:

  1. ویرایشگر رجیستری ویندوز(Windows Registry Editor) را باز کنید. 
  2. در هر حال، یک نسخه بکاپ از رجیستری ایجاد می‌کنیم (File → Export)
  3. شاخه HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp را گسترش داده و در قسمت سمت راست پنجره، پارامتر PortNumber را پیدا کنید.
     

چگونه پورت ریموت دسکتاپ را تغییر دهیم؟
 

  1. با دوبار کلیک کردن گزینه را باز و در پنجره ای که باز می‌شود Calculation system: Decimal را انتخاب و یک پورت جدید را مشخص کنید، روی دکمه OK کلیک نموده و پنجره ویرایشگر رجیستری را ببندید.


تغییر پورت سرور مجازی ویندوز

 

برای اینکه بتوانیم به سرور متصل شویم، یک rule مناسب برای فایروال ویندوز ایجاد می‌کنیم. بر روی Inbound Rules کلیک راست کرده و New Rule را از منوی زمینه انتخاب کنید.
 

آموزش ایجاد رول جدید در فایروال ویندوز سرور
 

در پنجره Wizards گزینه For Port را انتخاب کنید.

 

ایجاد rule جدید در فایروال سرور ویندوز

سپس TCP Protocol و Specific Local Ports  را انتخاب و یک شماره پورت جدید را مشخص کنید.
 

تغییر پورت tcp  در remote desktop

مرحله بعدی انتخاب Allow the connection است.
 

Allow the connection در ویندوز سرور

اینجا تنظیم می‌کنیم که این قانون برای کدام شبکه‌ها اعمال شود، موارد ضروری را با تیک علامت گذاری کنید.
 

تغییر پورت VPS ویندوز

در مرحله آخر نام rule و توضیحاتی برای آن را مشخص و برای اعمال تغییرات، سرور را ریبوت کنید
 

تغییر شماره پورت سرور ویندوز
 

برای اتصال به ریموت دسکتاپ، اکنون از یک آدرس IP یا یک نام دامنه استفاده می کنیم و پورت را از طریق یک کولون (:) مشخص می‌کنیم.
 

ورود با ریموت دسکتاپ به windows server

 

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


سرویس TS یا  (Remote Desktop Services) Gateway به شما امکان می‌دهد با استفاده از پروتکل HTTPS (SSL) اتصال ریموت دسکتاپ را امن کنید و در نتیجه مدیر سیستم (administrator) را از راه اندازی VPN بی نیاز نمائید. این ابزار قادر است دسترسی به ماشین‌ها را به طور جامع کنترل نموده و همچنین قوانین و الزامات مجوز را برای کاربران ریموت تنظیم کند، به عنوان مثال:

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


منطق عملیات Remote Desktop Gateway نیاز به استفاده از یک ماشین جداگانه دارد. با این حال، استفاده از ماشین مجازی مستقل را ممنوع نمی کند


نصب درگاه ترمینال سرویس (TS gateway)

ابتدا Server Manager را باز کنید.

تنظیمات Server Manager در ویندوز سرور

گزینه Add roles and features را انتخاب کنید
 

تنظیماتAdd roles and features در ویندوز سرور

در مرحله Installation type گزینه Install roles and features را انتخاب کنید.

 

تنظیمات Installation type در ویندوز سرور


مرحله بعدی انتخاب سرور فعلی است.

 

انتخاب سرور فعلی در add roles سرور ویندوز


بعد از قسمت Server role گزینه Remote Desktop Service را فعال کنید.
 

تنظیمات  Remote Desktop Service در ویندوز سرور


بیایید به سمت role service رفته و  Remote Desktop Gateway را انتخاب کنید.
 

تنظیمات remote Desktop Gateway Tools

تنظیمات  roles and features

به مرحله تأیید رفته و روی دکمه Install کلیک کنید.

نصب Remote Desktop Gateway روی ویندوز سرور

نصب گواهینامه  SSL برای ریموت دسکتاپ

پس از نصب role، در پنجره Server Manager به مسیر زیر بروید

 

 Tools → Remote Desktop Services → Remote Desktop Gateway Manager 

نصب SSL certificate روی ریموت دسکتاپ

در پنجره باز شده در قسمت سمت چپ بر روی آیکون سرور کلیک کرده و در قسمت اصلی پنجره View and change certificate properties را انتخاب کنید.

تنظیمات View and change certificate properties

در پنجره Properties که باز می شود، به برگه SSL Certificate بروید. گزینه  Create a self-signed certificate را انتخاب و روی دکمه Create and import a certificate کلیک کنید.
 

تنظیمات SSL روی سرور ویندوز
 

اگر گواهینامه را قبلا ایجاد کرده‌اید، بسته به اینکه چه کسی آن را صادر کرده است، می توانید از یکی از گزینه های زیر استفاده کنید.
 

تنظیمات Create a self-signed certificate


در پنجره جدید تنظیمات را بررسی و اگر همه چیز درست است، روی OK کلیک کنید.
 

ریموت دسکتاپ و Create and import a certificate
 

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

به پنجره properties سرور رفته و روی Apply کلیک کنید.


پیکربندی سیاست های گروه (group policies) باقی مانده 

در پنجره Remote Desktop Gateway Manager ، در ستون سمت چپ، شاخه سرور را گسترش داده و  Policies و سپس Connection Authorization Policies را انتخاب کنید. در ستون سمت راست همان پنجره Create a new policy و بعد Wizard را انتخاب نمائید.
 

تنظیمات Remote Desktop Gateway Manager

در پنجره جدید، Create only a Remote Desktop Connection Authorization Policy را انتخاب و روی Next کلیک کنید.
 

تنظیمات Create only a Remote Desktop Connection Authorization Policy

نام مورد نظر را برای policy تعیین کنید؛  بهتر است نام را به لاتین وارد کنید.
 

تنظیمات نام Policy ئر ویندوز سرور
 

مرحله بعدی انتخاب یک روش احراز هویت راحت است  (رمز عبور یا کارت هوشمند) فقط Password را علامت بزنید. روی ...Add Group کلیک کنید.
 

تنظیمات Add Group در ویندوز سرور
 

در پنجره انتخاب گروه، روی دکمه Advanced کلیک کنید.

 

تنظیمات پالیسی در ویندوز سرور

اندازه پنجره تغییر خواهد کرد. بر روی دکمه Search کلیک کرده و در نتایج یافت شده، Domain Admins را انتخاب و روی دکمه OK کلیک کنید.
 

تنظیماتDomain Adminsدر ویندوز سرور

در پنجره انتخاب گروه، نام اشیاء انتخاب شده را بررسی کرده و روی OK کلیک نمائید.

تنظیمات سیاست گذاری روی ویندوز سرور
 

گروه اضافه شد برای رفتن به مرحله بعد، روی دکمه Next بزنید.

 

تنظیمات Enable device redirection for all client devices ویندوز سرور
 

در مرحله بعد، گزینه   Enable device redirection for all client devices را انتخاب نموده و روی Next کلیک کنید.

 

تنظیمات session timeoutes
 

session timeouts و اعمال بعد از انقضای آنها را تنظیم کنید؛ توصیه می‌کنیم اتصال جلسه را قطع کنید تا فرآیندهای background  کاربر زمان CPU را اشغال نکنند. روی Next کلیک کنید.
در آخرین مرحله، خلاصه‌ای از اطلاعات را مشاهده می کنیم، روی Finish کلیک نمائید.

 

کانفیگ پالیسی های سرور ویندوز


برای تأیید ایجاد policy ، روی Close کلیک کنید.

 

ویندوز سرور امنیت و.پالیسی

تنظیم resource authorization policy

این فرآیند هم مشابه قبلی انجام می شود.

در پنجره Remote Desktop Gateway Manager، شاخه زیر را گسترش داده و  در قسمت سمت راست پنجره، Create a new policy و Wizard را انتخاب کنید.

Policies → Connection Authorization Policies

تنظیمات Remote Desktop Gateway Manager
 

در پنجره ای که باز می شودCreate only a Remote Desktop Resource Authorization Policy را انتخاب نموده و روی دکمه Next کلیک کنید.



تنظیماتCreate only a remote desktop resource authorization policy

اولین قدم این است که نام مورد نظر را برای authorization policy مشخص کنید؛ بهتر است نام را به لاتین نوشته و دکمه Next را فشار دهید.
 

تنظیمات امنیتی ویندوز سرور

در پنجره انتخاب گروه، روی دکمه Advanced کلیک کنید.
 

چک لیست امنیتی ویندوز

اندازه پنجره تغییر خواهد کرد. دکمه Search را فشار دهید. در نتایج جستجو، Domain Admins را پیدا کنید و روی دکمه OK کلیک کنید.
 

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

در پنجره انتخاب گروه، نام اشیاء انتخاب شده را بررسی کرده و روی OK کلیک کنید.

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

گروه اضافه شد برای رفتن به مرحله بعد، روی دکمه Next کلیک کنید.

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

در مرحله بعد به کاربران اجازه می دهیم به هر منبع شبکه متصل شوند. برای انجام این کار، گزینه مناسب را انتخاب و روی دکمه Next کلیک کنید.
 

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

پورت های مجاز را تنظیم کنید اگر پورت سرور RDP تغییر نکرده است، 35489 را به عنوان پورت پیشفرض پارسدو وارد کرده و روی Next کلیک کنید.
 

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

مرحله آخر این است که تنظیمات را بررسی و روی دکمه Finish کلیک کنید.
 

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

ایزوله کردن roleهای سرور و  غیرفعال کردن خدمات استفاده نشده

در مرحله برنامه ریزی اولیه معماری شبکه، یکی از وظایف اصلی برنامه ریزی خطرات در صورت خرابی هر یک از عناصر شبکه است. دلایل زیادی برای این وجود دارد از خرابی تجهیزات گرفته تا هک از بیرون شبکه می‌توان به آن اشاره کرد. هر چه role های بیشتری به سرور اختصاص داده شود، در صورت از کار افتادن سرور، عواقب شدیدتری خواهد داشت. برای به حداقل رساندن خطرات و آسیب‌ها در صورت امکان، باید نقش های سرور را در مرحله طراحی مشخص کرد. غیرفعال کردن سرویس‌ها و نقش‌های سرور مورد نیاز نیز تأثیر مثبتی بر عملکرد آن خواهد داشت.

حالت ایده آل این است که یک سرور یک عملکرد خاص مانند کنترل کننده دامنه، سرور فایل یا ترمینال سرور را انجام دهد. در عمل، دستیابی به چنین تفکیکی در نقش‌ها دشوار است.

Role isolation را می توان توسط سرورهای مجازی نیز انجام داد. فناوری های مجازی سازی مدرن سطح بالایی از عملکرد و ثبات را ارائه می‌دهند، در حالی که نه مدیر و نه کاربر هیچ محدودیتی را تجربه نمی‌کنند. سخت‌افزار و قطعات نرم‌افزاری که به‌درستی انتخاب شده‌اند، می‌توانند جایگزینی کامل برای ناوگان کامل تجهیزات باشد.