GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Memantau dan Mendeteksi File yang Dimodifikasi menggunakan Tripwire IDS di Ubuntu 16.04

Tripwire adalah Intrusion Detection System (IDS) gratis dan open source. Ini adalah alat keamanan untuk memantau dan mengingatkan perubahan file pada sistem. Tripwire adalah IDS kuat yang melindungi sistem Anda dari perubahan yang tidak diinginkan. Anda dapat memantau file sistem Anda, termasuk file situs web. Jadi, ketika ada perubahan file yang tidak diinginkan di salah satu file yang sedang dipantau, tripwire akan memeriksa sistem Anda dan akan memberi tahu Anda (jika pengaturan itu sudah dilakukan).

Dalam tutorial ini, kami akan menunjukkan cara menginstal dan mengkonfigurasi IDS Berbasis Host Tripwire di Ubuntu 16.04. Kami juga akan menunjukkan cara mengonfigurasi tripwire untuk memantau dan mendeteksi file yang dimodifikasi pada sistem.

Apa yang akan kami lakukan

  1. Instal Tripwire
  2. Konfigurasikan kebijakan Tripwire untuk sistem Ubuntu
  3. Verifikasi konfigurasi Tripwire
  4. Tambahkan kumpulan aturan baru ke kebijakan Tripwire
  5. Siapkan pemberitahuan Tripwire dan cron

Prasyarat

  • Server Ubuntu 16.04
  • Hak istimewa root

Langkah 1 - Instal Tripwire

Langkah pertama adalah menginstal tripwire ke sistem. Alat ini tersedia di repositori resmi Ubuntu - cukup perbarui repositori Ubuntu Anda dan instal Tripwire menggunakan perintah berikut.

sudo apt update
sudo apt install -y tripwire

Selama instalasi, Anda akan ditanya tentang konfigurasi SMTP Postfix. Pilih 'Situs Internet ' dan klik 'Oke ' untuk melanjutkan penginstalan.

Untuk nama sistem email, biarkan default (seperti yang ditunjukkan di bawah), dan pilih 'OK ' untuk melanjutkan.

Selanjutnya, Anda akan ditanya tentang konfigurasi Tripwire.

Buat 'kunci situs . baru ' untuk Tripwire - pilih 'Ya ' dan tekan Enter untuk melanjutkan.

Sekarang untuk 'local-key ', pilih 'Ya ' dan tekan Enter lagi.

Untuk opsi Bangun Kembali Konfigurasi Tripwire, pilih 'Ya '.

Sama untuk opsi Rebuild Tripwire Policy - pilih 'Ya '.

Sekarang Anda akan diminta untuk 'site-key ' kata sandi. Ketik sandi dan pilih 'OK '.

Ulangi 'kunci situs ' frasa sandi.

Kemudian untuk 'local-key ' frasa sandi, ketik sandi dan pilih 'OK '.

Ulangi 'local-key ' frasa sandi.

Dan sekarang instalasi tripwire di Ubuntu 16.04 telah selesai.

Langkah 2 - Konfigurasi kebijakan Tripwire untuk sistem Ubuntu

Pada langkah ini, kita akan mengkonfigurasi Tripwire untuk sistem Ubuntu kita. Semua konfigurasi terkait Tripwire terletak di direktori '/etc/tripwire'.

Setelah instalasi Tripwire, kita perlu menginisialisasi sistem database. Jalankan perintah berikut untuk itu.

sudo tripwire --init

Anda akan ditanya tentang frasa sandi kunci lokal Anda - ketikkan frasa sandi kunci lokal Anda dan tekan Enter.

Dan Anda mungkin akan mendapatkan kesalahan 'Tidak ada direktori seperti itu ', seperti yang ditunjukkan di bawah ini.

Untuk mengatasi kesalahan ini, kita perlu mengedit file konfigurasi Tripwire dan membuat ulang konfigurasi.

