Skip to main content

Securing TMP Folder on Linux

·2 mins

Mengamankan direktori /tmp dapat mengurangi risiko berbagai jenis serangan, seperti eksekusi trojan, malware, maupun eksploitasi umum lainnya. Dengan menerapkan opsi mount yang lebih ketat, penyerang akan lebih sulit mengeksekusi kode berbahaya (malicious code) secara langsung dari direktori /tmp.

Metode ini tidak mencegah pengguna mengunggah atau menyimpan file ke dalam direktori tersebut, tetapi membatasi eksekusi file serta membantu mengurangi risiko eksploitasi yang memanfaatkan mekanisme SUID dan berbagai teknik buffer overflow tertentu.

Membuat File Berukuran 1 GB
#

dd if=/dev/zero bs=1024 count=1024000 of=/usr/tmpDSK

Ukuran file dapat disesuaikan dengan kebutuhan dan kapasitas penyimpanan yang tersedia.

Memformat File dengan ext4
#

mkfs.ext4 /usr/tmpDSK

Mengubah Permission File
#

chmod 600 /usr/tmpDSK

Update Konfigurasi fstab
#

Edit file /etc/fstab dan tambahkan konfigurasi berikut:

/usr/tmpDSK    /var/tmp  ext4    loop,noexec,nosuid,rw                       0 0
tmpfs          /tmp      tmpfs   defaults,noatime,nosuid,noexec,mode=1777    0 0

Test Konfigurasi fstab
#

Pastikan konfigurasi fstab valid dan /tmp berhasil dimount dengan menjalankan:

mount -a

Kemudian verifikasi hasilnya menggunakan:

df -hT

Contoh output:

Filesystem               Type      Size  Used Avail Use% Mounted on
devtmpfs                 devtmpfs  954M     0  954M   0% /dev
tmpfs                    tmpfs     973M     0  973M   0% /dev/shm
tmpfs                    tmpfs     973M  8.6M  965M   1% /run
tmpfs                    tmpfs     973M     0  973M   0% /sys/fs/cgroup
/dev/mapper/vg_root-root xfs       7.0G  2.0G  5.1G  28% /
/dev/loop0               ext4      966M   64K  900M   1% /var/tmp
tmpfs                    tmpfs     7.7G  476K  7.7G   1% /tmp
/dev/nvme0n1p1           xfs      1014M  215M  800M  22% /boot
tmpfs                    tmpfs     195M     0  195M   0% /run/user/0

Pastikan /var/tmp telah menggunakan filesystem loop device (/dev/loop0) atau perangkat yang sesuai dengan konfigurasi yang diterapkan.

Reboot Server
#

Setelah seluruh konfigurasi selesai dan telah diverifikasi, lakukan reboot server agar seluruh file sementara, socket, dan session file dapat dibuat ulang pada direktori /tmp yang telah diamankan.

reboot

Related