Operations Master Roles(FSMO):
داستان Operations Master Roles یا
FSMO ،
پنج نقش هستند که
Controller ها بر عهده می گیرند.
در تصویر، روبروی 2 نقش اول
Domain Naming Master -
Schema Master عبارت
Forest-Wide نوشته شده
است . عبارت Forest به چه معنا است؟
همانطور که مستحضر هستید، در یک
Forest تعدادی Domain و در هر Domain تعدادی Controller وجود دارد . بنابراین
وقتی می گوییم یک نقش از نقوش Forest است ، یعنی یکی از این Controller ها (فرقی
ندارد مربوط به کدام Domain باشد)، نقش Schema Master یا Domain Naming Master بر
عهده بگیرد ، کل Forest را کفایت می کند.
در تصویر جلوی 3 نقش Infrastructure Master - PDC Emulator - RID Master عبارت Domain بدان معنی است که ، هر Domain باید برای خودش یکی از این 3 نقش را داشته باشد.

✔️Schema Master:
اسکلت، ساختار و چیدمان Domain را
Schema Master گویند .
مثلا، Schema Master تعیین می کند User یا Group ها در Active Directory User &
Computer دارای تب های گوناگون با ساختار متفاوت باشند. حال اگر قرار شد در
Forest یکی از Controller ها نقش Schema Master را بر عهده بگیرد ، هر گونه تغییر
در چیدمان، ساختار و اسکلت Domain های Forest ، یک کپی آن در اختیار Schema
Master قرار خواهد گرفت.
✔️Domain Naming Master:
Controller که در Domain نقش Domain Naming Master را بر عهده دارد، اجازه نمی
دهد در یک Forest تعداد 2 عدد Domain با نام های یکسان بسازید.
✔️PDC Emulator :
عبارت Emulator که بعد از PDC اضافه شده است ، یعنی کسی که ادای چیزی را در می آورد
ولی حقیقتاً آن نیست.
مثلا، نرم افزار Packet Tracer یک نرم افزار Simulator است. (شبیه سازی یک محیط در یک چهارچوب کاملاً بسته) ، اما نرم افزار GNS3 یک نرم افزار Emulator است ، یعنی هر چیزی که در دنیای واقعی اتفاق بیفتد در این نرم افزار قابل انجام است. (چهارچوب آن بسته نیست)
تاریخچه:
از زمان ویندوز NT شرکت Microsoft بحث شبکه، Domain و سرویس هایی از این قبیل را به جهان IT ارائه داد .در ویندوز NT زمانی که Domain ، Domain Controller به وجود می آوردید، داستان به شکل امروزی نبود. شما مختار بودید برای Domain بیش از یک Controller داشته باشید، اما طبق تصویر 4 عدد Controller برای Domain وجود دارد که فقط یکی از آنها فعال و در حال کار بود، که اصطلاحاً Primary Domain Controller (Controller شماره 1) و مابقی Backup Domain Controller (BDC) بودند. تمامی تغییرات و تراکنش ها، مثلا ساخت User و … بر روی PDC انجام می گرفت و Backup ها زمانی استفاده می شدند که Primary Domain Controller به هر دلیلی از مدار خارج و یکی از این Backup ها جایگزین آن گردد.
همانطور که مستحضر هستید، بین Controller های یک Domain عملیات Replication وجود دارد، اما در آن زمان عملیات Replication یک طرفه بود و فقط Primary یک کپی از داده های خود را در اختیار Backup می گذاشت و Backup ها چیزی برای ارائه دادن به Primary نداشتند.که اصطلاحاً Singel Master Replication (Replication که فقط یک Master دارد). البته امروزه Controller ها به صورت Multi Master Replication کار می کنند. (در حقیقت عملیات Replication دوطرفه است)

