PHPSYSLOG-NG - آموزش آسان - سرویس گیرنده های Syslog

PHP-Syslog-NG سرویس گیرنده های Syslog
ز رسانی: Feb 04 2008


Tool
Tutorial
Ergonomy
Forum



جزئیات

phpsyslog-ng چیست؟
نمایی از برنامه
پیش نیازها
آموزش phpsyslog-ng
سرویس گیرنده های Syslog

Farsi/Persian translation by Mohammad Hossein Karvan .




⚠️⚠️⚠️
Please check our website about
attractions in Western Switzerland !! (Please use english translation).

⚠️⚠️⚠️
Merci de consulter notre site sur les
activités à faire en Suisse romande !!


در اینجا پیکربندی سه نوع از سرویس گیرنده های معروف syslog را که می‌توانند اطلاعات ثبت رخداد را به سرویس دهنده‌ی syslog ما ارسال کنند، وجود دارد.

1. لینوکس 2. ویندوز 3. سیسکو



۱-سرویس گیرنده‌های لینوکس:

برای ارسال اطلاعات ثبت رخداد از یک ماشین لینوکسی به گردآورنده‌ی ثبت رخداد ، می‌توانید از syslogd که syslog پیش فرض در ماشین های لینوکسی هست استفاده کنید و یا از syslog-ng بهره گیرید.

- syslogd

پرونده‌ی /etc/syslogd.conf را باز کنید. از دستور زیر باید استفاده کنید:

facility.level destination

در اینجا چند مثال می‌آوریم:

*.* 10.58.1.1
kern.alert 10.2.5.8
# all the logs are forwarded to 10.58.1.1
# the alerts and emergencies kernel messages will be sent to 10.2.5.8

سرویس دهنده را مجددا راه اندازی نمایید:

etc/init.d/sysklogd restart

- syslog-ng

# apt-get install syslog-ng

پیکربندی سرویس گیرنده‌ی syslog-ng کمی مشکل تر از نوع syslogd است ولی کارهای بیشتری به کمک آن می‌توانید انجام دهید. به عنوان مثال ، از فیلترها استفاده کنید ،اطلاعات ثبت رخداد را از طریق TCP ارسال نمایید و یا اطلاعات ثبت رخداد ارسال شده به سرویس دهنده را رمزگذاری نمایید.
بیایید ببینیم چگونه می‌توان سرویس گیرنده‌ی syslog-ng را پیکربندی کرد:
پرونده‌ی /etc/syslog-ng/syslog-ng.conf config را بازکنید
در اینجا دستوری پایه ای وجود دارد که بسیار واضح است:

log
{
source(source_name);
filter(filter_name);
destination(destination_name);
};

چند مثال دیگر:
1.
۱. تمامی اطلاعات ثبت رخداد به سرویس دهنده‌ی ثبت رخداد 10.13.44.44 ارسال می‌گردد.

source s_all {
internal();
unix-stream("/dev/log");
file("/proc/kmsg" log_prefix("kernel: "));
udp();
};

destination d1 { udp("10.13.44.44"); };

log
{
source(s_all);
destination(d1);
};

2.
۲. در مثال دوم ، از فیلتری استفاده می‌کنیم تا اطلاعات ثبت وقایعی را که به سرویس دهنده ارسال می‌گردند انتخاب کنیم .این فیلتر شامل سطوح پیام‌هایی از قبیل اعلانات ، هشدارها و خطاها خواهد بود. همزمان ،آن‌ها باید از درون هسته خارج گردند.
برای کسب اطلاعات بیشتر در مورد شیوه‌ی دستوری یک پیام ثبت رخداد ، لطفا به وبگاه linode
مراجعه نمایید. اطلاعات ثبت وقایع از طریق TCP ، پورت ۵۴۳۲۱ بجای UDP پورت ۵۱۴ که تنظیمات پیش فرض است ،ارسال می‌گردند.
البته اگر می‌خواهید پورت مورد استفاده در ارسال اطلاعات ثبت رخداد را تغییر دهید ، گردآورنده‌ی ثبت رخداد باید بتواند بر روی آن پورت آماده به کار باشد.

source s_all {
internal();
unix-stream("/dev/log");
file("/proc/kmsg" log_prefix("kernel: "));
udp();
};

filter filter1 { level(notice, alert, errot) and facility(kern); };

destination d1 { tcp("10.15.61.1" port (54321)); };

log
{
source(s_all);
filter(filter1);
destination(d1);
};

فراموش نکنید که پورت ۵۴۳۲۱ TCP را بر روی سرویس دهنده‌ی syslog باز کنید.این پورت باید در یک تعریف ماخذ (source) که در شرح یک ثبت رخداد در پرونده‌ی /etc/syslog-ng/syslog-ng.conf (بر روی سرویس دهنده) ، استفاده خواهد شد، اعلان گردد. در اینجا مثالی می‌آوریم:

source s_all {
internal();
unix-stream("/dev/log");
file("/proc/kmsg" log_prefix("kernel: "));
udp();
tcp(port(54321));
};

در مثال نشان داده شده در بالا ، سرویس دهنده‌ی syslog می‌تواند به هر دو پورت ۵۱۴ UDP و پورت ۵۴۳۲۱ TCP گوش فرا دهد.

