• ایرانشل
  • وبلاگ
    • مفاهیم امنیت شبکه
    • معرفی راهکارها و سرویس‌های امنیتی
    • آموزش‌‌ راهکارهای امنیت شبکه
    • تهدیدات امنیتی
  • اخبار
  • دوره‌های امنیت
    • مسیرهای شغلی امنیت سایبری

ورود

رمز عبور را فراموش کرده اید؟

هنوز عضو نشده اید؟ عضویت در سایت
ایرانشل
  • ایرانشل
  • وبلاگ
    • مفاهیم امنیت شبکه
    • معرفی راهکارها و سرویس‌های امنیتی
    • آموزش‌‌ راهکارهای امنیت شبکه
    • تهدیدات امنیتی
  • اخبار
  • دوره‌های امنیت
    • مسیرهای شغلی امنیت سایبری
ورود و ثبت نام

وبلاگ

وبلاگ > آموزش‌‌ راهکارهای امنیت شبکه > نحوه نصب Snort3 بر روی Ubuntu20.04

نحوه نصب Snort3 بر روی Ubuntu20.04

آموزش‌‌ راهکارهای امنیت شبکه
ارسال شده توسط ایرانشل
21 دسامبر 2020
1.49k بازدید

دراین راهنما سعی شده تا نحوه نصب Snort3 به عنوان NIDS و Splunk به عنوان SIEM آموزش داده شود. هدف این آموزش بیشتر معرفی اجزا و ویژگی‌های Snort و Splunk می‌باشد. شما می‌توانید این دو نرم افزار را براساس نیاز خود و به راحتی با انجام مراحل زیر و بدون نیاز به فهم مراحل نصب بر روی سرور خود نصب و تنظیم نمایید. از آنجایی که در محیط عملیاتی بیشتر نیاز است که شما درک عمیقی از نحوه کار Snort و Splunk داشته باشید، بنابراین درک مراحل آنها اهمیت چندانی ندارد.

Snort3

snort3 یک سیستم تشخیص و جلوگیری از نفوذ (NIDS/NIPS) مبتنی بر سیاست می‌باشد. این نرم‌افزار برای استفاده در محیط‌ها و سناریوهای مختفلف بسیار منعطف و قابل تنظیم می‌باشد. ساختار جدید معماری pluginهای آن به توسعه‌دهندگان اجازه می‌دهد تا پلاگین‌های خود را برای استفاده در ساختار پردازشی Snort ایجاد کنند. در این راهنما یک استفاده معمول از Snort3 و نصب بر روی یک سرور عملیاتی توضیح داده شده است. در این سناریو سیستم Snort از مجموعه سیاست‌های دانلود شده از سایت Snort برای پایش ترافیک شبکه استفاده خواهد کرد. snort درهنگام شناسایی ترافیک مشکوک به صورت اتوماتیک هشداری برای آن ایجاد می‌کند.

Splunk

Splunk یک سیستم امنیتی اطلاعاتی و مدیریت رویداد (SIEM) است که به جمع‌آوری، ذخیره و تجزیه و تحلیل و تجسم داده‌های تولید شده در ماشین از جمله هشدارهای ایجاد شده توسط Snort می‌پردازد. این راهنما از Splunk برای نمایش گرافیکی هشدارهای Snort، ارائه فیلترها و قابلیت‌های جستجو استفاده می‌کند. و کمک می کند تا شما درک پایه‌ای در مورد Splunk به عنوان ابزاری قدرتمند برای فهم داده‌های تولید شده در تجهیزات، بدست بیاورید.

OpenAppID

Snort OpenAppID به Snort اجازه می‌دهد تا بتواند برنامه‌های مورد استفاده در شبکه را شناسایی، کنترل و اندازه‌گیری نماید. این ابزار شامل مجموعه ای از پکیج‌ها (امضاها) است که با انواع خاصی از داده‌های شبکه مطابقت دارد. برنامه‌های لایه 7، مانند Facebook ،DNS ،netflix ،discus ،google و همچنین برنامه‌هایی که از سرویس‌های chrome ،http و https استفاده می‌کنند، از جمله این برنامه‌ها می‌باشند. شما می‌توانید سیاست‌هایی براساس امضاهای OpenAppID ایجاد و ترافیکی‌هایی که با برنامه‌های خاصی مطابقت دارند را مسدود کنید. به عنوان مثال، با استفاده از این ماژول می‌توانید تمام پیام‌های Facebook را مسدود کنید.