وظایف PDC :
1
نگهداری Password کاربران. (آخرین تغییرات بر روی Password کاربران در PDC
ثبت می گردد)
2
فضای Domain Controller ، Domain به ساعت و تاریخ سیستم بسیار حساس است. مثلا بارها این موضوع روئیت شده که
یک سیستم تحت Domain است و کاربر حتی با وجود صحیح وارد کردن Password ،Username اجازه
Login ندارد، زیرا ساعت و تاریخ آن با PDC یکسان نیست. بنابراین هماهنگ کردن تاریخ و ساعت بر عهده PDC است.
✔️RID Master :
شناسه امنیتی SID ( Security Identifier ) :
سیستم عامل User ها و Object ها ما را با کد می شناسد و به آن کد SID می گوید .
جهت مشاهده SID ، از دستور زیر در Command Prompt ویندوز استفاده کنید .
whoami /user
User Name SID
============== ==============================================
hamed-10\hamed S-1-5-21-2296543319-2449558237-1374601490-1001
وظیفه RID Master این است که به هر Object یک (SID) مستقل بدهد که هرگز در یک Domain تعداد 2 عدد Object مستقل به وجود نیاید.
جهت مشاهده وضعیت RID Master ، از دستور زیر در Command Prompt ویندوز استفاده کنید.
C:\Users\Administrator>dcdiag /test:ridmanager /v
لیست خروجی دستور:
Available RID Pool for the Domain is 1601 to 1073741823:
Hamed.net 👈 Domain دارای RID Pool است که این تعداد Object در آن قرار می گیرد.
Server1.Hamed.net is the RID Master:
Hamed.net 👈 Domain نشان می دهد که وظیفه چک کردن SID بر عهده Server1 می باشد.
rIDNextRID: 1104
در این قسمت به محض ساخت یک User (یک Object) یک کنتور می اندازد و بازه آن 500 تایی است. به خاطر داشته باشید که یکی از دلایلی که افراد یک Domain را به 2 عدد Domain تقسیم می کنند (مثلا Domain دوم را Child می گذارند)، به همین دلیل است که سعی بفرمایید در Domain تعداد Object ها بیشتر از 500 تا نشود.

✔️ Infrastructure Master:
آمار در مورد عضویت یا خارج شدن User ها از گروه ها را بر عهده دارد. (تغییرات در مورد وضعیت Join شدن یا ترک گروه توسط کاربران)
نکات:
1
Microsoft به شدت به این موضوع تاکید دارد که سعی کنید نقش Infrastructure را
به سروری دهید که
Global Catalog
نباشد.
سرور هایی که Global Catalog هستند، فایلی تحت نام NTDS.DIT دارند که دقیقا مثل این فایل را سرور های Infrastructure هم در اختیار دارند. در حقیقت این 2 فایل در کنار یکدیگر قرار می گیرند و تغییرات را به Controller های دیگر اعمال می کنند. اما Microsoft تاکید دارد که این 2 فایل NTDS.DIT را در کنار یکدیگر قرار ندهید، زیرا اگر Global Catalog و Infrastructure بر روی یک سرور باشند، هر 2 یک منبع را را می خوانند و متوجه اعمال تغییرات در Domain نخواهند شد.
2
اگر تمامی سرور ها خاصیت Global Catalog را داشته باشند، بنابراین تفاوتی ندارد که Infrastructure نزد کدام یک از سرور ها است و دیگر کسی وابسته به Infrastructure نیست.
بررسی نقش ها:
جهت
مشاهده وضعیت و آمار نقش ها در ویندوز از دستور زیر در Command Prompt ویندوز
استفاده کنید.
C:\Users\Administrator>dcdiag /test:knowsofroleholders /v

