security 10 menit baca Diperbarui July 17, 2026

Mengamankan VPS baru

Jawaban

Mengamankan VPS baru memakan waktu sekitar dua puluh menit: nonaktifkan login root dengan kata sandi dan SSH, aktifkan autentikasi khusus kunci, konfigurasi nftables untuk menolak lalu lintas masuk secara default, aktifkan peningkatan keamanan tanpa pengawasan, dan pasang fail2ban. Lima langkah itu menghilangkan sebagian besar kompromi dunia nyata.

Apa yang sebenarnya mengompromikan server

Bukan zero-day. Dalam praktiknya: brute force kata sandi SSH terhadap kredensial lemah, layanan yang tidak ditambal dibiarkan berjalan berbulan-bulan, panel admin yang terekspos dengan kata sandi default, dan kerentanan aplikasi pada apa pun yang dipasang operator. Daftarnya membosankan dan tidak berubah dalam lima belas tahun.

Daftar di bawah ini diurutkan berdasarkan berapa banyak risiko yang dihilangkan setiap langkah per menit yang dihabiskan. Lakukan secara berurutan dan berhenti saat kehabisan kesabaran — Anda masih akan menghilangkan sebagian besar risiko.

Langkah 1 — Kunci SSH saja

Satu perubahan ini menghilangkan serangan paling umum sepenuhnya. Buat kunci Ed25519, salin bagian publik ke server, lalu edit /etc/ssh/sshd_config untuk mengatur PasswordAuthentication no, PermitRootLogin prohibit-password, dan KbdInteractiveAuthentication no.

Uji kunci di terminal kedua sebelum menutup terminal pertama. Terkunci sendiri memang memalukan, dan pada mesin dengan akses konsol, masih bisa dipulihkan sepenuhnya — tetapi tetap lakukan dengan urutan yang benar.

Langkah 2 — firewall dengan kebijakan default-deny

Gunakan nftables pada Debian dan Ubuntu modern, atau firewalld pada turunan RHEL. Default-deny untuk lalu lintas masuk, izinkan koneksi yang sudah ada dan terkait, izinkan port SSH Anda, izinkan apa pun yang benar-benar dibutuhkan oleh workload, dan tidak ada yang lain.

Disiplin yang penting adalah bahwa "tidak ada yang lain" itulah intinya. Firewall dengan aturan permisif yang ditambahkan saat debugging dan tidak pernah dihapus adalah firewall yang tidak melakukan apa-apa.

  • Kebijakan default: tolak lalu lintas masuk, terima lalu lintas keluar
  • Terima koneksi yang sudah ada dan terkait
  • Terima loopback
  • Terima port SSH Anda, idealnya dengan pembatasan kecepatan
  • Terima port workload, yang didaftarkan secara eksplisit
  • Terima ICMP echo — jangan merusak path MTU discovery

Langkah 3 — pembaruan keamanan otomatis

Gunakan unattended-upgrades pada Debian dan Ubuntu, atau dnf-automatic pada turunan RHEL, yang dikonfigurasi untuk pembaruan keamanan saja. Sebagian besar kompromi mengeksploitasi kerentanan yang sudah ditambal berbulan-bulan sebelumnya.

Aktifkan reboot otomatis pada jendela perawatan jika workload Anda mentolerirnya. Pembaruan kernel tidak berlaku sampai mesin reboot, dan server dengan uptime 400 hari serta sebelas CVE kernel yang belum ditambal bukanlah lencana kehormatan.

Langkah 4 — fail2ban, dan catatan tentang nilai aslinya

Dengan autentikasi kata sandi yang sudah dinonaktifkan, fail2ban hanya menghentikan sedikit kompromi yang sebenarnya. Yang dilakukannya adalah mengurangi kebisingan log secara dramatis, dan ini penting karena log yang dipenuhi ribuan percobaan yang gagal adalah log yang tidak dibaca siapa pun, dan log yang tidak dibaca adalah cara intrusi nyata tidak terdeteksi selama berminggu-minggu.

Jail sshd bawaan sudah cukup. Tambahkan jail untuk hal lain yang Anda ekspos ke internet.

Langkah 5 — kurangi permukaan serangan

Jalankan ss -tlnp dan lihat apa saja yang mendengarkan. Pada instalasi bawaan, ini biasanya mencakup layanan yang tidak Anda ketahui berjalan dan tidak Anda perlukan. Hapus layanan tersebut daripada memblokirnya dengan firewall — perangkat lunak yang tidak terpasang tidak memiliki kerentanan.

Ikat layanan yang hanya perlu akses lokal ke 127.0.0.1, bukan ke 0.0.0.0. Database yang mendengarkan di semua antarmuka di belakang firewall hanyalah satu kesalahan konfigurasi dari menjadi publik.

Apa yang bisa dilewati

Mengubah port SSH hanya mengurangi kebisingan log dan tidak menghentikan serangan terarah sama sekali. Lakukan jika Anda suka, tetapi jangan anggap itu sebagai keamanan. Port knocking menambah kerapuhan untuk keuntungan yang kecil. Sistem deteksi intrusi menghasilkan alert yang tidak ditindaklanjuti siapa pun pada satu server.

Jika Anda ingin satu langkah bermakna lagi setelah lima langkah di atas, itu adalah backup off-site terenkripsi di yurisdiksi berbeda, yang diuji dengan benar-benar melakukan restorasi. Kemampuan pemulihan lebih berharga daripada lapisan pencegahan tambahan.

FAQ

Pertanyaan yang sering diajukan

01 Apakah mengubah port SSH sepadan?

Untuk kebisingan log, ya. Untuk keamanan, tidak — ini menghentikan pemindai oportunistik dan nol serangan terarah. Lakukan jika Anda menyukai log yang lebih tenang, tetapi jangan anggap itu sebagai kontrol.

02 Apakah saya perlu fail2ban jika menggunakan kunci SSH?

Untuk keamanan langsung, hampir tidak. Untuk kebersihan log, ya — ribuan percobaan gagal membuat log tidak terbaca, dan log yang tidak terbaca adalah cara intrusi nyata tidak terdeteksi.

03 Apakah saya harus mengaktifkan reboot otomatis?

Jika workload mentolerirnya, ya, pada jendela perawatan. Patch kernel tidak berlaku sampai reboot. Uptime yang lama dengan CVE kernel yang belum ditambal adalah kewajiban, bukan pencapaian.

Terkait

Penerapan 55 detik

Pilih yurisdiksi. Bayar dengan kripto. Berjalan dalam satu menit.

Tanpa akun untuk dibuat, tanpa email untuk dikonfirmasi, tanpa kartu untuk dimasukkan.