GNU/Linux >> Belajar Linux >  >> Linux

Aturan audit untuk memantau Salin, pindahkan, hapus, dan matikan Perintah Di Linux

Audit sistem dengan auditd

Audit sistem adalah tugas yang sangat penting yang harus menjadi bagian dari setiap server. Ini memungkinkan kami untuk mengaudit detail menit terkait dengan apa yang sebenarnya terjadi di dalam sistem. auditd adalah komponen userspace untuk sistem audit Linux. Ini berarti bahwa pengguna sistem akan dapat menjalankan auditd untuk mengonfigurasi aturan dan peringatan untuk mengaudit fungsionalitas dengan sistem Linux.

Salah satu hal terbaik tentang auditd adalah ia terintegrasi erat dengan kernel, sehingga memberi kita kekuatan untuk memantau hampir semua yang kita inginkan, sungguh. Untuk memungkinkan pengguna melihat apa yang sedang terjadi, auditd dapat merekam semua peristiwa terkait audit ke disk dan kami dapat menggunakan berbagai alat seperti ausearch atau aureport untuk menelusuri file log.

Secara default, tidak ada aturan yang dikonfigurasi. Kita perlu menulis aturan kita di /etc/audit/audit.rules file konfigurasi yang akan dibaca dan tindakan audit yang sesuai akan diterapkan.

Memasang Auditd

Sekarang setelah kita sedikit memahami apa itu auditd, mari kita lanjutkan dan mulai bekerja dengan auditd dengan kasus penggunaan sebelumnya:

1. Instal paket auditd. Paket auditd adalah bagian dari sistem CentOS 7 instalasi default. Kita dapat memverifikasinya dengan perintah berikut:

# rpm -qa | grep audit
audit-libs-2.6.5-3.el7_3.1.x86_64
audit-2.6.5-3.el7_3.1.x86_64
audit-libs-python-2.6.5-3.el7_3.1.x86_64

2. Jika paket tersebut bukan bagian dari sistem kami, kami dapat melanjutkan dan menginstalnya:

# yum install audit

3. Pastikan daemon audit berjalan. Kami akan menggunakan perintah berikut:

# systemctl status auditd
 auditd.service - Security Auditing Service
    Loaded: loaded (/usr/lib/systemd/system/auditd.service; enabled;
 vendor preset: enabled)
    Active: active (running) since Wed 2018-10-24 04:33:48 UTC; 4min
 21s ago
    Docs: man:auditd(8)
          https://people.redhat.com/sgrubb/audit/
    Process: 425 ExecStartPost=/sbin/augenrules --load (code=exited,
  status=0/SUCCESS)
 Main PID: 424 (auditd)
     CGroup: /system.slice/auditd.service
            └─424 /sbin/auditd -n

Karena kita memiliki daemon audit yang aktif dan berjalan, mari kita lihat bagaimana kita dapat menggunakan auditd untuk mencapai semua 4 kasus penggunaan.

Aturan Audit untuk Menyalin, memindahkan, menghapus, dan mematikan Perintah

1. Ambil cadangan file konfigurasi yang ada (aturan audit):

# cp /etc/audit/audit.rules /etc/audit/audit.rules.bkp

2. Edit file /etc/audit/audit.rules dan tambahkan aturan berikut untuk membuatnya persisten:

# vi /etc/audit/audit.rules
# Audit Copy, Move, Delete & Create file commands
-a exit,always -F arch=b64 -S execve -F path=/bin/cp -k Copy
-a exit,always -F arch=b64 -S execve -F path=/bin/mv -k Move_Rename
-a exit,always -F arch=b64 -S execve -F path=/bin/rm -k Delete
-a exit,always -F arch=b64 -S execve -F path=/bin/vi -k Create_Edit_View_File

# Audit shutdown & Reboot command
-a exit,always -F arch=b64 -S execve -F path=/sbin/reboot -k Reboot
-a exit,always -F arch=b64 -S execve -F path=/sbin/init -k Reboot
-a exit,always -F arch=b64 -S execve -F path=/sbin/poweroff -k Reboot
-a exit,always -F arch=b64 -S execve -F path=/sbin/shutdown -k Reboot

# Audit mount unmount commands
-a exit,always -F arch=b64 -S execve -F path=/bin/mount -k mount_device
-a exit,always -F arch=b64 -S execve -F path=/bin/umount -k unmount_device

# Kill Process
-a exit,always -F arch=b64 -S kill -k Kill_Process

3. Mulai ulang layanan auditd untuk menerapkan perubahan.

# service auditd restart

4. Buat daftar aturan yang ditambahkan, untuk memverifikasi bahwa ini benar:

# auditctl -l
Catatan :bash (dan banyak shell lainnya) memiliki perintah "kill" bawaan yang sebenarnya tidak menjalankan /usr/bin/kill. Jadi, jika perintah bawaan dijalankan, comm=bash benar. Tidak ada cara untuk memaksa sistem menggunakan /usr/bin/kill program eksternal. comm=bunuh tidak akan terjadi di semua kasus, karena shell dapat memanggil syscall secara langsung tanpa menjalankan program eksternal bernama “kill”


Linux
  1. 10 Perintah Linux Untuk Diagnostik Jaringan

  2. Perintah Linux:pekerjaan, bg, dan fg

  3. Bagaimana cara menambahkan bilah kemajuan untuk menyalin dan memindahkan perintah di Linux?

  1. Perintah manajemen file Linux untuk membuat, menyalin, memindahkan, dan menghapus file

  2. Linux Hapus File dan Direktori

  3. 24 Contoh iostat, vmstat dan mpstat untuk Pemantauan Kinerja Linux

  1. Cara Menginstal dan Mengonfigurasi Monit di Linux untuk Pemantauan Proses

  2. Cara Menyalin / Memindahkan File dan Direktori di Linux dengan perintah "cp" dan "mv"

  3. Cara Audit untuk Modifikasi file dan Eksekusi File di Linux