✔️ Transfer FSMO Roles:
عملیات جابه جایی نقش ها ملغب به Transfer FSMO Roles است و از دید Microsoft به 2 دلیل قابلیت بسیار خوبی است :
1
به هر حال یک سری از مسئولیت های این سرور کم خواهد شد. 2
ممکن است فردا روز مشکلی برای این سرور به وجود و از مدار خارج شود، بنابراین یک سری از نقش ها در اختیار سرور دیگری قرار گیرد.
سوال:
به نظر شما از بین این 5 نقش ، کدام یک را می توانید به سرور دیگری انتقال دهید؟
اگر دو سرور در یک Domain باشند(مثلا Hamed.net) در نتیجه در یک Forest هستند و
تفاوتی ندارد که کدام یک از نقش های Forest یا Domain انتقال یابد.
فرض کنید که یک سرور که Child Domain است را وارد مدار کنید. در نتیجه از این 5 نقش
RID، PDC و Infrastructure نقش های Domain هستند و هر Domain باید برای خودش یکی از
این نقش ها را داشته باشند و قابل جابه جا نیستند.
✔️
عملیات جابه جایی نقش ها:(CMD)
ابتدا باید از سروری که نقش را بر عهده دارد (Server1)، به سروری که می خواهد نقش را بر عهده بگیرد Connect شوید و بعد Transfer Roles انجام دهید.
جهت جابه جایی نقش ها از دستورات زیر در Command Prompt ویندوز استفاده کنید.
C:\Users\Administrator>ntdsutil
ntdsutil: roles
fsmo maintenance: connection
server connections: connect to server server2.hamed.net
Binding to server2.hamed.net
Connected to server2.hamed.net using credentials of locally logged on user
عملیات جابه جایی نقش ها حتما باید در محیط fsmo maintenance صورت گیرد ،در نتیجه از دستور Quit استفاده کنید.
server connections: quit
fsmo maintenance: transfer rid master
نکات Syntax دستوری:
Role شما Domain Naming Master است، اما در Syntax دستوری Transfer Naming master تایپ می شود.
تنها Role که عبارت Master ندارد، Transfer PDC
می باشد.
Syntax دستوری به حروف کوچک و بزرگ حساس نیستند.
قائده خلاصه نویسی Syntax دستوری در CMD وجود دارد.

عملیات جابه جایی نقش ها:(محیط
گرافیکی)
به خاطر داشته باشید ، نقش هایی که در اختیار Domain هستند (Infrastructure ،RID ،PDC) از طریق محیط گرافیکی قابل جابه جا شدن می باشند .
✔️
ابتدا در محیط Server Masnager گزینه Active Directory Users and Computers را
انتخاب کنید .
✔️بر روی اسم سرور کلیک راست و گزینه Operations Masters را انتخاب کنید.
✔️ در بخش Operations Master مشخص شده است که Role مورد نظر در اختیار چه کسی است.

عملیات Transfer در محیط گرافیکی زمانی امکان پذیر است که در قسمت پایین تب Operations Masters اسم مقصد را بنویسد، حال اگر اسم مقصد نبود ما باید خودمان به مقصد Connect شویم.
✔️بر روی اسم سرور کلیک راست و گزینه Change Domain Controller را انتخاب کنید .
✔️ مقصد مورد نظر را انتخاب و بر روی Ok کلیک کنید.
✔️حال گزینه Change در تب Operations Masters فعال می گردد.

✔️ عملیات Seize:
(زورگیری)
فرض کنید سروری تعدادی نقش را بر عهده داشته باشد و بنا به دلایلی از مدار خارج شود، در
نتیجه نمی توانید عملیلت Transfer را انجام دهید و تنها راه این است که آن Role
ها را به زور از سرور مورد نظر بگیرید ، که به این عملیات اصطلاحاً
Seize یا زورگیری
گویند.
جهت بازپس گیری نقش ها از دستورات زیر در Command Prompt ویندوز استفاده کنید.
C:\Users\Administrator>ntdsutil
ntdsutil: roles
fsmo maintenance: connection
server connections: connect to server server1.hamed.net
Binding to server1.hamed.net
Connected to server1.hamed.net using credentials of locally logged on user
عملیات بازپس گیری نقش ها حتما باید در محیط fsmo maintenance صورت گیرد ،در نتیجه از دستور Quit استفاده کنید.
server connections: quit
fsmo maintenance: Seize RID master
Distinguished Name:
زبان تکلم یا نحوه نگارش Domain Controller در حقیقت به صورت Distinguished Name است و ممکن است در Microsoft یا Cisoc مجبور شوید به این زبان صحبت کنید.
