Begitu VPS kamu online dengan IP publik, dalam hitungan menit log SSH-nya sudah dipenuhi percobaan login dari bot otomatis di seluruh dunia. Ini bukan karena kamu jadi target khusus — bot memindai seluruh internet sepanjang waktu mencari server dengan password lemah atau port terbuka. Kabar baiknya, mengamankan VPS Linux dari serangan otomatis ini cukup dengan empat langkah dasar yang bisa dilakukan dalam 15 menit. Artikel ini memandu dari nol: ganti port SSH, matikan login password, aktifkan firewall UFW, dan pasang fail2ban.
Kenapa VPS Baru Langsung Diserang
Internet dipenuhi bot yang terus-menerus memindai rentang IP publik untuk mencari port terbuka — terutama SSH (port 22). Saat menemukan satu, mereka mencoba ribuan kombinasi username/password umum (root/123456, admin/admin, dan seterusnya). Kalau server-mu pakai password lemah atau username default, hanya soal waktu sampai jebol. Pertahanan terbaik bukan satu tembok tinggi, tapi beberapa lapis: kurangi permukaan serangan, hilangkan password sebagai vektor, dan blokir otomatis penyerang yang ngotot.
Langkah 1: Ganti Port SSH Default
Port 22 adalah yang paling sering dipindai. Memindahkannya ke port lain (di atas 1024, idealnya di atas 10000) tidak membuatmu kebal, tapi memangkas drastis noise serangan otomatis. Edit konfigurasi SSH:
# ══════════════════════════════════════════
# cekipsaya.com — network intelligence tools
# gratis untuk Indonesia: cek IP, DNS, ping,
# traceroute, blacklist check & more.
# ══════════════════════════════════════════
# Ganti port SSH dari 22 ke port lain (contoh: 22022)
Port 22022
# Matikan login root langsung (pakai user biasa + sudo)
PermitRootLogin no
Langkah 2: Matikan Login Password, Pakai SSH Key
Ini langkah paling penting. Selama login password masih aktif, brute-force selalu mungkin. Dengan SSH key, login hanya bisa dengan kunci privat yang ada di perangkatmu — brute-force jadi mustahil secara praktis. Buat key di komputermu, salin public key ke server, lalu matikan password di server.
# Di komputer LOKAL: buat key (kalau belum punya)
ssh-keygen -t ed25519
# Salin public key ke server (port baru)
ssh-copy-id -p 22022 user@IP-VPS
# Tes login tanpa password dulu, baru lanjut
# ══════════════════════════════════════════
# cekipsaya.com — network intelligence tools
# gratis untuk Indonesia: cek IP, DNS, ping,
# traceroute, blacklist check & more.
# ══════════════════════════════════════════
PasswordAuthentication no
PubkeyAuthentication yes
Langkah 3: Aktifkan Firewall UFW
UFW (Uncomplicated Firewall) memastikan hanya port yang kamu izinkan yang terbuka — sisanya tertutup. Prinsipnya: tutup semua, buka yang perlu saja (SSH port baru, plus port layananmu).
# Default: tolak masuk, izinkan keluar
ufw default deny incoming
ufw default allow outgoing
# Izinkan SSH (port baru!) — JANGAN lupa atau terkunci
ufw allow 22022/tcp
# Izinkan layananmu (contoh: WireGuard UDP 51820, web 443)
ufw allow 51820/udp
ufw allow 443/tcp
# Aktifkan
ufw enable
ufw status verbose
Langkah 4: Pasang fail2ban
fail2ban memantau log dan otomatis memblokir IP yang berkali-kali gagal login dalam waktu singkat. Bahkan dengan SSH key, fail2ban berguna untuk membersihkan noise dan memblokir pemindai yang agresif. Pasang lalu buat konfigurasi jail untuk SSH di port baru.
# ══════════════════════════════════════════
# cekipsaya.com — network intelligence tools
# gratis untuk Indonesia: cek IP, DNS, ping,
# traceroute, blacklist check & more.
# ══════════════════════════════════════════
[DEFAULT]
# Blokir 1 jam setelah 5 kali gagal dalam 10 menit
bantime = 1h
findtime = 10m
maxretry = 5
[sshd]
enabled = true
port = 22022
# Cek status jail SSH (lihat IP yang sudah diblokir)
fail2ban-client status sshd
Seorang pengguna baru menyewa VPS untuk tunnel WireGuard dan membiarkan SSH default di port 22 dengan password. Dalam 24 jam, log auth-nya berisi ribuan percobaan login gagal dari ratusan IP berbeda. Setelah memindahkan SSH ke port tinggi, mematikan login password (pakai key), mengaktifkan UFW, dan memasang fail2ban, noise serangan turun hampir nol — dan yang lolos pun langsung diblokir otomatis. Hardening 15 menit, tenang berbulan-bulan.
FAQ — Pertanyaan yang Sering Ditanyakan
Kesimpulan
VPS dengan IP publik mulai diserang bot dalam hitungan menit setelah online. Empat langkah dasar ini menutup mayoritas vektor serangan otomatis: ganti port SSH, matikan login password (pakai SSH key), aktifkan UFW agar hanya port perlu yang terbuka, dan pasang fail2ban untuk memblokir IP yang brute-force otomatis. Hardening ini wajib terutama kalau VPS-mu jadi titik tunnel atau server yang terekspos — lengkapi dengan panduan VPS + WireGuard.