اگر به دنبال کسب اطلاعات لازم در مورد فعالیت کاربران سرور خود و همچنین انجام عیبیابی با دقت و سرعت بیشتر هستید، بررسی لاگ فایلهای اصلی سرورهای لینوکس و ویندوز میتواند به شما کمک کند.
هر چند برنامهها و بخشهای بررسی لاگ فایلها در سرورهای ویندوز و لینوکس متفاوت هستند، اما مطمئن باشید که هر دوی آنها یک سطح از اطلاعات مهم را در اختیار شما قرار میدهند.
لاگ فایل چیست؟
لاگ فایل سرور یک گزارش متنی ساده است که در یک بازه زمانی مشخص، تمام فعالیتهای مربوط به سرور را ذخیره میکند. این فایل به طور خودکار توسط سرور ایجاد و نگهداری میشود و بررسی اطلاعات موجود در این فایل میتواند به ادمین کمک کند تا درک دقیقتری از نحوه دسترسی کاربران به وبسایت یا اپلیکیشن داشته باشد. خطاها، تراکنشها و نفوذها از جمله رویدادهایی هستند که در لاگ فایلها ذخیره میشوند.
به طور کلی، محتوای لاگ فایلها به نوع رویداد و نیازهای خاص میپردازد. به عنوان مثال، گزارشات سرورها شامل اطلاعاتی مانند صفحه وب ارجاع شده، کد وضعیت HTTP، بایتهای ارسالی، عملکرد کاربر و غیره میباشند.
تقریباً هر چیزی که در سرور وبسایت یا اپلیکیشن دخیل است، از جمله پایگاه داده، اپلیکیشنها، کانتینرها، فایروالها، سرویسها و … میتواند لاگ ایجاد کند.
هنگامی که گزارشات مربوط به عملکرد سرور تنوع زیادی دارند، میتوان گفت که لاگ فایلهای سرور یک نگاه خام و بدون فیلتر به ترافیک سایت هستند. هر بار که یک کاربر، مثلاً از طریق گوگل، به صفحهای از وبسایت شما مراجعه میکند، یک خط جدید به لاگ فایل اضافه میشود و این باعث میشود که بررسی لاگ فایلها برای ادمینها بسیار مفید باشد. چراکه خطایابی، کشف نقاط ضعف و خطرات امنیتی با استفاده از این گزارشات، میتواند جلوی بسیاری از مشکلات، مخصوصاً مسائل مربوط به سئو، را بگیرد.
بررسی لاگ فایل های سرور ویندوز
Event Viewer یکی از ابزارهای مهم در بررسی لاگ فایلهای سرور ویندوز است که به شما کمک میکند تا عملکرد برنامهها، وضعیت بروزرسانیها، عیبیابی ویندوز و برنامهها را بررسی کنید. گزارشات این ابزار بسیار مفید هستند و میتوانند به شما در بررسی و رفع مشکلات کمک کنند. همچنین، اگر از خرید سرور مجازی ویندوز استفاده میکنید و نیاز به مدیریت حساب کاربری و گزارشات سیستم دارید، Event Viewer میتواند یک ابزار موثر باشد. رویدادهایی که در سرور مجازی شما رخ میدهند، از جنبه کاربری و فرآیندی بررسی میشوند و اطلاعاتی که از آنها به دست میآید، در عیبیابی سرویسها و مسائل امنیتی بسیار مفید میباشند.
رویدادهای Event Viewer به ۵ نوع اصلی تقسیم می شوند:
Error – زمانی که سیستم نتواند به صورت عادی کار کند، یک مشکل مهم ایجاد می شود و این مشکل با تگ Error نشان داده می شود؛ مثلاً مشکل عدم پاسخگویی سیستم عامل.
Warning – رویدادهای غیرمهمی گه به مشکلات احتمالی آینده اشاره می کنند، مثلاً فضای دیسک کم.
Information – این نوع رویداد زمانی ثبت می شود که یک اپلیکیشن یا سرور به خوبی کار می کند یعنی نوعی خبر در مورد یک فرآیند خاص؛ مثلا بارگیری درست درایور شبکه.
Success Audit – هر گونه رویداد یا گزارش مربوط به تلاش برای دسترسی مجاز با این عنوان ثبت می شود؛ مثلاً تلاش موفقیت آمیز برای ورود به سیستم.
Failure Audit – این رویدادها، خطاها یا شکست های مربوط به دسترسی را نشان می دهند؛ مثلاً عدم امکان دسترسی به درایور شبکه.
نحوه استفاده از Event Viewer در ویندوز سرور
Server Manager را باز کنید و از تب tools، برنامه Event Viewer را اجرا کنید.
( یا از بخش Start، Event Viewer را سرچ کرده و آن را اجرا کنید).
کل لاگ فایل های ویندوز سرور به ۴ دسته Custom View، Windows logs، Applications and services logs و Subscriptions تقسیم شده اند.
برای کسب اطلاعات بیشتر در مورد رویداد موردنظر می توانید روی آن کلیک کنید و قسمت پایین را نگاه کنید.
Custom Views
این بخش برای نمایش هشدارهای موردعلاقه شما طراحی شده است. به عنوان مثال، اگر میخواهید بررسی کنید که بخش خاصی از سیستم دچار مشکل شده است یا نه، میتوانید یک نمایش سفارشی (Custom View) مرتبط با این موضوع ایجاد کنید تا تمام اعلانهای مرتبط با خرابی سیستم در این بخش نمایش داده شود. با توجه به حجم زیاد هشدارهای مرتبط با سرور و اینکه بررسی تمام آنها ممکن است وقتگیر باشد، استفاده از نمایشهای سفارشی به شما کمک میکند تا به طریقی موثر و بهینه تر مشکلات را رصد و رفع کنید.
البته گزینه Administrator Events به طور پیش فرض در بخش Custom Views قرار دارد. گزارشات مختلف مدیریتی مثل اپلیکیشن، امنیت، سیستم و سخت افزار در این بخش قرار می گیرد.
Windows Logs
این بخش اصلی ترین بخش Event Viewer است که رویدادهای مهم را در ۴ دسته اصلی نشان می دهد:
Application– این گزارشات مربوط به درایورها و اپلیکیشن هایی است که در ویندوز سرور میزبانی می شود. مثلا، خطای راه اندازی پاورپوینت در لاگ اپلیکیشن ها قرار می گیرد.
Security – گزارشات امنیتی حاوی رویدادهای مرتبط با ایمنی سیستم هستند. این رویدادها از طریق پروسه ردیابی و تحلیل رویدادهای ویندوز ثبت می شود. گزارشات ورود و خروج کاربران از مهم ترین آنها هستند چون با مانیتور به موقع آنها می توان جلوی هر نوع حمله و هک را گرفت.
Setup – این رویدادها مربوط به پروسه نصب و راه اندازی سیستم عامل ویندوز هستند. اگر سرور از نوع کنترلر دامنه باشد، گزارشات مربوط به Active Directory هم در این بخش ذخیره می شوند.
System – این بخش شامل گزارشات مربوط به سیستم و اجزای آن می شود. خطا در بارگیری درایور بوت یکی از مهم ترین رویدادهای سطح سیستمی است.
Forwarded Events – این بخش حاوی رویدادهایی ارسال شده از طرف سیستم های دیگر موجود در همان شبکه است.
Applications and Services
تمام رویدادهای مربوط به اپلیکیشن هایی که در ویندوز دسکتاپ یا سرور استفاده می کنید در این بخش قرار می گیرد. به عنوان مثال، اگر در اجرای word مشکلی به وجود آمده است، لاگ مربوط به آن در این بخش قرار دارد.
حالا شاید فکر کنید که فرق لاگ Application قبلی با این چیست؟
اپلیکیشن لاگ قبلی که در بخش Windows Log قرار داشت، تنها رویدادهای برنامههای در حال اجرا را نشان میداد. اما بخش Applications and Services رویدادها را با ترتیب منظم و دستهبندی شده ذخیره میکند. به عنوان مثال، اگر فولدر ویندوز موجود در بخش Microsoft را باز کنید، تمام رویدادهای مرتبط با هم در یک پوشه قرار دارند که میتوانید آن را باز کرده و به تمام رویدادهای آن دسترسی داشته باشید.
مثلاً لاگ های مربوط به ریموت دسکتاپ در بخش زیر قرار دارد:
در کل، اگر موقع باز کردن Event Viewer با حجم زیادی از خطاها روبرو شدید، نیازی به نگرانی نیست چون وقتی سیستم شما به خوبی کار می کند هم ممکن است این خطاها باشند.
اگر خطایی واقعا باعث مشکل سرور شده است و با استفاده از لاگ فایل های Event Viewer آن خطا را شناسایی کرده اید، با جستجوی عنوان یا شناسه رویداد می توانید راه حل آن را پیدا کنید.
بررسی لاگ فایل های سرور لینوکس
درست مانند ویندوز سرور، سرور لینوکس هم بخش خاصی را برای ذخیره رویدادهای مربوط به سیستم عامل، برنامهها و سرویسها اختصاص داده است. این لاگ فایلها برای تجزیه و تحلیل مشکلات توسط ادمینها بسیار مفید هستند، به ویژه اگر قصد دارید با خرید سرور مجازی لینوکس، وبسایت یا اپلیکیشن خود راهاندازی کنید. بعداً، نیاز به گزارشات مربوط به ورود و خروج کاربران، درخواستهای دسترسی و موارد دیگر خواهید داشت که بررسی لاگ فایلهای سرور لینوکس میتواند این کار را برای شما آسانتر کند.
لاگ فایل های لینوکس با یک متن ساده ذخیره می شوند و می توان همه آنها را در مسیر var/log پیدا کرد. پس با یک دستور ساده cd هم می توانید به لاگ فایل ها دسترسی داشته باشید منتها برای این کار باید کاربر روت باشید.
معمولاً لاگ فایل های تولید شده در محیط لینوکس به ۴ دسته مختلف تقسیم می شوند:
- Application Logs
- Event Logs
- Service Logs
- System Logs
مهم ترین لاگ فایل های لینوکس که باید مانیتور شوند!
//var/log/syslog یا var/log/messages/
این لاگ فایل ها حاوی پیام ها یا اطلاعات مربوط به سیستم هستند که کل فعالیت های عمومی را پوشش می دهد. خطاهای بوت غیرهسته، خطاهای سرویس های مربوط به برنامه ها و پیام های پروسه بوت یا راه اندازی سیستم در این مسیر قرار دارند.
سیستم های مبتنی بر دبیان– syslog
سیستم های مبتنی بر رد هت– messages
var/log/auth.log/ یا var/log/secure/
لاگ فایل های احراز هویت در این مسیر ذخیره می شوند. ورود موفق، ورود ناموفق و روش های احراز هویت از محتویات اصلی این گزارشات هستند. پس هر گونه نقض امنیتی، حملات brute-force، فایل های مشکوک و در کل هر نوع خطای مربوط به مکانیسم مجوز کاربر در این بخش قرار دارد.
سیستم های مبتنی بر دبیان– auth.log
سیستم های مبتنی بر رد هت – secure
var/log/yum.log/ یا var/log/dnf.log/
لاگ فایل های مربوط به پروسه نصب، آپدیت یا حذف بسته ها توسط مدیر بسته yum یا dnf در این فایل ذخیره می شود. پس بررسی این لاگ فایل ها برای پیگیری وضعیت نصب بسته های نرم افزاری و مشکلات نصب بسیار مفید است. به عنوان مثال، فرض کنید سرور شما دچرا اختلال شده است و شما به آخرین نرم افزاری که نصب کرده اید، شک دارید. در این موقع است که می توانید این لاگ فایل را بررسی کنید تا نرم افزار مخرب را شناسایی کنید.
var/log/mysqld.log/ یا var/log/mysql.log/
این لاگ فایل حاوی تمام پیام های مربوط به پروسه اشکال زدایی، موفقیت یا خطای سرویس MySQL است. پس بررسی این گزارشات برای شناسایی مشکلات راه اندازی ، اجرا یا توقف mysqld، دریافت اطلاعات بیشتر در مورد اتصالات کلاینت ها به دایرکتوری داده MySQL و تنظیم پارامتر long_query_time بسیار مفید است.
var/log/maillog/ یا var/log/mail.log/
همانطور که از اسم آن مشخص است، تمام گزارش های مربوط به سرور ایمیل در این مسیر ذخیره می شوند. پس اگر به اطلاعاتی در مورد postfix، smtpd یا سرویس های مربوط به ایمیل نیاز دارید، اطلاعات این لاگ فایل برای شما بسیار مفید است.
ردیابی تمام ایمیل های ارسالی و دریافتی در یک دوره خاص، بررسی مشکلات تحویل ایمیل، کشف تلاش های احتمالی اسپم ها و … از مهم ترین کارهایی است که می توانید با استفاده از این لاگ فایل انجام دهید.
var/log/boot.log/
این فایل مخزن تمام اطلاعات مربوط به پروسه بوت و راه اندازی سرور است. پس خطاهای مربوط به روشن/خاموش شدن سیستم، بوت و ری استارت ناموفق در این بخش قرار دارند.
var/log/dmesg/
لاگ فایل های مربوط به دستگاه های سخت افزاری و درایورهای سیستم یا سرور لینوکس در این بخش قرار می گیرند. پس با استفاده از آن می توان اطلاعات مربوط به وضعیت دستگاه، خطاهای سخت افزاری و پیام های عمومی مرتبط را ردیابی کرد. این فایل لاگ بیشتر برای سرورهای اختصاصی مفید است.
var/log/kern/
همانطور که از اسم آن مشخص است، اطلاعات و گزارشات مربوط به کرنل سیستم در این مسیر قرار می گیرد. این لاگ فایل های توسط هسته ثبت می شوند پس خیلی مهم هستند. در کل، این لاگ فایل ها برای رفع مشکلات سخت افزاری، اتصالات و عیب یابی هشدارهای مربوط به هسته بسیار ایده آل هستند.
var/log/faillog/
تمام گزارشات مربوط به تلاش های ناموفق ورود به سیستم در این مسیر قرار می گیرند. پس با استفاده از آنها می توان نقض های امنیتی مثل هک نام کاربری/رمز عبور و حملات مثل بروت فورس را شناسایی کرد.
- افزایش امنیت وردپرس باBrute Force Login Protection
var/log/cron/
تمام پیام های مربوط به Crond (cron jobs) در این بخش ذخیره می شوند. هر موقع که یک کران جا اجرا شد، گزارشات اجرای موفقیت آمیز یا خطای اجرا تحت قالب لاگ فایل جدید در این مسیر قرار می گیرد.
var/log/httpd/
این فایل شامل تمام لاگ های ثبت شده توسط سرور آپاچی است. اطلاعات ورود به سرور آپاچی در دو فایل جداگانه error_log و access_log ذخیره می شوند.
error_log مخزن تمام پیام های مربوط به خطاهای httpd است که مشکلات حافظه و مشکلات مربوط به پروسه پردازش درخواست های httpd از اصلی ترین آنها هستند.
access_log هم تمام درخواست ها دسترسی دریافت شده از طریق HTTP را ذخیره می کند و به شما کمک می کند هر صفحه باز شده و هر فایل بارگذاری شده توسط آپاچی را مانیتور کنید.
آدرس IP، آی دی کلاینت ها، اطلاعات مربوط به وضعیت درخواست ها و نتیجه آنها از مهم ترین محتویات این لاگ فایل هستند.
نحوه دسترسی به لاگ فایل های لینوکس
برای مشاهده رویدادهای سرور لینوکس، ۲ راه پیش رو دارید. اولی اینکه از دستورات اصلی لینوکس استفاده کنید و دومی اینکه برنامه لاگ فایل سیستم لینوکس را اجرا کنید.
مشاهده رویدادهای سرور لینوکس با دستورات
ترمینال را باز کنید و به مسیر زیر بروید: ( البته برای اجرای این دستورات حتماً باید کاربر روت باشید)
cd /var/log
با دستور زیر، لیست تمام لاگ فایل ها را باز کنید:
ls
برای باز کردن یک لاگ فایل خاص می توانید از یکی از دستورات زیر استفاده کنید:
مثلا faillog:
less /var/log/faillog
more -f /var/log/faillog
cat /var/log/faillog
tail -f /var/log/faillog
grep -i error /var/log/faillog
خروجی هر کدام از این دستورات، گزارشات مربوط به تلاش های ورود ناموفق را تحت یک قالب ساده به شما ارائه می دهد که با استفاده از آن می توانید تاریخ و نوع اقدام کاربر را با جزئیات دقیق مشاهده کنید.
مشاهده رویدادهای سرور لینوکس با GUI
System Log Viewer در لینوکس همان Event Viewer در ویندوز است که برای مشاهده و نظارت رویدادهای سرور یا سیستم استفاده می شود.
برای باز کردن این ابزار کافیست که روی منوی سیستم کلیک کنید و از بخش Choose Administration ،System Log را انتخاب کنید.
این برنامه تمام رویدادها را به صورت دسته بندی شده ارائه می دهد که متناسب با نیاز خود می توانید به بخش موردنظر مراجعه کنید و از اطلاعات آنها استفاده کنید.
جمع بندی
بررسی لاگ فایلهای سرور لینوکس و ویندوز باعث میشود که خطاها را به سرعت شناسایی کرده و در صورت لزوم به آنها واکنش نشان دهید. ادمینهای سرور ویندوز برای این کار از ابزار معروف Event Viewer استفاده میکنند، در حالی که ادمینهای لینوکس میتوانند از دستورات یا رابط گرافیکی System Log Viewer استفاده کنند. اما بسیاری از ادمینهای لینوکس به دستورات اطمینان بیشتری دارند، زیرا آنها را مفیدتر و راحتتر از رابط گرافیکی میدانند.
از اینکه تا انتهای مقاله با ما همراه بودید، سپاسگزاریم. امیدواریم که مطالعه این مقاله برای شما مفید بوده باشد. در صورت داشتن هرگونه سوال، درخواست یا نیاز به راهنمایی، میتوانید با ثبت نظر خود، با ما ارتباط برقرار کنید تا هر چه زودتر به شما پاسخ دهیم.