Event Forwarding چیست؟ حتی اگر مدت کوتاهی هست که پا به عرصه مدیریت شبکه گذاشته اید حتما به بررسی کنترل های امنیتی برخورده اید، یکی از راهکارهای امنیتی Auditing است ، بطور کلی Auditing پروسه ای است که بواسطه آن رایانه ها به گونه ای میگردند که در مقابل رخدادهای امنیتی واکنش نشان داده و فعالیتهای انجام شده را ثبت و ضبط می نماید ، شما در Group policy ویندوز میتوانید مشخص کنید که از چه رخدادهایی لاگ برداری شود و نتیجه آن را در کنسولEvent viewer در ویندوز قابل مشاهده است .
زمانی که شما وارد کنسول Event viewer میشوید در سمت چپ با راست کلیک بر روی Event viewer (Local) و انتخاب گزینه Connect another computer میتوانید به کامپیوترهای دیگر در شبکه خود وصل شده و Eventهای آن را مشاهده کنید که البته نیازمند به دسترسیهای لازم است اما در این مقاله تصمیم بر آن داریم که روش جمع آوری Eventها و مشاهده آنها بصورت متمرکز در کامپیوتر خود را آموزش دهیم شما با استفاده از این قابلیت میتوانید Eventهای کامپیوتر یا کامپیوترهای مورد نظر خود را در یک کامپیوتر بصورت متمرکز جمع آوری کرده و بنا به نیاز آنها را فیلتر کرده و مشاهده کنید. قبل از شروع لازم است مفهموم Source Computer و Collector Computer را توضیح دهم چون در طول آموزش از این دو کلمه زیاد استفاده میکنیم
- Source Computer : کلاینت یا سروری است که Eventهای ساخته شده ی خود را برای Collector Computer ارسال میکند.
- Collector Computer : کلاینت یا سروری است که Eventهای Source Computer را دریافت و در خود ذخیره میکند.
این لاگها از Source Computer و از میان Eventهای ذخیره شده انتخاب و جمع آوری میشوند پس لازم است که در ابتدا در مسیر زیر در گروپ پالیسی Source Computer رفته و رویدادهای مورد نظر خود را انتخاب و جهت ثبت ، آنها را فعال کنید
Computer Configuration => Policies => Windows Settings => Security Settings => Local Policies => Audit Policy
جهت دریافت اطلاعات بیشتر از نحوه اعمال تنظیمات برای ثبت Eventها میتوانید به مقاله ای تحت عنوان معرفی فرآیند Auditing در شبکه مراجعه کنید ، برای اینکه Eventها در Collector Computer ذخیره شوند لازم است که اکانت کامپیوتر Collector Computer ( نه اکانت یوزر!! ) را عضو گروه Administrators کرده این عمل بایستی تنها در Source Computer انجام شود بدین منظور Run را در Source Computer اجرا کرده و عبارت lusrmgr.msc را تایپ کنید ( بایستی با دسترسی مدیریتی اجرا شود ) سپس در قسمت Groups ، به گروه Administrators رفته و از آن Properties بگیرید ، در این قسمت شما در حالت پیشفرض نمیتوانید کامپیوتر اکانتها را مشاهده کنید و برای مشاهده آنها بایستی Object Types را بزنید و در پنجره باز شده چک باکس Computers را علامت بزنید پس از آن میتوانید اکانت Collector Computer را پیدا و انتخاب کنید تا به گروه Administrators اضافه گردد یکبار دیگر یاد آور شوم که این عمل تنها لازم است که در Source Computer انجام شود.
با هم مراحل دیگر را پیش میبریم ... دستور زیر را در Collector Computer و در محیط Command اجرا کنید ( این دستور بایستی با دسترسی مدیریتی اجرا شوند )
WinRM qc -q
سپس دستورهای زیر را در Source Computer و در محیط Command اجرا کنید ( این دستورات بایستی با دسترسی مدیریتی اجرا شوند )
Wecutil qc -q WinRM quickconfig
حالا در Collector Computer رفته و وارد کنسول Event viewer شوید و در سمت چپ بر روی Subscriptions راست کلیک کرده و از منوی باز شده Create Subscriptions را بزنید
در این پنجره در قسمت Subscription name یک نام دلخواه و در قسمت Description log توضیحات دلخواه خود را در صورت تمایل اضافه میکنید همچنین در قسمت Destination Log مشخص میکنید که لاگها در چه قسمتی در Event viewer ذخیره شوند، با کلیک بر روی Select Computers میتوانید Source Computerهای خود را معرفی کنید ، در قسمت Select Events لاگهایی که تمایل به جمع آوری آنها دارید را انتخاب میکنید و در نهایت در قسمت Advanced یکسری تنظیمات دیگر ازجمله سطح دسترسی برای خواندن Eventها همچنین پروتکل و پورت مورد استفاده و یکسری تنظیمات دیگر را برای بهینه سازی تحویل Eventها میتوانید مشخص کنید.با هم این پنجره ها را باز کرده و ضمن پیش بردن سناریو ، توضیحی مختصری راجع به هر کدام میدهیم. با کلیک بر روی Select Computers پنجره ای به شکل زیر باز میشود
با کلیک بر روی Add domain computers میتوانید Source computerهای خود را در لیست اضافه و یا حذف کنید. سپس OK کرده و پس از بسته شدن پنجره با کلیک بر روی Select Events پنجره ی دیگری به شکل زیر باز میشود
در این پنجره در قسمتBy log ، نوع Eventها را مشخص کنید همچنین با استفاده از دیگر موارد میتوانید Eventهای خود را جهت ثبت ، فیلتر کرده تا از ثبت Eventهای زیاد جلوگیری شود ، تنظیمات دلخواه را انجام داده و OK کنید و در نهایت همانطور که گفته شد با انتخاب Advanced پنجره این به شکل زیر باز خواهد شد که در آن یکسری تنظیمات دیگر ازجمله سطح دسترسی برای خواندن Eventها همچنین پروتکل و پورت مورد استفاده و یکسری تنظیمات دیگر برای بهینه سازی تحویل Eventها را میتوانید مشخص کنید .Event Forwarding برای انتقال Eventها از HTTP استفاده میکند و شما جهت امن کردن میتوانید از HTTPS استفاده کنید .
آن را به حالت پیشفرض خود رها کرده و OK میکنیم تا پنجره بسته شود . با زدن OK و ثبت تغییرات پنجره Subscription properties بسته خواهد شد و یک رکورد جدید ثبت می شود ،
شما با راست کلیک بر روی این رکورد میتوانید آن را غیرفعال یا فعال کرده ، یا به تنظیمات آن دسترسی پیدا کنید و یا آنها را تغییر دهید همچنین با انتخاب Runtime Status پنجره ای به شکل زیر مشاهده میکنید
در این قسمت شما میتوانید وضعیت این سرویس را که در حال اجرا هست مشاهده کرده و در صورت بروز خطا ، توضیحات آن را مشاهده کنید . گرچه این وضعیت در وهله های زمانی بصورت اتوماتیک Retry خواهد شد ولی شما میتوانید با Disable و Enable کردن بصورت دستی این کار را انجام دهید ، گاهی اوقات با تغییر در سطح دسترسیها ، این کار موجب استفاده این سرویس با سطح دسترسی جدید خواهد شد.
پس از اتمام کار و مشاهده Eventها در قسمت Forwarded Events متوجه میشوید که تمامی لاگ ها ثبت میشوند به جز Security Log برای اینکه Security Logها هم ثبت شود لازم است که شما تنها در Source Computer اعضای Network Services را عضو گروه Event Log read کنید بدلیل اینکه در Source Computer در زمان اضافه کردن به گروه Event Log read ، گروه های Builtin مشاهده نمیشوند ، لازم است که از طریق سرور یک پالیسی ایجاد کنید و در Restricted Policy اعضای Network Services را به Event Log read اضافه کرده و آن را به Source Computers اعمال کنید.
و در نهایت برای اینکه دریافت Eventها با سطح دسترسی جدید انجام شود لازم است یکبار Source Computer ریستارت شود
کار تمام شده و با رفتن به کنسول Event viewer در Collector Computer و رفتن به Forwarded Event میتوانید لاگهای جمع آوری شده در Collector Computer را مشاهده کنید همچنین میتوانید از امکانات دیگر در این کنسول برای فیلتر کردن آنها و یا جست و جو استفاده کنید ، دقت داشته باشید که Eventها از طرف Source Computer در وهله های زمانی نسبتا کوتاهی برای Collector Computer ارسال میگردند و به محض ثبت Eventها در Source Computer نباید انتظار ثبت آن درCollector Computer را داشته باشیم. شاد و پیروز باشید
سلام
خب هدف از استفاده Event Forwarding همین هست که شما لاگهای موجود در یک سرور رو فوروارد کرده و دریافت کنید.این لاگها شامل گزارشات Logon شدن یوزرها و یا پاک شدن یوزرها، همینطور بحثAuditing فایلها و دیگر رخدادها می باشند که البته باید تنظیمات لازم برای دریافت لاگ رو برای Source Computer انجام داده باشید.
سلام خدمت دوستان، یک سوال آیا میشود برای جمع آوری لاگ های دامین از همین روش استفاده کرد؟مثلا بخواهیم لاگ هایی مربوط به Logon شدن یوزرها و یا پاک شدن یوزرها، همینطور بحثAuditing فایلها رو برای یه سرور دیگه forward کنیم؟
سلام ، حسین جان ممنون بابت نکته مفیدی که بهش اشاره کردی . به امید خدا در اولین فرصت مطلب شما رو بررسی کرده و در صورت تایید مقاله رو ویرایش و اشکالاتش رو برطرف میکنم .
باز هم ممنونم از توضیحات شما
با سلام آقای شمس آبادی با عرض معذرت اشتباه گفتید در مقاله اتون که دستور Wecutil qc -q را در source کامپیوتر اجرا کنید . این دستور مربوط به فعال کردن event collector در collector کامپیوتر است نه سورس کامپیوتر ! نیازی هم به اضافه کردن اکانت کامپیوتر collector به گروه Administrators سورس کامپیوتر نیست شما اکانت کامپیوتر collector و netwrok service را به گروه Event Log read اضافه کنید کافیه و جواب میده . در ضمن ما دو نوع روش برای متمرکز کردن لاگ ها در شبکه داریم :
1- روش collector initiated subscription : که همین روشی هست که در این مقاله فرمودید معمولا برای شبکه های کوچیک با تعداد کم کامپیوتر مورد استفاده قرار می گیره
2- روش Event forwarding source initiated subscriptions : این روش برای شبکه های بزرگ و با اعمال پالیسی برای کلاینت ها اعمال میشه . دیگه نیازی به وارد کردن دستی کامپیوتر ها برای متمرکز سازی لاگ نیست بلکه گروهی از کامپیوترها که مثلا در یک OU یا دامین قرار دارند شما می توانید لاگ هاشون رو به سرور منتقل کنید .... به گزینه پایینتر collector initiated در پنجره first Subscription دقت کن ببین چی نوشته: source initiated ... این گزینه برای متمرکز سازی از طریق اعمال پالیسی برای گروهی از کامپیوتر هاست .
البته از نظر امنیتی رعایت چند نکته هم در هنگام فعال سازی این روش ها وجود داره چون بعضی از پورت ها فعال و باز میشن در فایروال همچنین ترافیک بالایی در شبکه هنگام بوجود آوردن و فوروارد لاگ ها بوجود میاد ....
جناب شمس ممنون از راهنمایی و زمانی که لطف فرمودید.
با سلام خدمت شما ، خوشالم که مطلب مورد توجه قرار گرفته
همونطور که در تصویر زیر مشاهده میکنید در پنجره Advanced Subscription Settings قسمتی تحت عنوان Event Delivery Optimization وجود داره که شما با تنظیم اون بر روی Minimize Bandwidth این فاصله زمانی به چندین ساعت افزایش و با تنظیم بر روی Minimize Latency فاصله زمانی رو به چند ثانیه میتونید برسونید اما مراقب ترافیک شبکه خودتون باشید چون طبیعتا انتخاب Minimize Latency باعث میشه که ترافیک شبکه افزایش پیدا کنه . موفق باشید
با درود و احترام
پس از راه اندازی غالباً مشاهده میشه زمان forward شدن لاگها به Collector با زمان فعلی در حدود 12 ساعت اختلاف داره یعنی هنوز لاگهای مربوط به 12 ساعت اخیر را دریافت نکرده. بعنوان تست 3 تا سرور Source اضافه کردم و زمان همه سرورها درست می باشد. آیا راهی برای سینک شدن این زمان وجود دارد یا حداقل این زمان رو به چند دقیقه رسوند؟
با سپاس
دوست عزیزم مطلبتون بسیار مفید بود و به کمک آن به راحتی راه اندازی شد.
با سپاس
برای اینکه Source Computer برای ارسال Event ها آماده شود لازم هست موارد زیر انجام شوند :
تنظیماتی که در سرور هم باید انجام دهید که جای خود دارد و بایستی Source Computer ها به به اون معرفی کرده و تنظیماتش رو انجام بدید
من اینطور برداشت کردم که باید برای هر کامپیوتر Source ما بصورت دستی یک سری تنظیمات رو انجام بدیم درسته ؟ یعنی نمیشه مثلا برای کل شبکه کاری کرد که یکباره همه Event ها روی یک سرور قرار بگیرن ؟ البته شاید برداشت من اشتباه بوده....