Password SSH bisa ditebak. Kunci tidak. Beralih ke login berbasis kunci di VPS Anda adalah peningkatan keamanan tunggal terbesar yang bisa Anda lakukan, dan hanya butuh sekitar lima menit.
Cara kerja kunci SSH
Anda membuat sepasang file. Kunci privat tetap di komputer Anda dan tidak pernah dibagikan. Kunci publik dipasang di server. Saat Anda terhubung, server menantang komputer Anda untuk membuktikan bahwa ia memegang kunci privat yang cocok, tanpa kunci itu pernah melewati jaringan.
1. Buat pasangan kunci
ssh-keygen -t ed25519 -C "me@laptop"
Kunci Ed25519 pendek, cepat, dan modern. Pilih passphrase saat diminta, agar laptop yang dicuri tidak berarti server yang dicuri. Di Windows 10 dan 11 perintah yang sama berfungsi di PowerShell.
2. Salin kunci publik ke server
ssh-copy-id user@your.server.ip
Tanpa ssh-copy-id, tambahkan isi ~/.ssh/id_ed25519.pub ke ~/.ssh/authorized_keys di server, lalu jalankan chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys.
3. Uji sebelum mematikan password
Buka terminal kedua dan login dengan kunci. Biarkan sesi pertama tetap terbuka sampai ini berhasil, agar kesalahan tidak mengunci Anda di luar.
4. Nonaktifkan login dengan password
sudo nano /etc/ssh/sshd_config.d/99-hardening.conf
PasswordAuthentication no
PermitRootLogin prohibit-password
PubkeyAuthentication yes
sudo sshd -t && sudo systemctl reload ssh
Pemeriksaan sshd -t menangkap salah ketik sebelum merusak akses Anda. Di beberapa sistem layanannya bernama sshd, bukan ssh.
5. Konfigurasi klien yang rapi
# ~/.ssh/config
Host myvps
HostName your.server.ip
User deploy
IdentityFile ~/.ssh/id_ed25519
Sekarang cukup ketik ssh myvps.
Praktik yang baik
- Gunakan kunci terpisah untuk setiap perangkat, agar Anda bisa mencabut satu tanpa menyentuh yang lain.
- Gunakan
ssh-agentagar Anda memasukkan passphrase sekali per sesi. - Hapus kunci dari
authorized_keyssaat perangkat hilang atau karyawan berhenti. - Tambahkan fail2ban untuk mengurangi gangguan log, seperti di daftar periksa pengamanan 15 menit kami.