بالای صفحه



۲- سرویس گیرنده‌‌های ویندوز

پیام های ثبت رخداد در مایکروسافت ویندوز می‌تواند در ابزار event viewer دیده شوند.برای دسترسی به آن: بر روی "My Computer" کلیک راست نمایید و در ادامه"Manage" را انتخاب کنید.

computer management event viewer

متاسفانه ، ویندوز به صورت پیش فرض نمی‌تواند اطلاعات ثبت رخداد تولید شده توسط این نرم افزار را به سرویس دهنده‌ی syslog ارسال نماید.ابزاری به نام Snare برای این کار احتیاج است.Snare توسط Interselect Alliance ایجاد شده است و در نوع خود بهترین ابزار رایگان برای این منظور است. این برنامه یک نرم افزار متن باز است که تحت شرایط جوز عمومی گنو (GPL) منتشر شده است.
Snare در وبگاه Interselect Alliance برای پایین گذاری در دسترس است.

بیایید این ابزار را نصب کنیم:
با تنظیم آدرس سرویس دهنده‌ی syslog-ng شروع می‌کنیم. بر روی setup -> Audit Configuration کلیک کنید.
در مثال ما ،سرویس هنده‌ی syslog آدرس uk.syslog.qwertzy.com است.

audit configuration

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

Create or Edit an Objective

در کنسول Snare ، می‌توانید اطلاعات ثبت وقایعی که به سرویس دهنده ارسال می‌گردند را بررسی کنید.

Snare Remote event logging for Windows

گزینه‌ای بسیار کاربردی در برنامه‌ی Snare این است که می‌توانید به صورت دسترسی از راه دور از طریق یک رابط وب به آن متصل شوید. بر روی setup -> Remote Control Configuration کلیک کنید.
سعی کنید پورت پیش فرض ۶۱۶۱ را تغییر ندهید. اگر قطعا می‌خواهید و یا احتیاج دارید که آن را تغییر دهید،قبلا مطمئن شوید که سرویس دهنده‌ی شما برای برنامه‌های دیگر به این پورت جدید احتیاج ندارد.

Snare Remote Control configuration

حالا ، می‌توانید از Snare در یک پویش‌گر وب استفاده کنید:

Snare version version status page

بالای صفحه



۳. سرویس گیرنده‌های سیسکو

در اینجا هر آنچه را که برای پیکربندی سوئیچ ها و مسیریاب های سیسکو جهت اجرای برنامه‌ی IOS نیاز است ، بیان می‌کنیم.همانطور که خواهید دید این کار بسیار آسان است.
فقط فرمان اول اجباری است:

logging syslog-ip-address

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

Cisco_device#configure terminal
Cisco_device(config)#logging 10.0.0.1
Cisco_device(config)#logging 172.16.89.258

logging trap level

به دستگاه سیسکو بگویید چه نوع هشدارهایی را ارسال کند.سطح informational، پیش فرض است. اگر این حالت انتخاب شده باشد و یا هیچ گزینه ای توسط فرمان logging trap تنظیم نشده باشد، پیام های حاوی اطلاعات مهم،فوری و بحرانی ،به سرویس دهنده‌ی syslog ارسال می‌شود ،ولی پیام های اشکال زدایی فیلتر خواهد شد.
اگر از فرمان logging trap debug استفاده می‌کنید ، دقت کنید، زیرا مقدار بسیار زیادی اطلاعات ثبت رخداد می‌تواند در مدت زمان کوتاهی به سرویس دهنده‌ی syslog شما ارسال شود.
لطفا برای کسب اطلاعات بیشتر در خصوص انواع گوناگون سطوح ثبت رخداد ، نگاهی به قسمت اول ،"سرویس گیرنده های لینوکس” بیندازید.
در خط زیر مثالی در مورد اینکه فقط هشدارهای حیاتی و بحرانی به سرویس دهنده ارسال شوند،آورده ایم:

Cisco_device#configure terminal
Cisco_device(config)#logging trap critical

logging trap local[0-7]

این فرمان ابزار ثبت رخداد را تنظیم می‌کند.ابزارهای معتبر، local0 تا local7 هستند، پیش فرض local7 است. این نکته جالب توجه است که بدانید اطلاعات ثبت وقایع با یک ابزار یکتا ارسال می‌شوند. این مطلب ،از اطلاعات ثبت وقایع ارسال شده توسط ابزارهای گوناگون در سرویس گیرنده‌های لینوکس یا یونیکس ،بسته به اینکه در کدام قسمت سیستم تولید شده اند ، متفاوت است.(قسمت اول را ببینید) در خط زیر مثالی در مورد اینکه پیام های ثبت رخداد دستگاه سیسکو توسط local5 چگونه ارسال می‌ شود، آورده شده است.

Cisco_device#configure terminal
Cisco_device(config)#logging facility local5

می‌توانید تنظیمات ثبت رخداد را با استفاده از فرمان "show logging" ببینید.
اگر اطلاعات بیشتری در خصوص ثبت رخداد سیسکو نیاز دارید، لطفا وبگاه سیسکو را مشاهده کنید.

بالای صفحه