در دنیای امروز که داده ها نقش بسیار مهمی در تصمیم گیری های مدیران سازمان ها و صاحبان کسب و کار ایفا می کنند، اسپلانک با توانایی جمع آوری داده از منابع مختلف و قدرت بالای تحلیل و بررسی آن ها، بیش از پیش مورد توجه قرار گرفته است. علاوه بر این، اسپلانک شما را قادر می سازد که بتوانید به وضعیت زیرساخت ها و سیستم ها، لاگ ها و رخدادهای امنیتی سازمان در لحظه نظارت داشته باشید. این مقاله با هدف آموزش گام به گام نصب و راه اندازی اسپلانک تهیه شده است. اگر شما هم به عنوان ادمین سیستم، تحلیل گر امنیتی یا مهندس دواپس به دنبال راهکاری برای تحلیل و نظارت بر داده های تحت مدیریت خود هستید، حتما در ادامه این مقاله همراه ما باشید تا مراحل مختلف نصب و راه اندازی اسپلانک را با هم بررسی کنیم.
پیشنیازهای نصب Splunk
پیش از این، در مقاله دیگری با عنوان، دانلود آخرین نسخه اسپلانک، در مورد پیش نیازهای نصب اسپلانک صحبت کردیم و نکات مهمی درباره پیش نیازهای سختافزار و نرمافزاری مورد نیاز برای نصب اسپلانک را بیان کردیم. اگر آن مقاله را مطالعه نکرده اید، توصیه می کنیم، ابتدا آن مقاله را بررسی کنید و سپس به خواندن این مقاله ادامه دهید. در مقاله مذکور همچنین، روش دانلود آخرین نسخه اسپلانک (که در زمان نگارش مقاله، نسخه 9.4.2 است) از سایت رسمی این نرم افزار را توضیح دادیم. همچنین روش نصب سریع اسپلانک روی ویندوز را با هم دیدیم؛ اما در این مقاله قصد داریم با جزییات بیشتر و کامل تری، روش نصب اسپلانک روی ویندوز و همچنین لینوکس را به شما آموزش دهیم.
سه نوع معماری Splunk
به طور کلی پروسه Deployment اسپلانک در سه حالت یا سه معماری مختلف می تواند انجام شود:
- حالت Standalone : برای زمانی است که بخواهید برای استفاده شخصی و آموزشی یا تست و ارزیابی بخواهید اسپلانک را روی یک سیستم واحد نصب کنید.
- حالت Basic: در این حالت، یک سرور اصلی مسئولیت جستجو و ایندکس داده ها را بر عهده دارد و forwarder های مختلف از منابع متفاوت داده ها را جمع آوری کرده و به آن سرور ارسال می کنند.
- حالت Distributed: در این حالت، مولفه های مختلف اسپلانک روی سرورهای مختلف مستقر می شوند و امکان توسعه افقی پلتفرم در این حالت به بهترین شکل ممکن وجود دارد. یعنی هرجایی که منابع بیشتری برای ذخیره و پردازش نیاز باشد، با توجه به قابلیت مقیاس پذیری بالا در این نوع معماری، به راحتی امکان پذیر است.
تنظیمات پیش از نصب Splunk
پیش از نصب اسپلانک برخی تنظیمات روی سیستم عامل باید انجام شود. به طور مثال، در صورت امکان باید فایروال سیستم غیرفعال شود. در غیر این صورت پورت هایی که Splunk روی آن ها کار می کند باید باز باشند. مانند پورت 8000 برای webUI، پورت 8089 برای management و پورت 9997 برای data forwarding. همچنین در سیستم عامل های لینوکسی، AppArmor و THP نیز باید غیرفعال شوند که جزییات مربوط به نحوه غیرفعال سازی این موارد را در ماژول اول از دوره Splunk Sys Admin به طور کامل توضیح داده ایم. نکته مهم دیگری که باید مدنظر داشته باشید این است که Splunk Enterprise به صورت لایسنس مدت دار ارائه می شود و پس از مدت معینی (که در حال حاضر 60 روز است)، به نسخه free تبدیل می شود. در لایسنس free محدودیت هایی روی حجم لاگ ورودی اعمال می شود. جزییات مربوط به تفاوت بین لایسنس های مختلف Splunk را می توانید در ماژول دوم از دوره Splunk Sys Admin مشاهده کنید.
ساخت کاربر اختصاصی برای نصب Splunk
نکته ای که باید درنظر بگیرید، توجه به دسترسی های مورد نیاز شما برای نصب و راه اندازی اسپلانک است. به عنوان مثال، روی سیستم های لینوکسی شما باید دسترسی administrator داشته باشید و در سیستم های لینوکسی بهتر است پیش از نصب، یک user در سطح سیستم عامل مخصوص اسپلانک با استفاده از دستور adduser بسازید و مالکیت دایرکتوری محل نصب و استقرار اسپلانک روی سیستم تان را با دستور chown به همان user ای بدهید که به طور اختصاصی برای اسپلانک ساخته اید. البته با کاربر root هم می توان نصب و راه اندازی را انجام داد اما این کار به جز برای تست و موارد آموزشی به هیچ وجه توصیه نمی شود. پس از اطمینان از بررسی دسترسی های مورد نیاز روی سیستم اگر از سیستم عامل لینوکس استفاده می کنید، به بخش بعدی و اگر از ویندوز استفاده می کنید به بخش نصب اسپلانک در ویندوز بروید.
- نصب اسپلانک در لینوکس
مطابق توضیحاتی که در مقاله دانلود آخرین نسخه اسپلانک ارائه دادیم، بسته نصبی اسپلانک برای توزیع های لینوکسی را از دو طریق می توان دریافت کرد. یا از طریق دانلود خود بسته به طور مستقیم یا کپی کردن لینک بسته و استفاده از دستور wget که تفاوتی با یکدیگر هم ندارند و حاصل هر دو یک فایل نصبی فشرده با یکی از پسوندهای .tgz یا .deb یا .rpm است که روی سیستم دانلود می شود. اولین کاری که باید انجام دهید این است که این بسته را از حالت فشرده خارج کنید. اگر بسته .tgz را دانلود کرده اید با دستور زیر آن را از حالت فشرده خارج کرده منتقل کنید. دقت کنید که به جای بخش <version> باید شماره نسخه مورد نظرتان را بنویسید و فایل ها پس از استخراج به محلی که با آپشن -C مشخص شده منتقل می شوند.
Tar -zxvf splunk-<version>.tgz -C /opt
در صورتی که بسته های نصبی .deb یا .rpm را دانلود کرده اید نیز می توانید. با یکی از دو دستور زیر (rpm برای بسته های .rpm و dkpg برای بسته های .deb) آن ها را از حالت فشرده خارج کنید. دقت کنید که بسته .deb برای توزیع های مبتنی بر دبیان (مانند ubuntu) و بسته .rpm برای توزیع های مبتنی بر redhat است.
rpm -i splunk.rpm
dpkg -i splunk.deb
حالا به محلی که برای استخراج فایل ها تعیین کردید (که در اینجا برای ما مسیر /opt بود) بروید (با استفاده از دستور cd) و اسپلانک را با دستور زیر راه اندازی کنید:
./splunk start –accept-license
با آپشن accept-license شما با لایسنس اسپلانک برای راه اندازی این ابزار موافقت می کنید. البته درصورتی که به طور صریح آن را در دستور ذکر نکنید هم مشکلی پیش نمی آید و در مسیر نصب تاییدیه لایسنس از شما گرفته می شود. در ادامه مطابق تصویر زیر از شما نام کاربری و کلمه عبور برای ساخت کاربر ادمین اسپلانک پرسیده می شود که بهتر است نام کاربری را admin قرار داده و یک کلمه عبور دلخواه نیز انتخاب کنید.
پس از وارد کردن نام کاربری و کلمه عبور، در انتهای لاگ های خروجی ترمینال، یک آدرس وب به شما نمایش داده می شود که از طریق وارد کردن آن در مرورگر می توانید به محیط کاربری اسپلانک دسترسی داشته باشید.
پس از وارد کردن آدرس مذکور در مرورگر وب، صفحه لاگین اسپلانک مطابق تصویر زیر به شما نمایش داده می شود که با استفاده از نام کاربری و کلمه عبوری که در زمان نصب مشخص کردید، می توانید وارد محیط کاربری اسپلانک شوید:
اگر با موفقیت وارد محیط کاربری اسپلانک شدید یعنی کار نصب اسپلانک به پایان رسیده و شما می توانید به داشبورد اسپلانک دسترسی داشته باشید و استفاده از امکانات و ویژگی های متنوع آن برای تحلیل و نظارت بر داده هایتان را شروع کنید.
نکات پس از نصب
پس از نصب اسپلانک چند کار باید انجام شود. مورد اول، مدیریت منابع با استفاده از Ulimit است. ابزار اسپلانک به تعداد زیادی فایل باز و فرآیند نیاز دارد و تنظیمات پیش فرض سیستم عامل ممکن است این نیازها را برآورده نکند. لذا لازم است تنظیمات مورد نیاز در این زمینه انجام شود.
کار دیگری که باید انجام شود فعال کردن auto start سرویس Splunk است. اگر این کار انجام نشود هر بار که سیستم ریبوت می شود باید به صورت دستی سرویس Splunk راه اندازی شود. برای فعال کردن حالت راه اندازی خودکار کافی است دستور زیر را اجرا کنید . به جای < <User نام کاربری که برای اسپلانک ساخته اید را قرار دهید یا اگر با کاربر root نصب کرده اید، همان root را بنویسید.
/opt/splunk/bin/splunk enable boot-start -user >User>
توضیحات کامل درباره نکات پس از نصب و موارد دیگری که برای افزایش کارایی و امنیت Splunk وجود دارد در دوره Splunk Sys Admin توضیح داده شده است.
نصب اسپلانک در ویندوز
برای نصب اسپلانک در ویندوز نیز باید همان مراحل نصب در لینوکس طی شود. در مرحله اول، پیش نیازها و آماده سازی سیستم، بعد دانلود و نصب اسپلانک و بعد کارهای پس از نصب باید انجام شود. همان طور که در مقاله دانلود آخرین نسخه اسپلانک توضیح دادیم، برای دانلود Splunk Enterprise ابتدا باید در سایت اسپلانک ثبت نام کنید. پس از ثبت نام در سایت Splunk کافی است وارد این لینک شوید تا صفحه ای مانند صفحه زیر برای شما نمایش داده شود.
هنگام نگارش این مطلب، آخرین نسخه اسپلانک، نسخه 9.4.2 است و ممکن است زمانی که شما اقدام به نصب اسپلانک می کنید، نسخه های جدیدتری منتشر شده باشد. بسته نصبی اسپلانک برای ویندوز 64 بیتی، فایلی با پسوند .msi است و تقریبا 800 مگابایت حجم دارد که با انتخاب گزینه Download now می توانید این بسته را دانلود کرده و پس از دانلود کافی است با دابل کلیک، آن را اجرا کنید تا پنجره ای مطابق تصویر زیر برای شما نمایش داده شود.
با انتخاب گزینه Check this box to accept the License Agreement گزینه های Customize Options و Install فعال می شوند. درباره بحث لایسنس ها و انواع آن ها در اسپلانک در مطلب جداگانه ای (لینک به مطلب) به تفصیل صحبت کرده ایم که می توانید به آن مطلب مراجعه کنید.
اسپلانک را می توانید با تنظیمات پیشفرض نصب کنید (از طریق انتخاب گزینه Install) یا تمام تنظیمات را قبل از نصب پیکربندی کنید. اگر تنظیمات پیشفرض را انتخاب کنید و اقدام به نصب اسپلانک کنید، اقدامات زیر انجام خواهد شد:
- نصب Splunk Enterprise در \Program Files\Splunk
- نصب Splunk Enterprise با پورتهای مدیریت و وب پیشفرض.
- پیکربندی Splunk Enterprise برای اجرا به عنوان کاربر Local System.
- ایجاد یک میانبر در منوی شروع برای نرمافزار.
ما بر روی دکمه Customize Options کلیک می کنیم تا تنظیمات را مطابق دلخواه خودمان انجام دهیم. در مرحله بعدی از ما خواسته میشود که محل نصب را تعیین کنیم:
پس از تعیین محل نصب، روی Next بزنید تا به مرحله بعدی بروید. در اینجا باید انتخاب کنید که می خواهید اسپلانک را با استفاده از یک حساب کاربری محلی (local system) یا یک حساب کاربری دامنه (domain account) نصب کنید.
اگر حساب کاربری محلی را انتخاب کنید، اسپلانک تنها قادر به جمعآوری لاگها بر روی ماشین محلی خواهد بود که روی آن نصب می شود. اگر حساب کاربری دامنه را انتخاب کنید، اسپلانک قادر به جمعآوری لاگها و متریکها از ماشین محلی و ماشینهای از راه دور خواهد بود. ما حساب کاربری دامنه را انتخاب می کنیم و با انتخاب گزینه next وارد مرحله بعدی می شویم.
در مرحله بعد، باید نام کاربری و رمز عبور حساب کاربری دامنهای را که برای نصب اسپلانک استفاده خواهد شد، انتخاب کنید.
اطمینان حاصل کنید که شرایط زیر برآورده شده است:
- کاربر باید عضو دامنه یا Active Directory باشد که میخواهید نظارت کنید.
- کاربر باید عضو گروه Administrators محلی در سروری باشد که Splunk Enterprise را بر روی آن نصب میکنید.
- کاربر باید دارای دسترسی های امنیتی خاصی باشد که به او اختصاص داده شده است.
گزینه Next را بزنید تا وارد مرحله بعد شوید. در این مرحله مانند نصب اکثر نرم افزارهای دیگر، باید انتخاب کنید که آیا میخواهید یک میانبر در منوی Start ایجاد کنید یا خیر.
پس از انتخاب، بر روی دکمه Install کلیک کنید تا نصب اسپلانک شروع شود. پس از نصب، برای اطمینان از صحت نصب اسپلانک، مرورگرتان را باز کرده و به این آدرس بروید: http://localhost:8000
در صورتی که صفحه لاگین رابط کاربری اسپلانک مطابق تصویر زیر برای شما نمایش داده شد، اسپلانک با موفقیت روی سیستم شما نصب شده است. با استفاده از همان نام کاربری و کلمه عبوری که طی فرآیند نصب انتخاب کردید، می توانید وارد محیط کاربری اسپلانک شوید.
نصب Splunk Universal Forwarder
تا اینجا نصب Splunk Enterprise روی لینوکس و ویندوز را با هم بررسی کردیم. اما برای بهره برداری از ابزار اسپلانک در محیط های عملیاتی، باید از Splunk Universal Forwarder برای جمع آوری و ارسال داده ها از منابع مختلف راه دور به Splunk Enterprise استفاده کنیم. برخی تجهیزات شبکهای، مانند firewall ها، توانایی ارسال log با پروتکلهایی نظیر syslog را دارا هستند و در این حالت، نیازی به استفاده از ابزارهای خارجی نیست. اما برخی تجهیزات و سیستمعاملها، مانند Windows، نیازمند نصب یک ابزار مجزا هستند تا به وسیله آن ابزار یا نرمافزار، log به سمت دریافتکننده ارسال شود. در سیستمعاملهایی مانند Linux نیز، هم خود سیستمعامل قادر به ارسال log است و هم میتوان برای جمعآوری log از ابزار مجزا استفاده کرد. هنگامی که در مجموعه خود از Splunk Enterprise استفاده میکنید، توصیه میشود روی سیستمعاملها از forwarder خود Splunk، یعنی Splunk Universal Forwarder، بهره ببرید و تا حد امکان از نرمافزارها و ابزارهای دیگر استفاده نکنید. در اسپلانک دو نوع Forwarder وجود دارد که کار هر دوی آن ها ارسال داده ها از منابع مختلف به سرور اسپلانک است اما یک تفاوت هم وجود دارد:
- Heavy Forwarder: پیش از ارسال داده ها یک پیش پردازش روی آن ها انجام می دهد و بیشتر روی تجهیزات شبکه نصب می شود.
- Universal Forwarder: فقط داده ها را ارسال می کند و پیش پردازشی روی داده ها انجام نمی دهد و بیشتر روی سیستم عامل هایی مانند ویندوز انجام می شود.
بنابراین بسته به نوع نیازمندی می توان از یکی از این دو forwarder استفاده کرد اما مزیت Universal Forwarder که از این پس برای اختصار به آن UF می گوییم، این است که یک ابزار بسیار سبک و کم حجم است و منابع بسیار کمی از cpu و ram را مصرف می کند و تقریبا روی هر تجیهزی قابلیت نصب دارد. بنابراین ما در اینجا فرآیند نصب این ابزار را نیز توضیح خواهیم داد. همان طور که گفتیم این ابزار را روی هر سیستم عاملی می توان نصب کرد که ما اینجا نصب آن در ویندوز را آموزش می دهیم.
قبل از هر چیز باید بسته مربوط به UF را از سایت اسپلانک دانلود کنیم. برای دانلود وارد این لینک شوید و از بخش های مختلفی که مطابق تصویر زیر برای شما نمایش داده می شود، نسخه متناسب با سیستم عامل خودتان را دانلود کنید که ما در اینجا نسخه مربوط به ویندوز را دانلود می کنیم.
پس از دانلود و نصب بسته مورد نظرتان، آن را مثل هر نرم افزار دیگری اجرا کنید تا وارد فرآیند نصب شود. اولین پنجره ای که باز می شود، مانند تصویر زیر است:
گزینه Check this box … که مربوط به تایید لایسنس است و باید فعال شود. اما از بین گزینه های پایین صفحه نیز باید یکی را انتخاب کنیم. اگر قرار است UF همراه با اسپلانک در یک شبکه داخلی نصب شود، گزینه اول و اگر می خواهید از Splunk Cloud استفاده کنید گزینه دوم را انتخاب کنید. گزینه دوم برای زمانی است که سرور اسپلانک شما روی کلاود نصب شده است. ما گزینه اول را انتخاب می کنیم و به مرحله بعد تعیین نام کابری و کلمه عبور می رویم. پس از تعیین نام کاربری (که بهتر است admin بگذاریم) و کلمه عبور دلخواه، در مرحله بعدی باید Hostname یا آدرس IP مربوط به Deployment Server اسپلانک را وارد کنیم. پورت نیز باید روی 8089 تنظیم شود.
در مرحله بعد کافی است روی install کلیک کنیم و نصب UF به پایان می رسد. البته برای اینکه اسپلانک بتواند از UF داده دریافت کند نیاز است تا تنظیماتی هم در UF و هم در Splunk Web UI انجام شود. در دوره Sys Admin در یک ماژول مجزا به طور کامل به نحوه انجام این تنظیمات پرداخته ایم. پس برای جزییات بیشتر می توانید به دوره Splunk Sys Admin مراجعه کنید.
در این مقاله، نحوه نصب و راه اندازی Splunk روی لینوکس و ویندوز را بررسی کردیم و دیدیم که فرآیند نصب در هر دو سیستم عامل مشابه است اما مراحل اجرایی آن ها متفاوت است. همچنین با نحوه نصب Splunk Universal Forwarder که وظیفه جمع آوری و ارسال داده به سرور اسپلانک را دارد، آشنا شدیم. سعی کردیم تا حد امکان جزییات مورد نیاز را بیان کنیم اما هدف در این مقاله، آشنایی با فرآیند کلی نصب و راه اندازی اسپلانک بود که بتواند نقطه شروع مناسبی برای آموزش یادگیری استقرار اسپلانک در محیط های عملیاتی باشد. خواننده علاقمند می تواند برای جزییات بیشتر به دوره Splunk Sys Admin که به طور اختصاصی برای یادگیری مباحث مرتبط با ادمینی اسپلانک طراحی شده مراجعه کند. همچنین تمام آموزش های اسپلانک را در صفحه دوره اسپلانک میتوان مشاهده کرد.