Press ESC to close

Checklist Hardening Linux Server untuk Produksi

WhatsAppTelegramFacebookXThreadsCopy Link

Anda baru saja menyelesaikan instalasi server Linux untuk proyek penting. Semuanya berjalan lancar—hingga tiba-tiba server diretas, log dihapus, dan sistem tidak bisa diakses lagi. 😨

Masalah seperti ini sering terjadi bukan karena sistem Linux lemah, tapi karena tidak dilakukan hardening sebelum digunakan di lingkungan produksi. Banyak administrator pemula merasa sudah aman hanya karena memakai Linux, padahal kenyataannya konfigurasi default belum tentu cukup aman.

Jika Anda merasa bingung harus mulai dari mana untuk mengamankan server, tenang saja. Artikel ini akan menjadi panduan lengkap Anda untuk melakukan hardening Linux server. Anda akan mendapatkan checklist praktis langkah demi langkah, lengkap dengan penjelasan singkat dan tips agar tidak salah konfigurasi.

Setelah membaca sampai akhir, Anda akan tahu:

  • Apa saja langkah dasar Linux server hardening yang wajib dilakukan.
  • Bagaimana cara memperkuat keamanan login, jaringan, dan sistem file.
  • Tools bawaan Linux yang bisa Anda manfaatkan untuk perlindungan tambahan.

Apa Itu Hardening Server?

Server hardening adalah proses memperkuat sistem agar tidak mudah diserang. Ibaratnya seperti menutup semua celah pintu dan jendela sebelum Anda meninggalkan rumah. Tujuannya adalah mengurangi risiko, menonaktifkan fitur yang tidak perlu, dan memastikan hanya pengguna sah yang bisa mengakses sistem.


Checklist Hardening Linux Server

Berikut langkah-langkah utama yang bisa Anda ikuti secara berurutan:

1. Perbarui Sistem Secara Berkala

Langkah pertama dan paling dasar: pastikan semua paket selalu diperbarui.

sudo dnf update -y      # untuk RHEL/CentOS/Rocky
sudo apt update && sudo apt upgrade -y   # untuk Debian/Ubuntu

Gunakan cron job atau systemd timer agar update berjalan otomatis.

Tips: Gunakan repositori resmi dan hindari paket dari sumber yang tidak jelas.


2. Nonaktifkan Akun Root untuk SSH

Jangan izinkan login langsung sebagai root. Ini celah keamanan besar.
Edit file konfigurasi SSH:

sudo nano /etc/ssh/sshd_config

Ubah baris ini:

PermitRootLogin no

Simpan, lalu restart layanan SSH:

sudo systemctl restart sshd

Gunakan akun biasa dengan hak sudo untuk keamanan lebih baik.


3. Gunakan Autentikasi SSH Key

Hindari password dan gunakan SSH key authentication.

ssh-keygen -t ed25519
ssh-copy-id user@server

Setelah berhasil, nonaktifkan login menggunakan password di /etc/ssh/sshd_config:

PasswordAuthentication no

4. Atur Firewall

Gunakan firewalld atau ufw untuk membatasi akses hanya pada port yang diperlukan.

Contoh menggunakan firewalld:

sudo systemctl enable firewalld --now
sudo firewall-cmd --add-service=ssh --permanent
sudo firewall-cmd --add-service=http --permanent
sudo firewall-cmd --reload

Pastikan hanya port penting seperti 22 (SSH), 80 (HTTP), dan 443 (HTTPS) yang terbuka.


5. Aktifkan SELinux atau AppArmor

Jangan dimatikan! Gunakan SELinux (Red Hat-based) atau AppArmor (Debian-based) untuk membatasi akses antar proses.
Cek status SELinux:

sestatus

Jika masih Permissive, ubah ke Enforcing di /etc/selinux/config:

SELINUX=enforcing

Reboot agar aktif.


6. Amankan Layanan dan Port

Matikan semua layanan yang tidak digunakan agar tidak menjadi celah serangan:

sudo systemctl disable bluetooth avahi-daemon cups

Lihat daftar port terbuka dengan:

sudo ss -tuln

Pastikan hanya port yang diperlukan yang aktif.


7. Gunakan Fail2Ban untuk Mencegah Brute Force

Instal dan aktifkan Fail2Ban agar server otomatis memblokir IP yang mencoba login berulang kali:

sudo dnf install fail2ban -y
sudo systemctl enable fail2ban --now

File konfigurasi utama ada di /etc/fail2ban/jail.local.


8. Konfigurasi Log dan Audit

Pastikan semua aktivitas terekam dengan baik:

sudo dnf install audit -y
sudo systemctl enable auditd --now

Untuk mengecek log keamanan:

sudo ausearch -m avc

Anda juga bisa menggunakan journalctl untuk meninjau log sistem secara real-time.


9. Batasi Hak Akses File dan Direktori

Gunakan prinsip least privilege — hanya berikan izin sesuai kebutuhan.

chmod 600 ~/.ssh/authorized_keys
chmod 700 ~/.ssh

Gunakan ls -l untuk memeriksa kepemilikan file penting seperti /etc/shadow dan /etc/passwd.


10. Gunakan Monitoring dan Alert System

Gunakan tools seperti:

  • Lynis untuk audit keamanan.
  • Nagios / Zabbix / Grafana Loki untuk pemantauan real-time.

Contoh instalasi Lynis:

sudo dnf install lynis -y
sudo lynis audit system

Laporan Lynis akan menunjukkan celah keamanan dan rekomendasi perbaikannya.


Anda sudah memiliki checklist lengkap hardening Linux server untuk produksi. Dengan mengikuti langkah-langkah di atas, Anda bisa meminimalkan risiko serangan, menjaga kestabilan sistem, dan memastikan server siap digunakan di lingkungan nyata.

Jika Anda ingin melangkah lebih jauh, baca juga artikel kami berikutnya: “Panduan Konfigurasi Fail2Ban di Rocky Linux untuk Mencegah Serangan Brute Force.

WhatsAppTelegramFacebookXThreadsCopy Link