Instalasi dan Konfigurasi Snort Mode Intrusion Detection System di Ubuntu Server 20.04
**Sedikit saya akan bahas terlebih dahulu mengenai Intrusion Detection System **
Apa itu Intrusion Detection System (IDS)?
Intrusion Detection System (disingkat IDS) adalah sebuah metode yang dapat digunakan untuk mendeteksi aktivitas yang mencurigakan dalam sebuah sistem atau jaringan. IDS dapat melakukan inspeksi terhadap lalu lintas inbound dan outbound dalam sebuah sistem atau jaringan, melakukan analisis dan mencari bukti dari percobaan intrusi (penyusupan).
Bagaimana Cara Kerja IDS?
Ada beberapa cara bagaimana IDS bekerja. Cara yang paling populer adalah dengan menggunakan pendeteksian berbasis signature (seperti halnya yang dilakukan oleh beberapa antivirus), yang melibatkan pencocokan lalu lintas jaringan dengan basis data yang berisi cara-cara serangan dan penyusupan yang sering dilakukan oleh penyerang. Sama seperti halnya antivirus, jenis ini membutuhkan pembaruan terhadap basis data signature IDS yang bersangkutan.
Teknik lainnya yang digunakan adalah dengan memantau berkas-berkas sistem operasi, yakni dengan cara melihat apakah ada percobaan untuk mengubah beberapa berkas sistem operasi, utamanya berkas log. Teknik ini seringnya diimplementasikan di dalam HIDS, selain tentunya melakukan pemindaian terhadap log sistem untuk memantau apakah terjadi kejadian yang tidak biasa.
Jenis-jenis IDS
Network-based Intrusion Detection System (NIDS) : Semua lalu lintas yang mengalir ke sebuah jaringan akan dianalisis untuk mencari apakah ada percobaan serangan atau penyusupan ke dalam sistem jaringan. NIDS umumnya terletak di dalam segmen jaringan penting di mana server berada atau terdapat pada "pintu masuk" jaringan. Kelemahan NIDS adalah bahwa NIDS agak rumit diimplementasikan dalam sebuah jaringan yang menggunakan switch Ethernet, meskipun beberapa vendor switch Ethernet sekarang telah menerapkan fungsi IDS di dalam switch buatannya untuk memonitor port atau koneksi.
Host-based Intrusion Detection System (HIDS) : Aktivitas sebuah host jaringan individual akan dipantau apakah terjadi sebuah percobaan serangan atau penyusupan ke dalamnya atau tidak. HIDS seringnya diletakkan pada server-server kritis di jaringan, seperti halnya firewall, web server, atau server yang terkoneksi ke internet.
Sebelum dilanjut, bagi kalian yang belum tahu apa itu snort, bisa lihat artikel saya sebelumnya disini.
Ohiya, dalam pengimplementasian IDS kali ini, saya menggunakan OS Ubuntu Server 20.04 LTS serta melakukan instalasi dan konfigurasinya melalui SSH dari client ke server dengan menggunakan aplikasi WSL (Windows Subsystem fo Linux). Oke, tanpa berlama-lama kita langsung mulai saja.
1. Update Repositori
Pertama, upgrade dan update terlebih dahulu repositori Ubuntu servernya dengan menggunakan perintah seperti berikut ini,
apt update
apt upgrade
2. Instalasi Aplikasi Pendukung Snort
Langkah selanjutnya yaitu install paket pendukung snort
sudo apt install -y gcc libpcre3-dev zlib1g-dev libluajit-5.1-dev libpcap-dev opsenssl libssl-dev libnghttp2-dev libdumbnet-dev bison flex libdnet autoconf libtool
Untuk menyimpan file instalasi yang akan di download, selanjutnya membuat folder unduhan sementara.
mkdir ~snort_src && cd ~/snort_src
Selain paket pendukung yang telah diinstall sebelumnya, snort juga memerlukan aplikasi tambahan, yaitu DAQ (Data Acquisition). Unduh paket sumber DAQ terbaru dari situs web Snort dengan perintah wget
wget https://www,snort.org/downloads/snort/daq-2.0.7.tar.gz
Ekstrak File instalasi DAQ
tar -xvzf daq-2.0.7.tar.gz
Selanjutnya masuk kedalam direktori file DAQ yang baru saja diekstrak dan menjalankan perintah autoreconf –f –i yang berfungsi untuk memperbarui file konfigurasi.
ls
cd daq-2.0.7
autoreconf -f -i
Install paket checkinstall.
apt install checkintall
Selanjutnya Install DAQ dengan menggunakan perintah berikut ini
./configure && make && sudo make install
3. Instalasi Snort
DAQ telah terinstall, selanjutnya unduh file instalasi snort dari web snort dengan menggunakan perintah berikut ini. Disini saya mengunduh file snort dengan versi terbaru saat ini, yaitu versi 2.9.19.
cd ~/snort_src
wget https://www.snort.org/downloads/snort/snort-2.9.19.tar.gz
Selanjutnya ekstrak file instalasi tersebut dan masuk ke dalam direktori hasil pengekstrakan tersebut.
tar -xvzf snort-2.9.19.tar.gz
ls
cd snort-2.9.19
Selanjutnya install snort.
./configure --enable-sourcefile && make && sudo make install
Jika sudah selesai, jalankan perintah berikut untuk memverifikasi apakah snort telah terinstall atau belum.
snort -V
Maka akan muncul tampilan seperti gambar berikut ini yang menandakan bahwa snort telah berhasil terinstall
4. Konfigurasi Snort Mode IDS
Langkah pertama, perbarui shared libraries menggunakan perintah ldconfig. Selain itu, buat tautan simbolis (symbolic link) ke /usr/sbin/snort, yang berhubungan dengan lokasi penginstalan snort di Ubuntu yang berada di /usr/local/bin/snort.
sudo ldconfig
sudo ln -s /usr/local/bin/snort /usr/sbin/snort
Untuk menjalankan Snort di Ubuntu dengan aman tanpa akses root, buat pengguna group dan user baru.
sudo groupadd snort
sudo useradd snort -r -s /sbin/nologin -c SNORT_IDS -g snort
Selanjutnya, buat beberapa direktori untuk kebutuhan IDS
sudo mkdir /usr/local/lib/snort_dynamicrules
sudo mkdir -p /etc/snort/rules
sudo mkdir /var/log/snort
Selanjutnya, buat file rules untuk menyimpan rules yang akan diterapkan untuk IDS nantinya
sudo touch /etc/snort/rules/white_list.rules
sudo touch /etc/snort/rules/black_list.rules
sudo touch /etc/snort/rules/local.rules
Selanjutnya atur hak akses untuk beberapa folder yang telah dibaut sebelumnya
sudo chmod -R 5775 /etc/snort
sudo chmod -R 5775 /var/log/snort
sudo chmod -R 5775 /usr/local/lib/snort_dynamicrules
sudo chown -R snort:snort /etc/snort
sudo chown -R snort:snort /var/log/snort
sudo chown -R snort:snort /usr/local/lib/snort_dynamicrules
Kemudian, salin beberapa file konfigurasi snort yang berekstensi .conf dan .map dari folder unduhan.
sudo cp ~/snort_src/snort-2.9.19/etc/*.conf /etc/snort
sudo cp ~/snort_src/snort-2.9.19/etc/*.map /etc/snort
Sebelum melakukan konfigurasi pada file konfigurasi snort, buat file backupnya terlebih dahulu.
cp /etc/snort/snort.conf /ect/snort/snort_backup.conf
Selanjutnya, buka file konfigurasi snort.
nano /etc/snort/snort.conf
Lalu edit IP Address yang akan dilindungi.
Ubah "HOME_NET" dengan IP Address server dan ubah "EXTERNAL_NET" menjadi seluruh IP selain IP server, seperti contoh pada gambar berikut penulis akan melindungi server dengan IP 192.168.0.111.
Scroll ke bagian bawah, lalu lakukan konfigurasi pada bagian berikut ini
Edit menjadi seperti berikut ini
var RULE_PATH /etc/snort/rules
var SO_RULE_PATH /etc/snort/so_rules
var PREPOC_RULES_PATH /etc/snort/prepoc_rules
var WHITE_LIST_PATH /etc/snort/rules
var BLACK_LIST_PATH /etc/snort/rules
Sehingga menjadi seperti gambar berikut ini,
Masih di dalam file yang sama, enable kan konfigurasi seperti gambar berikut ini,
Masih di dalam file yang sama, unable kan file rules selain local.rules seperti gambar berikut ini
Selanjutnya, tes konfigurasi snort dengan menggunakan mode uji dengan perintah berikut ini,
sudo snort -T -c /etc/snort/snort.conf
Akan terlihat seperti gambar berikut ini,
5. Konfigurasi Rules IDS
Selanjutnya, Konfigurasi rules IDS yang akan diterapkan dengan menggunakan perintah berikut ini,
nano /etc/snort/rules/local.rules
Disini, saya mengambil akan menerapkan rules untuk mendeteksi traffic masuk dari paket telnet (menggunakan port 23).
alert icmp any any -> $HOME_NET 23 (msg:"Peringatan! Terdapat Paket telnet yang masuk"; sid:)
6. Pengujian dari rules yang diterapkan
Langkah pertama, jalankan snort Mode IDS di server
sudo snort -A console -i enp0s3 -u snort -g snort -c /etc/snort/snort.conf -K ascii
Maka akan muncul tampilan seperti berikut ini
Selanjutnya lakukan test dari user yang akan mencoba melakukan telnet kepada IP server
telnet (IP Server)
Sebagai contoh, saya akan mencoba melakukan telnet dari Client kepada server yang beralamat IP 192.168.0.111
telnet 192.168.0.111
Tampilannya kurang lebih seperti berikut ini
Selanjutnya, lihat kembali dari sisi server bahwa akan muncul peringatan seperti gambar berikut ini (contoh)
Gambar tersebut menunjukkan bahwa seorang user yang beralamat IP 192.168.0.121 telah melakukan telnet yang mengarah kepada server yang beralamat IP 192.168.0.111
7. Melihat file Log Peringatan
File log peringatan akan tersimpan pada direktori /var/log/snort. Di direktori ini akan terdapat file-file Log Peringatan yang telah dideteksi oleh IDS. Gunakan perintah berikut untuk melihat log log peringatan yang telah dideteksi oleh IDS.
ls /var/log/snort
Sebagai contoh, isi dari hasil peringatan yang terdapat pada file log akan terlihat seperti gambar berikut ini
Terimakasih, semoga tutorial ini bermanfaat! Sampai jumpa lagi di artikel selanjutnya👋
Referensi : How to install Snort on Ubuntu SNORT: Install SNORT saja Ubuntu 20.04