Mengelola server Virtual Private Server (VPS) memberikan fleksibilitas dan kontrol penuh bagi pengguna, terutama para developer dan pemilik situs web. Namun, dengan kontrol besar datang pula tanggung jawab besar, terutama dalam hal keamanan. Tanpa konfigurasi yang benar, VPS bisa menjadi sasaran empuk bagi serangan siber, malware, atau peretas.
Artikel ini menyajikan panduan keamanan dasar yang penting untuk dilakukan segera setelah Anda mendapatkan akses ke VPS baru. Langkah-langkah ini akan membantu melindungi data, menjaga integritas sistem, dan mencegah penyusupan.
1. Ubah Port SSH Default
Secara default, SSH (Secure Shell) berjalan di port 22. Karena ini umum diketahui, banyak serangan brute force secara otomatis menargetkan port ini. Salah satu langkah sederhana namun efektif adalah mengganti port SSH default ke nomor port lain yang tidak biasa digunakan.
Contoh:
Ubah port 22 menjadi 2222 atau port lain antara 1024-65535.
sudo nano /etc/ssh/sshd_config
Temukan baris Port 22 dan ubah ke port pilihan Anda, lalu restart SSH:
sudo systemctl restart sshd
2. Gunakan Autentikasi Kunci SSH
Daripada menggunakan login dengan password, sebaiknya gunakan autentikasi berbasis kunci SSH. Ini jauh lebih aman karena tidak bisa ditebak seperti password biasa.
Langkah-langkah:
- Buat pasangan kunci di komputer lokal:
ssh-keygen
- Salin kunci publik ke VPS:
ssh-copy-id user@ip-server
Setelah itu, Anda bisa menonaktifkan login menggunakan password di file sshd_config:
PasswordAuthentication no
3. Nonaktifkan Root Login
Akses langsung ke akun root sangat berisiko. Sebaiknya nonaktifkan login root dan gunakan akun pengguna biasa dengan akses sudo.
PermitRootLogin no
Gunakan akun non-root, lalu gunakan sudo saat butuh akses administratif.
4. Instal Firewall
Firewall adalah lapisan pertahanan penting untuk mengontrol lalu lintas jaringan masuk dan keluar. Anda bisa menggunakan UFW (Uncomplicated Firewall) untuk konfigurasi sederhana.
Contoh:
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp # Ganti dengan port SSH Anda
sudo ufw allow http
sudo ufw allow https
sudo ufw enable
5. Perbarui Sistem Secara Rutin
Salah satu penyebab utama kerentanan keamanan adalah software yang sudah usang. Selalu lakukan pembaruan sistem secara berkala.
sudo apt update && sudo apt upgrade -y
Anda juga bisa mengaktifkan pembaruan otomatis menggunakan unattended-upgrades di sistem berbasis Debian/Ubuntu.
6. Instal Fail2Ban
Fail2Ban adalah tool yang sangat berguna untuk mencegah serangan brute-force. Ia akan secara otomatis memblokir IP yang mencoba login SSH berkali-kali secara gagal.
Instalasi:
sudo apt install fail2ban
Setelah terinstal, Fail2Ban akan langsung bekerja dengan konfigurasi dasar. Anda bisa menyesuaikan aturan di /etc/fail2ban/jail.local.
7. Monitor Aktivitas Login
Pantau aktivitas login untuk mendeteksi jika ada percobaan akses yang mencurigakan. Anda bisa memeriksa file log:
cat /var/log/auth.log
Untuk monitoring yang lebih aktif, Anda dapat menginstal Logwatch atau OSSEC untuk mendapatkan laporan rutin.
8. Backup Secara Berkala
Keamanan bukan hanya soal mencegah serangan, tapi juga siap menghadapi kegagalan. Pastikan Anda memiliki sistem backup yang berjalan secara otomatis dan teratur, baik ke penyimpanan lokal maupun cloud.
Gunakan alat seperti:
- rsync
- borgbackup
- Scheduled cron jobs
Backup yang baik akan memudahkan Anda memulihkan server jika terjadi insiden seperti peretasan, korupsi data, atau kesalahan konfigurasi.
9. Gunakan HTTPS dan Sertifikat SSL
Jika Anda menjalankan aplikasi berbasis web, pastikan semua koneksi terenkripsi menggunakan HTTPS. Gunakan Let’s Encrypt untuk mendapatkan sertifikat SSL gratis dan otomatis diperbarui.
Contoh menggunakan Certbot:
sudo apt install certbot python3-certbot-nginx
sudo certbot –nginx
10. Hapus Layanan yang Tidak Digunakan
Periksa dan nonaktifkan semua layanan yang tidak diperlukan di server Anda. Setiap layanan yang berjalan berpotensi menjadi celah keamanan.
Gunakan perintah berikut untuk melihat layanan aktif:
sudo ss -tuln
sudo systemctl list-units –type=service
Kesimpulan
Mengamankan VPS tidak membutuhkan keahlian tingkat tinggi, namun membutuhkan kesadaran dan konsistensi. Dengan menerapkan langkah-langkah keamanan dasar seperti mengubah port SSH, menggunakan kunci autentikasi, mengaktifkan firewall, dan menjaga sistem tetap diperbarui, Anda sudah mengambil langkah besar untuk melindungi server dari berbagai ancaman.
Keamanan adalah proses yang berkelanjutan. Selalu evaluasi dan tingkatkan pengamanan sesuai dengan perkembangan teknologi dan ancaman yang muncul.