Snort 2 در مقابل Snort 3

Snort3 یک بازطراحی کامل از Snort2 می‌باشد که تعدادی از محدودیت‌های اساسی موجود در Snort2 را پوشش می‌دهد. برخی از ویژگی‌های اصلی Snort3 شامل پردازش‌های چندنخی، معماری پلاگین قابل توسعه، فایل‌های پیکربندی مبتنی بر lua و پوسته خط فرمان می‌باشد.

Snort2 vs Snort3

نیازمندی‌های نرم‌افزاری

  • نسخه LTS و 64 بیتی Ubuntu server 20.04
  • 5 گیگابایت فضا در مسیر /opt/splunk/ برای نصب Splunk

نصب Snort3

در قدم اول برای نصب Snort3 از به روز بودن سیستم و پکیج‌های نصب شده مطمئن شوید.

sudo apt-get update && sudo apt-get dist-upgrade -y

صحیح بودن Time و Timezone سرور از موراد مهمی است که بایستی چک شود. زیرا زمان در هنگام بررسی و آنالیز هشدارها با استفاده از Splunk بسیار مهم می‌باشد.

sudo dpkg-reconfigure tzdata

برای ذخیره فایل‌های Tarball، یک دایرکتوری در مسیر Home کاربر خود ایجاد کنید.

mkdir ~/snort_src
cd ~/snort_src

نصب پیش نیازهای لازم برای Snort3

sudo apt-get install -y build-essential autotools-dev libdumbnet-dev \
libluajit-5.1-dev libpcap-dev zlib1g-dev pkg-config libhwloc-dev \
cmake

نصب پکیج‌های متفرقه

sudo apt-get install -y liblzma-dev openssl libssl-dev cpputest \
libsqlite3-dev uuid-dev
sudo apt-get install -y asciidoc dblatex source-highlight w3m

در ادامه چون قصد داریم Snort را از مخزن github نصب کنیم، به تعدادی ابزار برای کامپایل پکیج‌ها نیاز داریم. انجام این مرحله در اوبونتو 20 نیاز نمی‌باشد، زیرا این کتابخانه‌ها از قبل بر روی آن نصب شده‌اند.

sudo apt-get install -y libtool git autoconf

نصب پیش نیازهای Snort DAQ (کتابخانه جمع‌آوری داده)

sudo apt-get install -y bison flex libcmocka-dev

اگر قصد دارید از Snort در مد inline با استفاده از NFQ به صورت IPS استفاده کنید. بایستی پکیج‌های مورد نیاز را نصب کنید. این پکیج‌ها برای مد IDS و یا مد Inline با استفاده از AFPacket نیاز نمی‌باشد.

sudo apt-get install -y libnetfilter-queue-dev libmnl-dev

دانلود و نصب safec

cd ~/snort_src
wget https://github.com/rurban/safeclib/releases/download/v08112019/libsafec-08112019.0-gad76c7.tar.gz
tar -xzvf libsafec-08112019.0-gad76c7.tar.gz
cd libsafec-08112019.0-gad76c7/
./configure
make
sudo make install

نصب PCRE

cd ~/snort_src/
wget https://ftp.pcre.org/pub/pcre/pcre-8.43.tar.gz
tar -xzvf pcre-8.43.tar.gz
cd pcre-8.43
./configure
make
sudo make install

نصب gpertools 2.7

Tcmalloc یک تخصیص دهنده حافظه است که برای شرایط همزمانی بالا بهینه شده است که می‌تواند سرعت بهتری برای محاسبه هزینه و فایده در زمان استفاده بالا از حافظه فراهم کند. برای نصب این ماژول، gpertools 2.7 را دانلود و با استفاده از مراحل زیر نصب کنید (google’s thread-caching malloc در کروم استفاده شده است).

