Best Practice Keamanan Server Linux Hardening

Keamanan server Linux produksi wajib melalui proses hardening sistematis untuk menutup celah eksploitasi umum. Konfigurasi bawaan distro Linux sengaja dibuat ramah guna, bukan ramah keamanan. Fokus utama pengamanan terletak pada pengetatan autentikasi jarak jauh, pembatasan akses hak istimewa (privilege), dan penyaringan lalu lintas jaringan secara ketat.

1. Hardening Akses SSH (Secure Shell)

SSH adalah pintu gerbang utama yang paling sering diserang melalui teknik brute-force. Ubah port default dan matikan login password menggunakan kunci SSH (SSH Key).

# Edit file konfigurasi SSH
sudo nano /etc/ssh/sshd_config

# Ubah parameter berikut:
Port 2222
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
X11Forwarding no
MaxAuthTries 3

# Simpan dan restart layanan SSH
sudo systemctl restart sshd

2. Konfigurasi Firewall dengan UFW

Uncomplicated Firewall (UFW) menyederhanakan pengelolaan iptables. Prinsip utamanya adalah blokir seluruh lalu lintas masuk (incoming), lalu izinkan hanya port spesifik yang dibutuhkan publik.

# Reset dan setelan default UFW
sudo ufw default deny incoming
sudo ufw default allow outgoing

# Izinkan port SSH baru, HTTP, dan HTTPS
sudo ufw allow 2222/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

# Aktifkan firewall
sudo ufw enable

3. Pencegahan Brute-Force dengan Fail2ban

Fail2ban memindai file log sistem (seperti /var/log/auth.log) dan otomatis memblokir alamat IP yang menunjukkan aktivitas mencurigakan, misalnya percobaan login gagal berulang kali.

# Instalasi fail2ban
sudo apt update && sudo apt install fail2ban -y

# Buat salinan konfigurasi
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

# Edit jail.local untuk mengaktifkan penjagaan SSH
sudo nano /etc/fail2ban/jail.local
# Pastikan [sshd] diatur enabled = true

# Restart layanan fail2ban
sudo systemctl restart fail2ban

Matriks Parameter Keamanan Server Linux

Komponen Risiko Bawaan Tindakan Hardening Tingkat Urgensi
Port SSH Port 22 rentan automated bot scanner Ubah port & batasi IP whitelist Kritis
Autentikasi Login password mudah ditebak Gunakan SSH Key, matikan password Kritis
Root Access Akses penuh langsung via root berbahaya Set PermitRootLogin no, pakai sudo Tinggi
Firewall Semua port terbuka jika tidak diatur Aktivkan UFW, drop all by default Kritis
Update Sistem Celah keamanan lama (CVE) terbuka Automasi unattended-upgrades Tinggi

4. Manajemen Hak Istimewa (Sudoers)

Jangan pernah membagikan kredensial root kepada tim. Buat akun pengguna biasa dengan hak akses sudo terbatas untuk meminimalisir dampak human error.

# Buat user baru
sudo adduser adminbaru

# Tambahkan ke grup sudo
sudo usermod -aG sudo adminbaru

# Batasi akses sudo tanpa password jika diperlukan di /etc/sudoers.d/

5. Automasi Pembaruan Keamanan Sistem

Patch keamanan kernel dan pustaka sistem harus diterapkan secara berkala tanpa intervensi manual agar server tetap terlindungi dari kerentanan zero-day.

# Instal paket unattended-upgrades
sudo apt install unattended-upgrades -y

# Konfigurasi pembaruan otomatis
sudo dpkg-reconfigure -plow unattended-upgrades

Lakukan audit berkala menggunakanε·₯ε…· seperti Lynis untuk memindai kelemahan konfigurasi secara menyeluruh dan terstruktur.