Baru beli VPS pertama dan dapat email berisi IP address plus password root? Jangan langsung install aplikasi. Urutan yang benar dari nol itu penting: mayoritas VPS baru diserang bot dalam hitungan menit setelah online, mencoba password root default. Artikel ini adalah checklist yang kami pakai sendiri, urut dari menit pertama.
1. Login Pertama dan Update Sistem
SSH ke server kamu, lalu hal pertama yang wajib:
ssh root@IP_SERVER_KAMU
apt update && apt upgrade -y
Update bisa makan beberapa menit. Ini memastikan semua paket bawaan image provider sudah patch keamanan terbaru.
2. Buat User Kerja Non-Root
Kerja sehari-hari pakai root itu kebiasaan buruk: satu typo di command bisa hancurkan server, dan bot internet tahu username root itu ada.
adduser deploy
usermod -aG sudo deploy
# pindah ke user baru
su - deploy
3. Hardening SSH (Paling Penting di Seluruh Checklist)
Serangan brute force SSH itu konstan dan otomatis. Tiga perubahan ini menutup 95% risiko:
sudo sed -i 's/PermitRootLogin yes/PermitRootLogin no/' /etc/ssh/sshd_config
sudo sed -i 's/#PasswordAuthentication yes/PasswordAuthentication no/' /etc/ssh/sshd_config
sudo systemctl restart sshd
Syarat sebelum jalankan baris kedua: kamu harus sudah pakai SSH key. Kalau belum, buat dulu di komputer lokal kamu dengan ssh-keygen lalu salin pakai ssh-copy-id deploy@IP_SERVER. Tanpa itu, kamu bisa mengunci diri sendiri di luar.
Jangan tutup sesi SSH yang sedang jalan sebelum menguji login baru dari terminal kedua. Kalau sesi kedua masuk sukses, baru sesi lama aman ditutup.
4. Firewall: Tutup Semua, Buka yang Perlu
sudo apt install ufw -y
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status
Prinsipnya deny-by-default: semua port tertutup kecuali yang kamu buka eksplisit. Nanti kalau aplikasi kamu butuh port 80/443, buka saat itu juga dengan sudo ufw allow 80,443/tcp.
5. Fail2ban: Kurir Bot Brute Force
UFW menutup port, fail2ban memblokir IP yang mencurigakan sebelum sempat menebak password berkali-kali:
sudo apt install fail2ban -y
sudo systemctl enable --now fail2ban
sudo fail2ban-client status sshd
Default config sudah masuk akal (ban IP yang gagal login berulang). Cek statistiknya seminggu kemudian, kamu akan kaget lihat ratusan IP ke-ban.
6. Patch Otomatis: Supaya Server Kamu di-Patch Walau Kamu Lupa
sudo apt install unattended-upgrades -y
sudo dpkg-reconfigure --priority=low unattended-upgrades
Pilih "yes". Security patch penting akan terpasang otomatis tanpa kamu mikir.
7. Timezone, Swap, dan Finishing
# samakan jam server (penting untuk log dan cron)
sudo timedatectl set-timezone Asia/Jakarta
# swap 2GB buat VPS RAM kecil (1-2GB)
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
Swap mencegah server RAM 1GB langsung OOM ketika ada spike memory.
8. Deploy Aplikasi Pertama
Server sudah hardened. Sekarang baru deploy. Jalur termudah di 2026: pakai panel self-hosted seperti Coolify yang memberi kamu dashboard PaaS di atas VPS sendiri. Panduan lengkapnya ada di tutorial self-host Coolify di VPS Ubuntu.
Atau kalau mau jalur klasik: Docker + Nginx + Let's Encrypt dari nol, lalu SSL otomatis via Certbot.
Langkah yang paling sering dilupakan dan paling mahal akibatnya: backup otomatis. Pasang sejak hari pertama, bukan setelah kejadian.
Beli VPS-nya Dari Mana?
Untuk budget minimal, promo VPS RackNerd mulai $21.99/tahun cukup untuk checklist di atas plus satu aplikasi kecil. Untuk kebutuhan lebih besar atau lokasi Asia, program promo Alibaba Cloud layak dibandingkan.
FAQ
Apakah wajib matikan password login SSH? Sangat disarankan. Password bisa ditebak, SSH key tidak (dalam praktik). Semua panduan keamanan server modern menganggap ini standar minimum.
Berapa lama waktu yang dibutuhkan untuk semua checklist ini? 15 sampai 30 menit untuk pemula, termasuk setup SSH key.
Kalau aku salah config dan terkunci di luar server? Provider VPS umumnya punya konsol/VNC dari dashboard yang memungkinkan akses langsung tanpa SSH. Dari situ kamu bisa perbaiki config. Tapi lebih baik ikuti aturan "uji sesi baru sebelum tutup sesi lama".
Apakah checklist ini berlaku untuk semua provider VPS? Ya. Ubuntu 22.04/24.04 dan Debian 11/12 jalan persis seperti di atas. CentOS/Rocky pakai dnf dan firewalld, logika tetap sama.
💬 Komentar (0)
Belum ada komentar. Jadilah yang pertama! 💬