sudo apt-get install -y libunwind-dev
cd ~/snort_src
wget https://github.com/gperftools/gperftools/releases/download/gperftools-2.7.90/gperftools-2.7.90.tar.gz
tar xzvf gperftools-2.7.90.tar.gz
cd gperftools-2.7.90
./configure
make
sudo make install

نصب پیش نیازهای Hyperscan

Snort 3 برای تطبیق سریع الگوها از Hyperscan استفاده می‌کند. این نرم افزار خود برای کار به دو پکیج Ragel و Boost نیاز دارد.

cd ~/snort_src
wget http://www.colm.net/files/ragel/ragel-6.10.tar.gz
tar -xzvf ragel-6.10.tar.gz
cd ragel-6.10
./configure
make
sudo make install

Hyperscan برای نصب به کتابخانه های Boost C ++ نیازمند می‌باشد. توجه کنید که ما از نسخه مخزن اوبونتو یعنی libboost-all-dev استفاده نمی‌کنیم. زیرا Hyperscan به کتابخانه‌های بالاتر از نسخه 1.58 نیاز دارد و نسخه مخزن اوبونتو بسیار قدیمی است. با استفاده از دستور زیر کتابخانه‌های Boost 1.72.0 را دانلود ولی نصب نکنید.

cd ~/snort_src
wget https://dl.bintray.com/boostorg/release/1.72.0/source/boost_1_72_0.tar.gz
tar -xvzf boost_1_72_0.tar.gz

نصب Hyperscan

cd ~/snort_src
wget https://github.com/intel/hyperscan/archive/v5.2.1.tar.gz
tar -xvzf v5.2.1.tar.gz
mkdir ~/snort_src/hyperscan-5.2.1-build
cd hyperscan-5.2.1-build/
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DBOOST_ROOT=~/snort_src/boost_1_72_0/ ../hyperscan-5.2.1
make
sudo make install

اگر می‌خواهید تست کنید که Hyperscan کار می‌کند، از دایرکتوری مربوط به کامپایل آن، دستور زیر را اجرا نمایید.

cd ~/snort_src/hyperscan-5.2.1-build/
 ./bin/unit-hyperscan

Snort یک نیازمندی اختیاری نیز به Flatbuffers، یک کتابخانه سریال سازی کارآمد حافظه، دارد. شما می‌توانید خطای cmake را برای نصب آن “not a git repository” نادیده بگیرید.

cd ~/snort_src
wget https://github.com/google/flatbuffers/archive/v1.12.0.tar.gz \
 -O flatbuffers-v1.12.0.tar.gz
tar -xzvf flatbuffers-v1.12.0.tar.gz
mkdir flatbuffers-build
cd flatbuffers-build
cmake ../flatbuffers-1.12.0
make
sudo make install

دانلود و نصب Data AcQuisition library (DAQ)

cd ~/snort_src
git clone https://github.com/snort3/libdaq.git
cd libdaq
./bootstrap
./configure
make
sudo make install

به روزرسانی کتابخانه‌های اشتراکی با استفاده از دستور زیر

sudo ldconfig

الان کاملا آماده دانلود، کامپایل و نصب Snort3 از Github می‌باشیم. اگر قصد فعال‌سازی قابلیت اضافی در زمان کامپایل را دارید. مانند توانایی پردازش فایل‌های PCAP بزرگ (بیش از 2 گیگابایت) PCAP یا پوسته جدید خط فرمان. بایستی ابتدا از دستور زیر برای لیست کردن همه گزینه‌های ممکن استفاده کنید.

./configure cmake.sh --help

دانلود و نصب Snort3

cd ~/snort_src
git clone git://github.com/snortadmin/snort3.git
cd snort3
./configure_cmake.sh --prefix=/usr/local --enable-tcmalloc
cd build
make
sudo make install

آخرین مرحله از نصب، تست صحت نصب Snort با اجرای دستور زیر می‌باشد.

/usr/local/bin/snort -V

نتیجه اجرای این دستور باید چیزی شبیه به عکس زیر باشد.

