Cara Amankan SSH dari Brute Force di VPS Ubuntu
Kenapa SSH Rentan Brute Force?
SSH berjalan di port 22 secara default dan menjadi target bot otomatis yang mencoba ribuan kombinasi password. Jika tidak diamankan dengan benar, server dapat diakses oleh pihak tidak bertanggung jawab.
2. Update Sistem
sudo apt update && sudo apt upgrade -y
3. Nonaktifkan Login Root via SSH
sudo nano /etc/ssh/sshd_config
PermitRootLogin no
sudo systemctl restart ssh
4. Gunakan SSH Key (Wajib untuk Production)
ssh-keygen -t ed25519
ssh-copy-id user@IP_VPS
PasswordAuthentication no
sudo systemctl restart ssh
5. Ubah Port Default SSH (Opsional)
Port 2222
sudo ufw allow 2222
sudo systemctl restart ssh
6. Aktifkan Firewall (UFW)
sudo ufw allow OpenSSH
sudo ufw enable
sudo ufw status
7. Install & Konfigurasi Fail2Ban
sudo apt install fail2ban -y
sudo nano /etc/fail2ban/jail.local
[sshd]
enabled = true
port = ssh
logpath = %(sshd_log)s
maxretry = 5
bantime = 3600
sudo systemctl restart fail2ban
sudo fail2ban-client status sshd
8. Batasi Percobaan Login SSH
MaxAuthTries 3
sudo systemctl restart ssh
9. Monitoring Aktivitas SSH
sudo tail -f /var/log/auth.log
10. Best Practice Production
- Gunakan SSH key saja (disable password login)
- Nonaktifkan root login
- Gunakan port non-defaulf
- Install Fail2Ban
- Aktifkan firewall
- Batasi akses IP jika memungkinkan
11. Kesimpulan
Mengamankan SSH adalah langkah awal dalam hardening VPS. Kombinasi SSH key, nonaktifkan root login, firewall, dan Fail2Ban sudah cukup kuat untuk mencegah brute force.