محمد نصیری
بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

آموزش حذف کامل Domain Controller از مدار خارج شده

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

دوره های شبکه، برنامه نویسی، مجازی سازی، امنیت، نفوذ و ... با برترین های ایران

اما چگونه می توان از دست این مشکلات خلاص شد و دامین کنترلری که دچار اختلال شده است را از مدار شبکه خارج کرد ؟ همین مشکلات باعث می شود که شما نتوانید دامین کنترلر جدیدی به مجموعه اضافه کنید و بسیاری دیگر از مشکلات که ممکن است در ساختار اکتیودایرکتوری شما بوجود بیاید .

Seize کردن FSMO  ها

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

به دامین کنترلرهایی که به این شکل از مدار خارج می شوند Ghost یا روح هم گفته می شود ، البته این اصطلاح چندان باب نیست و من خودم اینگونه دامین کنترلر های غیر فعال را به عنوان Zombie در شبکه عنوان می کنم ، همانطور که می دانید اطلاعات اکتیودایرکتوری با همدیگر یکسان سازی می شوند ، در ساختار اکتیودایرکتوری اطلاعات مربوط به دامین کنترلر ها در دایرکتوری SYSVOL و در ساختار DNS و همچنین در ساختار و تنظیمات Site ها و دامین کنترلر ها قرار میگیرد .

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

  1. بر روی دامین کنترلر اصلی که در حال فعالیت است به کنسول Active Directory Users and Computers بروید.
  2. به OU ای که در آن دامین کنترلر های مجموعه قرار دارند بروید که معمولا Domain Controllers نام دارد .
  3. بر روی دامین کنترلری که zombie شده است راست کلیک کنید و Delete را بزنید.
  4. از شما سئوال می شود که Are you sure you want to delete the computer named SDC ? گزینه Yes را انتخاب کنید .
  5. گزینه This Domain Controller is permanently offline and can no longer be demoted using the Active Directory Domain Services Installation Wizard (DCPROMO) را انتخاب کنید و سپس Delete را بزنید .
  6. اگر این دامین کنترلر Global Catalog بوده است و یا FSMO ای بر روی آن قرار گرفته بوده است با پیغام هایی که داده می شود موافقت کرده تا آنها را منتقل کند ، البته اگر بتواند .
  7. در مرحله بعدی به سراغ کنسول Active Directory Sites and Services می رویم ، در این کنسول شما دامین کنترلر هایی را مشاهده خواهید کرد که با همدیگر اطلاعات را Replicate می کرده اند ، در اینجا به دنبال Computer Account ای باشید که دامین کنترلر از مدار خارج شده را نمایش می دهد و بر روی آن راست کلیک کرده و Delete را بزنید ، گزینه This Domain Controller is permanently offline and can no longer be demoted using the Active Directory Domain Services Installation Wizard (DCPROMO) را انتخاب کنید و سپس Delete را بزنید .
  8. کنسول DNS سرور را باز کنید و در دامین مورد نظر در قسمت Name Server رکورد مربوط به دامین کنترلر Offline را انتخاب و حذف کنید . به نظر من کلیه زیرشاخه های این دامین را نیز جستجو و کلیه رکوردهایی که به آن دامین کنترلر از بین رفته اشاره می کنند را حذف کنید .

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

  1. Cmd را بر روی دامین کنترلر فعال باز کنید
  2. دستور ntdsutil را وارد کنید
  3. metadata cleanup را وارد کنید و Enter را بزنید
  4. connections را وارد کنید و سپس Enter را بزنید
  5. <connect to server < ServerName را وارد کنید و به جای ServerName نام دامین کنترلر فعالی که در مجموعه قرار دارد را وارد کنید.
  6. quit را وارد کنید و Enter را بزنید .
  7. select operation target را وارد کنید و enter را بزنید .
  8. list sites را وارد کنید و Enter را بزنید
  9. <#> select site را وارد کنید که در اینجا <#> نام سایتی است که سرور آفلاین در آن قرار گرفته است .
  10. list servers in site را وارد کرده و enter را بزنید
  11. <#> select server را وارد کرده که در اینجا <#> نام سرور آفلاین یا مشکل دار ما می باشد
  12. list domains را وارد کنید و enter را بزنید
  13. <#> select domain را وارد کنید که در اینجا <#> دامینی است که سرور آفلاین در آن قرار دارد.
  14. quit را بزنید و شما در اینجا بایستی به قسمت منوی metadata بازگردید.
  15. remove selected server را وارد کنید ، یک پیغام باز می شود ، مطمئن شوید که سرور درست را انتخاب کرده اید.
  16. Yes را کلیک کنید.

خوب نوبت به انتقال FSMO ها یا Operation Masters یا Fizmo ها یا هر چیزی که شما اسمش را می گذارید می رسد ، این مشکل بیشتر زمانی ایجاد خواهد شد که شما برخی از این Role ها را در زمان های گذشته به دامین کنترلری که در حال حاضر دچار مشکل شده است منتقل کرده باشید در این حالت شما دیگر قادر نخواهید بود Role ها را بصورت گرافیکی از سرور خراب شده به سرور سالم منتقل کنید و به ناچار بایستی از دستورات خط فرمان و به ویژه دستور NTDS استفاده کنید ، به اینکار در اصطلاح Seize کردن Role های FSMO گفته می شود ، به مراحل زیر دقت کنید :

  1. وارد cmd شوید
  2. دستور ntdsutil را وارد کنید
  3. role را تایپ کنید و enter را بزنید
  4. connections را تایپ کنید و enter را بزنید
  5. در قسمت < connect to servername <serverName به جای <serverName> نام سرور فعال خود را وارد کنید.
  6. q را تایپ کنید و enter را بزنید.
  7. در اینجا دستور <seize <FSMOroleName را وارد می کنیم که <FSMOroleName> نام Role ای است که بایستی منتقل شود.
  8. با زدن هر کدام از این Role ها بایستی گزینه Yes را انتخاب کنیم تا Role مورد نظر Seize شود .

نکته : role هایی که شما می توانید آنها را seize کنید به شرح زیر می باشد :

Seize naming master
Seize PDC
Seize RID master
Seize infrastructure master
Seize Schema Master

در اینجا عملیات ما بصورت کامل انجام شده است و دامین کنترلر مورد نظر بصورت کامل از ساختار دامین و forest ما حذف شده است ، در صورتیکه اطلاعات خاصی در خصوص FSMO Role های می خواهید داشته باشید میتوانید به قسمت مطالب مرتبط در پایین همین مقاله مراجعه کنید ، برای درک بهتر موضوع این مقاله تمامی موارد دستوری بالا را بصورت مثالی در محیط واقعی در پایین مشاهده می کنید :

انجام عملیات Seize در اکتیو دایرکتوری

Microsoft Windows [Version 5.2.3790]
(C) Copyright 1985-2003 Microsoft Corp.
C:\WINDOWS>ntdsutil
ntdsutil:
ntdsutil:roles
fsmo maintenance:
fsmo maintenance: connections
server connections:
server connections: connect to servername pdc
Connected to pdc using credentials of locally logged on user.
server connections:
server connections: q
fsmo maintenance:
Seize domain naming master
Seize PDC
Seize RID master
Seize schema master

محمد نصیری
محمد نصیری

بنیانگذار انجمن تخصصی فناوری اطلاعات ایران ، هکر کلاه خاکستری ، کارشناس امنیت اطلاعات و ارتباطات

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

نظرات