Snort -V

اگر نیتجه اجرا دستور بالا برای شما نیز مانند عکس بالایی باشد یعنی Snort را به درستی نصب کرده‌اید. در ادامه می‌توانیم Snort را با استفاده از فایل کانقیگ پیش‌فرض آن نیز تست کنیم.

snort -c /usr/local/etc/snort/snort.lua

شما بعد از اجرای دستور بالا، بایستی در آخر پیام‌های نمایش داده شده در ترمینال خروجی زیر را مشاهده کنید.

Snort successfully validated the configuration (with 0 warnings).
o")~ Snort exiting

انجام تنظیمات کارت شبکه‌های سرور

کارت‌های شبکه مدرن از ویژگی Offloading برای بازسازی (Re-assembly) مجدد بسته‌های شبکه در سخت‌افزار به جای نرم‌افزار استفاده می‌کنند. در بیشتر مواقع، این ویژگی برای استفاده ترجیح داده می‌شود زیرا بار سیستم را کاهش می‌دهد. برای NIDS، ما می‌خواهیم LRO و GRO را غیرفعال کنیم. زیرا این ویژگی می‌تواند بسته‌های طولانی‌ را کوتاه کند و قسمتی از اطلاعات را از بین ببرد.

برای انجام این تنظیمات بر روی اینترفیس‌ها، یک سرویس SystemD ایجاد می‌کنیم. ابتدا با استفاده از ابزار ethtool وضعیت LRO و GRO را برای اینترفیس eth0 چک می‌کنیم.

sudo ethtool -k eth0 | grep receive-offload
generic-receive-offload: on
large-receive-offload: off [fixed]

ایجاد اسکریپت SystemD

sudo vi /lib/systemd/system/ethtool.service

برای ایجاد سرویس از اسکریپت زیر استفاده می‌کنیم. در این اسکریپت شما بایستی اسم eth0 را به نام اینترفیس سرور خودتان تغییر دهید.

[Unit]
Description=Ethtool Configration for Network Interface
[Service]
Requires=network.target
Type=oneshot
ExecStart=/sbin/ethtool -K eth0 gro off
ExecStart=/sbin/ethtool -K eth0 lro off
[Install]
WantedBy=multi-user.target

فعال‌سازی سرویس

sudo systemctl enable ethtool
sudo service ethtool start

با فعال سازی و اجرای این سرویس، این تنظیمات در همه راه اندازی‌های مجدد سیستم اعمال خواهد شد.

sudo ethtool -k eth0 | grep receive-offload
generic-receive-offload: off
large-receive-offload: off [fixed]

نصب OpenAppID

از انجایی که OpenAppID امکان شناسایی ترافیک لایه برنامه (لایه 7) را فراهم می‌کند. شما می‌توانید با استفاده از این ماژول قوانینی ایجاد کنید که بر روی ترافیک لایه کاربردی کار کند (مثلا فیس بوک را مسدود کنید) و آمار مربوط به هر نوع ترافیک شناسایی شده را ثبت نماید.

cd ~/snort_src/
wget https://snort.org/downloads/openappid/12159 -O OpenAppId-12159.tgz
tar -xzvf OpenAppId-12159.tgz
sudo cp -R odp /usr/local/lib/

پس از انجام مراحل بالا بایستی فایل پیکربندی Snort را ویرایش و مسیر odp را به بخش OpenAppID اضافه کنیم.

appid =
 {
     −− appid requires this to use appids in rules
     app_detector_dir = '/usr/local/lib',
 }

توجه داشته باشید که باید از چهار فاصله (نه تب) برای قسمت فرورفتگی استفاده کنید. اکنون با استفاده از دستور زیر صحت فایل پیکربندی را تست می‌کنیم.

snort -c /usr/local/etc/snort/snort.lua --warn-all

در صورتی تنظمات را به درستی انجام داده باشیم، نتیجه دستور بالا چیزی شبیه به تصویر زیر خواهد بود.

OpenAppID

برای تست OpenAppID یک سیاست ساده ایجاد و با استفاده از آن ترافیک مربوط به Facebook.com را شناسایی می‌کنیم.