Sebelum mengedit konfigurasi Tripwire, kita perlu memeriksa direktori mana yang tidak ada, sesuatu yang dapat Anda lakukan dengan menggunakan perintah berikut.

sudo sh -c "tripwire --check | grep Filename > no-directory.txt"

Sekarang Anda dapat melihat semua direktori dan file yang tidak ada dengan cara berikut.

cat no-directory.txt

Selanjutnya, buka direktori konfigurasi Tripwire dan edit file konfigurasi twpol.txt.

cd /etc/tripwire/
vim twpol.txt

Pada aturan 'Boot Scripts', beri komentar pada baris seperti di bawah ini.

(
  rulename = "Boot Scripts",
  severity = $(SIG_HI)
)
{
        /etc/init.d             -> $(SEC_BIN) ;
        #/etc/rc.boot           -> $(SEC_BIN) ;
        /etc/rcS.d              -> $(SEC_BIN) ;

Pada aturan 'System Boot Changes', beri komentar seperti di bawah ini.

(
  rulename = "System boot changes",
  severity = $(SIG_HI)
)
{
        #/var/lock               -> $(SEC_CONFIG) ;
        #/var/run                -> $(SEC_CONFIG) ; # daemon PIDs
        /var/log                -> $(SEC_CONFIG) ;

Pada aturan 'Root config files', buat perubahan berikut.

(
  rulename = "Root config files",
  severity = 100
)
{
        /root                           -> $(SEC_CRIT) ; # Catch all additions to /root
        #/root/mail                     -> $(SEC_CONFIG) ;
        #/root/Mail                     -> $(SEC_CONFIG) ;
        #/root/.xsession-errors         -> $(SEC_CONFIG) ;
        #/root/.xauth                   -> $(SEC_CONFIG) ;
        #/root/.tcshrc                  -> $(SEC_CONFIG) ;
        #/root/.sawfish                 -> $(SEC_CONFIG) ;
        #/root/.pinerc                  -> $(SEC_CONFIG) ;
        #/root/.mc                      -> $(SEC_CONFIG) ;
        #/root/.gnome_private           -> $(SEC_CONFIG) ;
        #/root/.gnome-desktop           -> $(SEC_CONFIG) ;
        #/root/.gnome                   -> $(SEC_CONFIG) ;
        #/root/.esd_auth                        -> $(SEC_CONFIG) ;
        #/root/.elm                     -> $(SEC_CONFIG) ;
        #/root/.cshrc                   -> $(SEC_CONFIG) ;
        /root/.bashrc                   -> $(SEC_CONFIG) ;
        #/root/.bash_profile            -> $(SEC_CONFIG) ;
        #/root/.bash_logout             -> $(SEC_CONFIG) ;
        /root/.bash_history             -> $(SEC_CONFIG) ;
        #/root/.amandahosts             -> $(SEC_CONFIG) ;
        #/root/.addressbook.lu          -> $(SEC_CONFIG) ;
        #/root/.addressbook             -> $(SEC_CONFIG) ;
        #/root/.Xresources              -> $(SEC_CONFIG) ;
        #/root/.Xauthority              -> $(SEC_CONFIG) -i ; # Changes Inode number on login
        #/root/.ICEauthority                -> $(SEC_CONFIG) ;

Pada aturan 'Device and Kernel information', ubah baris seperti di bawah ini.

(
  rulename = "Devices & Kernel information",
  severity = $(SIG_HI),
)
{
        /dev            -> $(Device) ;
        /dev/pts        -> $(Device);
        /dev/shm        -> $(Device);
        /dev/hugepages  -> $(Device);
        /dev/mqueue     -> $(Device);
        #/proc          -> $(Device) ;
        /proc/devices           -> $(Device) ;
        /proc/net               -> $(Device) ;
        /proc/tty               -> $(Device) ;
        /proc/cpuinfo           -> $(Device) ;
        /proc/modules           -> $(Device) ;
        /proc/mounts            -> $(Device) ;
        /proc/dma               -> $(Device) ;
        /proc/filesystems       -> $(Device) ;
        /proc/interrupts        -> $(Device) ;
        /proc/ioports           -> $(Device) ;
        /proc/scsi              -> $(Device) ;
        /proc/kcore             -> $(Device) ;
        /proc/self              -> $(Device) ;
        /proc/kmsg              -> $(Device) ;
        /proc/stat              -> $(Device) ;
        /proc/loadavg           -> $(Device) ;
        /proc/uptime            -> $(Device) ;
        /proc/locks             -> $(Device) ;
        /proc/meminfo           -> $(Device) ;
        /proc/misc              -> $(Device) ;
}

Itu dia. Simpan perubahan dan keluar dari editor.

Setelah mengedit file konfigurasi, terapkan semua perubahan dengan membuat ulang file kebijakan terenkripsi menggunakan perintah twadmin seperti yang ditunjukkan di bawah ini.

sudo twadmin -m P /etc/tripwire/twpol.txt

Ketik frasa sandi 'kunci situs' dan tekan Enter.

Dengan ini, kebijakan Tripwire baru akan dibuat. Sekarang, inisialisasi ulang database Tripwire.

sudo tripwire --init

Ketikkan frasa sandi kunci lokal Anda dan pastikan Anda tidak mendapatkan kesalahan kali ini.

Kebijakan Tripwire telah dikonfigurasi untuk sistem Ubuntu

Langkah 3 - Periksa integritas file sistem

Tripwire telah diinstal, dan kebijakan tripwire telah diperbarui dan diinisialisasi ulang. Pada langkah ini, kita akan memeriksa sistem secara manual menggunakan Tripwire.

Verifikasi semua file sistem menggunakan perintah berikut.

sudo tripwire --check

Dan Anda harus mendapatkan 'No Violation' dan 'No Error' di hasil/output.

Selanjutnya, tambahkan file baru di direktori root, lalu periksa kembali sistem menggunakan Tripwire.

cd ~/
touch hakase-labs.txt
sudo tripwire --check

Dan pada output, penambahan file dan modifikasi direktori tempat file berada akan muncul sebagai pelanggaran.

Lihat hasilnya di bawah.

Langkah 4 - Tambahkan aturan baru ke Tripwire

Pada langkah ini, kami ingin menambahkan Aturan Tripwire baru ke konfigurasi. Untuk membuat kebijakan tripwire baru, kita perlu menentukan nama aturan, tingkat keparahan, dan jenis file. Pada langkah ini, kami akan mencoba menambahkan aturan baru bernama 'Data Wordpress' dengan tingkat keparahan 'Tinggi/SIG_HI' dan semua file di direktori tersebut penting tidak dapat diubah.

Buka direktori konfigurasi tripwire dan edit file konfigurasi 'twpol.txt'.

cd /etc/tripwire/
vim twpol.txt

Pergi ke akhir baris dan tempel contoh aturan Tripwire di bawah ini.

# Ruleset for Wordpress
(
  rulename = "Wordpress Ruleset",
  severity= $(SIG_HI)
)
{
        /var/www        -> $(SEC_CRIT);
}

Simpan dan keluar.

Sekarang buat ulang file konfigurasi tripwire.

sudo twadmin -m P /etc/tripwire/twpol.txt

Ketikkan frasa sandi kunci situs Anda.

Dan inisialisasi ulang database Tripwire.

sudo tripwire --init

Ketikkan frasa sandi kunci lokal Anda.

Jika semua konfigurasi tersebut telah selesai, kita dapat mencoba membuat file baru atau memodifikasi file di bawah direktori '/var/www/'.

Buka direktori '/var/www/', buat file baru dan ubah file indeks.

cd /var/www/
touch hakase-labs.txt
echo "<h1> Hakase-labs Tutorial</h1>" > html/index.nginx-debian.html

Periksa sistem menggunakan perintah tripwire di bawah ini.

sudo tripwire --check

Dan Anda akan mendapatkan notifikasi tentang pelanggaran sistem dengan tingkat keamanan 100 seperti di bawah ini.

Aturan Tripwire baru telah ditambahkan.

Langkah 5 - Siapkan notifikasi dan cron Tripwire

Pada langkah ini, kami akan mengonfigurasi pemberitahuan untuk kebijakan kumpulan aturan Tripwire tertentu, dan mengonfigurasi cron untuk pemeriksaan sistem otomatis.

Untuk notifikasi email, Tripwire menyediakan fungsi 'emailto' dalam konfigurasinya. Tripwire menggunakan Postfix untuk pemberitahuan email, dan itu otomatis terinstal selama penginstalan alat.

Sebelum mengonfigurasi notifikasi email, uji notifikasi Tripwire menggunakan perintah di bawah ini.

tripwire --test --email [email protected]

Dan pastikan Anda memiliki email dari server Anda, seperti yang ditunjukkan di bawah ini.

Sekarang buka direktori '/etc/tripwire' dan edit konfigurasi 'twpol.txt'.

cd /etc/tripwire/
vim twpol.txt

Tambahkan baris baru di dalam aturan 'Data Wordpress', seperti yang ditunjukkan di bawah ini.

# Rules for Web-app
(
  rulename = "Wordpress Rule",
  severity = $(SIG_HI),
  emailto = [email protected]
)

Itu dia. Simpan dan keluar.

Selanjutnya, buat ulang konfigurasi dan inisialisasi ulang database Tripwire.

sudo twadmin -m P /etc/tripwire/twpol.txt
sudo tripwire --init

Ketik frasa sandi kunci situs untuk membuat ulang konfigurasi, dan frasa sandi kunci lokal untuk menginisialisasi ulang.

Sekarang, buat file baru lagi di direktori '/var/www/', dan periksa sistem secara manual menggunakan Tripwire dan kirim laporan melalui email.

sudo tripwire --check --email-report

Dan Anda akan mendapatkan laporan email di kotak masuk Anda.

Selanjutnya, untuk konfigurasi cron, kita hanya perlu menentukan waktu di mana perintah tripwire akan dijalankan. Kami akan mengonfigurasi pemeriksaan sistem Tripwire setiap hari.

Buat cron baru menggunakan perintah crontab di bawah ini.

sudo crontab -e -u root

Dan paste konfigurasi cron di bawah.

0 0 * * * tripwire --check --email-report

Simpan dan keluar, lalu muat ulang cron.

systemctl restart cron

Sekarang sistem akan melakukan pengecekan setiap hari dan mengirimkan notifikasi pelanggaran aturan 'Wordpress' ke email Anda.

Tripwire IDS telah diinstal dan dikonfigurasi di Ubuntu 16.04, dan semua file dan direktori pada sistem telah dipantau. Anda dapat menambahkan aturan Anda sendiri dengan mengikuti petunjuk di langkah 4.


Ubuntu
  1. Cara Memantau Nginx menggunakan Netdata di Ubuntu 16.04

  2. Memantau dan Mendeteksi File yang Dimodifikasi menggunakan Tripwire di CentOS 7

  3. Cara memonitor file log server dengan Logwatch di Debian dan Ubuntu

  1. Cara menginstal Stacer System Monitor di Ubuntu 18.04 LTS

  2. Pantau File Log Nginx Menggunakan ngxtop di Ubuntu 20.04

  3. Cara Menyinkronkan File/Folder Menggunakan FreeFileSync di Ubuntu

  1. Cara menginstal dan menjalankan Aplikasi Android di Ubuntu menggunakan Anbox

  2. Cara Zip dan Unzip file di Ubuntu

  3. Cara Mengganti Nama File dan Direktori di Ubuntu 20.04