Skip to main content
  1. Posts/

How to Enable Directory Watching in CSF

·2 mins·
csf csf
Table of Contents

Directory Watching di CSF memungkinkan lfd memeriksa direktori /tmp dan /dev/shm untuk mencari file-file yang mencurigakan, seperti skrip eksploitasi.

Jika ditemukan file yang mencurigakan, sistem akan mengirimkan email peringatan menggunakan template yang ada di /usr/local/csf/tpl/filealert.txt. Anda juga dapat memantau aktivitas ini melalui log file yang tersimpan di /var/log/lfd.log.

Enable Dirwatch
#

Untuk mengaktifkan Directory Watching, Anda perlu mengedit file konfigurasi csf yang tersimpan di /etc/csf/csf.conf kemudian edit seperti berikut.

LF_DIRWATCH = "300"
LF_INTEGRITY = "3600"
LF_DIRWATCH_FILE = "30"

Untuk menambahkan direktori lain yang ingin dipantau, Anda dapat mengedit file csf.dirwatch.

/home/*/public_html

Atau untuk menghindari false positive, Anda bisa menentukan direktori yang ingin diabaikan oleh dirwatch dengan mengedit file csf.fignore.

/home/Maildir

Selanjutnya restart CSF dan LFD untuk menerapkan perubahan.

csf -ra

Testing
#

Untuk pengetesan, Anda dapat membuat file dengan ektensi .pl,.py,.cgi,.sh di path /dev/shm atau /tmp. Setelah itu, ubah izin aksesnya ke level user.

touch /dev/shm/beta.pl
chown web1:web1 /dev/shm/beta.pl
File dengan izin akses root akan diabaikan oleh dirwatch.

Tunggu beberapa saat, maka alert akan muncul lalu dikirimkan melalui email dan tercatat juga di log file seperti berikut.

Jul 15 13:41:40 p2 lfd[5047]: *Suspicious File* /dev/shm/beta.pl [web1:web1 (1000:1000)] - Script, file extension

Pengetesan lain bisa dengan cara copy file binary linux seperti contoh berikut.

cp /usr/bin/env /dev/shm/env
chown web1:web1 /dev/shm/env

Maka dari log file akan tercatat seperti berikut.

Jul 15 13:47:02 p2 lfd[5285]: *Suspicious File* /dev/shm/env [web1:web1 (1000:1000)] - Linux Binary

Custom Log
#

Anda dapat mengkustom log file untuk memantau direktori yang telah Anda tentukan sebelumnya, misalnya direktori /home/*/public_html.

Edit file /etc/csf/lfd.pl. Backup file terlebih dahulu jika diperlukan.

cp -p /etc/csf/lfd.pl /etc/csf/lfd.pl.ori
nano /etc/csf/lfd.pl

Kemudian tambahkan baris berikut.

if ($dirwatchfile{$file} ne "1") {
    if ($md5sum ne $dirwatchfile{$file}) {
        $0 = "lfd - (child) suspicious file alert for $file";
        logfile("Directory *File Watching* has detected a change in $file");

        # Simpan $output ke file tertentu
        my $output_file = '/var/log/dirwatch.log';  # Ganti dengan nama file yang diinginkan
        open(my $fh, '>>', $output_file) or die "Tidak bisa membuka file '$output_file': $!";
        print $fh "Directory *File Watching* has detected a change in $output\n";
        close($fh);

        $dirwatchfile{$file} = $md5sum;
    }
}

Simpan file dan restart csf+lfd untuk menerapkan perubahan.

csf -ra

Related

Install dan Konfigurasi CSF di cPanel
·3 mins
csf cpanel csf
Setting Country Allow Port CSF
·1 min
csf csf
Configuring Perl CPAN Mirror List
·2 mins
perl perl
Blocking URI paths using ModSecurity
·2 mins
modsec modsec apache
Cara Mengedit DNS Zone di cPanel
·2 mins
cpanel cpanel
Implementing Firewall for VMs with IPtables
·3 mins
iptables linux iptables kvm libvirt