sudo mkdir /usr/local/etc/rules
sudo touch /usr/local/etc/rules/local.rules
sudo vi /usr/local/etc/rules/local.rules

alert tcp any any -> any any ( msg:"Facebook Detected"; appids:"Facebook";sid:10000001; )
alert icmp any any -> any any (msg:"ICMP Traffic Detected";sid:10000002;)

شناسایی ترافیک Facebook.com با استفاده از Snort3

sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/local.rules \
-i eth0 -A alert_fast -s 65535 -k none

با اجرای این دستور Snort تنظیمات را خوانده و در آخر خروجی زیر را نشان خواهد داد.

Commencing packet processing
++ [0] eth0

تصویر بالا بدین معنی است که snort به طور صحیح به تمام ترافیک عبوری از eth0 گوش می‌کند. وکل ترافیک را با دو قانون نوشته شده مقایسه می‌کند. زمانی که ترافیکی مطابقت داشته باشد، snort هشداری بر روی کنسول نمایش خواهد داد. اکنون برای تست از wget برای اتصال به فیس بوک استفاده می‌کنیم. این کار باعث فعال شدن قانون اول و ایجاد هشدار موجود در تصویر زیر می‌شود.

wget facebook.com
openappid

اگر می‌خواهید آمار مربوط به OpenAppID را جمع‌آوری کنید (چه مقدار تراکنش توسط هر ردیاب شناسایی شده است). باید آن را در پرونده snort.lua فعال و Snort را با پرچم -l اجرا کنید.

ابتدا یک دایرکتوری برای ذخیره لاگ و آمار Snort در مسیر زیر ایجا نمایید.

sudo mkdir /var/log/snort

برای فعال‌سازی ذخیره‌سازی لاگ مربوط به OpenAppID فایل تنظیمات موجود در مسیر /usr/local/etc/snort/snort.lua را ویرایش کرده و مقدار زیر را به آن اضافه کنید.

appid =
 {
     app_detector_dir = '/usr/local/lib',
     log_stats = true,
 }

برای تست، دستور زیر را در ترمینال اجرا و مجددا از دستور wget برای سایت Facebook استفاده می‌کنیم.

sudo snort -c /usr/local/etc/snort/snort.lua -R /usr/local/etc/rules/local.rules \
-i eth0 -A alert_fast -s 65535 -k none -l /var/log/snort

بعد از جمع‌آوری مقداری لاگ از طریق ping و اجرای دستور wget، در مسیر /var/log/snort فایلی با نام appid_stats.log ایجاد خواهد شد. از آنجایی که مالک این فایل کاربر root می‌باشد، بایستی دسترسی خواندن توسط همه کاربران را به آن بدهیم.

sudo chmod a+r /var/log/snort/appid_stats.log

با استفاده از دستور زیر می‌توانید اطلاعات آماری که Snort از برنامه‌های لایه 7 جمع‌آوری کرده است را مشاهده کنید.

cat /var/log/snort/appid_stats.log
  1549218716,DNS,1576,1778
  1549218716,Facebook,8727,630912
  1549218716,OpenSSH,19523,2344
  1549218716,SSH,19523,23445
  1549218716,HTTPS,8727,630912
  1549218716,SSL client,8727,630912
  1549218716,ICMP,392,392
  1549218716,__unknown,11028,139100

نصب مجموعه قوانین Snort

سه مجموعه مختلف از قوانین Snort برای استفاده در سیستم IDS و IPS وجود دارد. اولین مجموعه شامل مجموعه قوانین Community که رایگان هستند و برای استفاده از آنها نیازی به ثبت نام و ورود به سایت نمی‌باشد. دومین مجموعه، مجموعه قوانین Register شده شامل قوانین Community و سایر قوانین می‌باشد که برای دانلود آنها به یک حساب کاربری رایگان در snort.org نیاز است. سومین مجموعه شامل مجموعه قوانین مشترکین (Sunscriber) است که یک سرویس پولی می‌باشد. قوانین مربوط به مجموعه Subscriber بعد از 30 روز به مجموعه قوانین ثبت شده اضافه می‌شوند.

بنابراین برای استفاده از مجموعه قوانین ثبت شده نیاز است آنها را با فرمت snortrules-snapshot3xxx.tar.gz از بخش Rules دانلود کنید. و در ادامه دایرکتورهای مورد نیاز آنها را در مسیر /usr/local/etc/snort/ ایجا کنید.

sudo mkdir /usr/local/etc/rules
 sudo mkdir /usr/local/etc/builtin_rules
 sudo mkdir /usr/local/etc/so_rules
 sudo mkdir /usr/local/etc/lists

بعد از Extract کردن فایل مربوط به قوانین، آنها را در مسیرهای بالا کپی نمایید.

cd ~/snort_src/
mkdir snortrules-3000
tar -xvzf snortrules-snapshot-3000.tar.gz -C ./snortrules-3000
cd snortrules-3000

sudo cp ./rules/*.rules /usr/local/etc/rules/

sudo cp ./builtins/builtins.rules /usr/local/etc/builtin_rules/

sudo cp ./etc/* /usr/local/etc/snort/

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

sudo vi /usr/local/etc/snort/snort.lua
HOME_NET = '10.0.0.0/24'

برای تست بارگذاری صحیح قوانین از دستور زیر استفاده کنید.

snort -c /usr/local/etc/snort/snort.lua

اگر هیچ خطایی اتفاق نیافتد، خروجی زیر برای شما نمایش داده خواهد شد.

Snort rulesets

فعال کردن قوانین Built-in

ips =
{
   -- use this to enable decoder and inspector alerts
   enable_builtin_rules = true,
   -- use include for rules files; be sure to set your path
   -- note that rules files can include other rules files
   --include = 'snort3-community.rules',
   -- The following include syntax is only valid for …
   -- RULE_PATH is typically set in snort_defaults.lua
   rules = [[
       include $BUILTIN_RULE_PATH/builtins.rules
       include $RULE_PATH/snort3-app-detect.rules
       include $RULE_PATH/snort3-browser-chrome.rules
}

تنظیم Snort برای اجرا در موقع Startup سیستم

برای اجرای خودکار Snort بعد از راه اندازی سیستم، یک اسکریپت systemD ایجاد می‌کنیم. همچنین به دلایل امنیتی، snort را با استفاده از یک کاربر عادی (غیر از کاربر root) اجرا خواهیم کرد.

در قدم اول برای شروع انجام تنظیمات ابتدا کاربر snort و گروه snort را ایجاد می‌کنیم.

sudo groupadd snort
sudo useradd snort -r -s /sbin/nologin -c SNORT_IDS -g snort

در قدم دوم همه فایل‌های مربوط به لاگ‌های قدیمی را پاک می‌کنیم.

sudo rm /var/log/snort/*

دسترسی‌های لازم برای کاربر snort به دایرکتوری log را تنظیم می‌کنیم.

sudo chmod -R 5775 /var/log/snort
sudo chown -R snort:snort /var/log/snort

فایل مربوط به سرویس SystemD را ایجاد و اسکریپت زیر را در آن وارد می‌کنیم.

sudo vi /lib/systemd/system/snort3.service
[Unit]
Description=Snort3 NIDS Daemon
After=syslog.target network.target
[Service]
Type=simple
ExecStart=/usr/local/bin/snort -c /usr/local/etc/snort/snort.lua -s 65535 \
-k none -l /var/log/snort -D -u snort -g snort -i eth0 -m 0x1b
[Install]
WantedBy=multi-user.target

فعال‌سازی لاگ

alert_json =
{
file = true,
limit = 10,
fields = 'seconds action class b64_data dir dst_addr \
dst_ap dst_port eth_dst eth_len eth_src eth_type gid icmp_code \
icmp_id icmp_seq icmp_type iface ip_id ip_len msg mpls pkt_gen \
pkt_len pkt_num priority proto rev rule service sid src_addr \
src_ap src_port target tcp_ack tcp_flags tcp_len tcp_seq \
tcp_win tos ttl udp_len vlan timestamp',
}

با استفاده از دو دستور زیر سرویس Snort را فعال و اجرا می‌نماییم.

sudo systemctl enable snort3
sudo service snort3 start

چک کردن وضعیت سرویس snort3

service snort3 status
Snort Status

نصب Splunk

نسخه رایگان نرم افزار Splunk از سایت آن دانلود کرده و با استفاده از دستور زیر نصب می‌کنیم.

sudo dpkg -i splunk-8.*.deb

دستور بالا Splunk را در مسیر /opt/splunk نصب می‌کند. در اولین اجرای Splunk بایستی یک نام کاربری و پسورد ایجاد نمایید.

sudo /opt/splunk/bin/splunk start --answer-yes --accept-license

با استفاده از دستورات زیر می‌توانیم Splunk را طوری تنظیم کنیم که موقع Startup سیستم به صورت اتوماتیک اجرا شود.

sudo /opt/splunk/bin/splunk stop
 sudo /opt/splunk/bin/splunk enable boot-start -systemd-managed 1
 sudo service Splunkd start

Splunk در نسخه آزمایشی خود یک دوره 60 روز با امکان آنالیز و تحلیل 5 گیگ لاگ به ازای هر روز تست در نظر گرفته است. این نرم افزار به صورت پیش‌فرض بر روی پورت 8000 کار می‌کند.

تنظیم Splunk

ابتدا باید پلاگین‌ Snort 3 JSON Alerts برای جمع‌آوری و نرمال‌سازی لاگ‌های ایجاد شده توسط Snort 3 را نصب کنیم. برای نصب در صفحه اصلی Splunk گزینه Find more app را زده و پلاگین مورد نظر را جستجو و نصب می‌کنیم.

در مرحله بعد، باید این افزونه را پیکربندی کنیم تا از این طریق به Splunk مسیر لاگ‌های ایجاد شده توسط Snort 3 را معرفی نماییم تا بتواند آنها را جمع‌آوری کند. ما این کار را از خط فرمان با استفاده از فایل پیکربندی زیر انجام می‌دهیم.

sudo mkdir /opt/splunk/etc/apps/TA_Snort3_json/local
sudo touch /opt/splunk/etc/apps/TA_Snort3_json/local/inputs.conf
sudo vi /opt/splunk/etc/apps/TA_Snort3_json/local/inputs.conf
[monitor:///var/log/snort/alert_json.txt]
sourcetype = snort3:alert:json

بعد از انجام تنطیمات، سرویس Splunk را ریستارت می‌کنیم.

sudo service Splunkd restart

از این لحظه به بعد هر زمانی که Splunk شروع به کار می‌کند، پوشه /var/log/snort را برای فایل‌های json اسکن می‌کند و به لاگ‌های موجود نوع منبع snort3: alert: json را اختصاص داده و آنها را جمع آوری می‌کند. بعدا ما می‌توانیم با استفاده از تگ منبع، لاگ‌های مربوط به Snort را جستجو کنیم.

برای تست بر روی گزینه Search and Reporting کلیک کرده و عبارت snort3: alert: json را جستجو کنید. این دستور کلیه رویداهای موجود با نوع منبع snort3: alert: json را نشان خواهد داد.

snort splunk
snort&splunk
اشتراک گذاری:
برچسب ها: IDSIPSSnort3

دیدگاهتان را بنویسید لغو پاسخ

درباره ایرانشل

تیم ایرانشل با این هدف تشکیل شده است‌ تا بتوانند با کمک شما همراهان عزیز اقدامات مثبتی در جهت شفاف‌سازی نیازمندی‌های امنیتی، معرفی سرویس‌ها و راهکارهای امنیتی انجام دهد.

عضویت در خبرنامه

اطلاعات تماس
  • تهران - خیابان شریعتی - بالاتر از پل سیدخندان
  • 09125162976
  • [email protected]
شبکه‌های اجتماعی
کلیه حقوق این وب سایت متعلق به ایرانشل می‌باشد.
جستجو

جستجو با زدن Enter و بستن با زدن ESC