{"type":"word","content":"# PANDUAN LENGKAP MENGAMANKAN VPS DAN KONFIGURASI SSH KEY\n\n## 1. Tindakan Darurat Saat VPS Diserang\nJika VPS Anda terindikasi sedang mengalami serangan aktif, segera lakukan langkah-langkah penyelamatan berikut:\n* **Identifikasi Koneksi Aktif**: Gunakan perintah `ss -tulnp` atau `netstat -tulnp` untuk melihat port aktif dan IP mencurigakan yang terhubung.\n* **Blokir IP Penyerang**: Gunakan firewall bawaan seperti UFW (Uncomplicated Firewall) untuk memblokir IP penyerang secara instan:\n  ```bash\n  sudo ufw deny from [IP_PENYERANG] to any\n  ```\n* **Periksa Log Autentikasi**: Analisis aktivitas mencurigakan pada log sistem:\n  * Ubuntu\/Debian: `\/var\/log\/auth.log`\n  * CentOS\/RHEL: `\/var\/log\/secure`\n* **Putuskan Sesi Mencurigakan**: Gunakan perintah `w` untuk melihat pengguna aktif, lalu keluarkan sesi mencurigakan dengan `pkill -kill -t [PTS_NAME]`.\n\n---\n\n## 2. Perbandingan Keamanan: Autentikasi Password vs SSH Key\n\n| Parameter | Autentikasi Password | Autentikasi SSH Key |\n| :--- | :--- | :--- |\n| **Metode Keamanan** | Menggunakan string karakter (rentan ditebak). | Menggunakan pasangan kunci kriptografi asimetris. |\n| **Ketahanan Brute-Force** | Sangat rentan jika password lemah atau tanpa limitasi login. | Kebal terhadap serangan brute-force konvensional. |\n| **Kemudahan Penggunaan** | Harus mengetik password setiap kali login. | Login otomatis tanpa password (menggunakan passphrase opsional). |\n| **Manajemen Akses** | Sulit dicabut secara individual jika digunakan bersama. | Sangat mudah dicabut dengan menghapus public key terkait. |\n\n---\n\n## 3. Langkah-Langkah Membuat dan Memasang SSH Key\n\n### Langkah 1: Membuat SSH Key Pair di Komputer Lokal\nBuka Terminal (Linux\/macOS) atau PowerShell\/Git Bash (Windows), lalu jalankan perintah berikut:\n```bash\nssh-keygen -t ed25519 -C \"vps-key-keamanan\"\n```\n*Catatan: Algoritma Ed25519 sangat direkomendasikan karena lebih aman dan memiliki performa lebih cepat dibandingkan RSA.*\n\nSaat muncul perintah penyimpanan, tekan **Enter** untuk menggunakan lokasi default. Anda juga dapat memasukkan *passphrase* (password tambahan untuk mengamankan file private key Anda).\n\n### Langkah 2: Menyalin Public Key ke VPS\n**Metode Otomatis (Linux\/macOS):**\n```bash\nssh-copy-id -i ~\/.ssh\/id_ed25519.pub username@IP_ADDRESS_VPS\n```\n\n**Metode Manual (Windows\/PowerShell):**\n1. Tampilkan isi public key lokal Anda:\n   ```bash\n   cat ~\/.ssh\/id_ed25519.pub\n   ```\n2. Salin seluruh teks yang muncul.\n3. Masuk ke VPS Anda, lalu buat direktori `.ssh` dan file `authorized_keys`:\n   ```bash\n   mkdir -p ~\/.ssh\n   chmod 700 ~\/.ssh\n   nano ~\/.ssh\/authorized_keys\n   ```\n4. Tempel (paste) teks public key di dalam file tersebut, simpan (Ctrl+O, Enter, Ctrl+X).\n5. Atur hak akses file agar aman:\n   ```bash\n   chmod 600 ~\/.ssh\/authorized_keys\n   ```\n\n---\n\n## 4. Pengerasan (Hardening) SSH Daemon di VPS\nSetelah berhasil login menggunakan SSH Key, Anda **WAJIB** mematikan autentikasi password biasa agar peretas tidak bisa mencoba menebak password Anda lagi.\n\n1. Buka file konfigurasi SSH di VPS:\n   ```bash\n   sudo nano \/etc\/ssh\/sshd_config\n   ```\n2. Cari dan ubah parameter berikut menjadi seperti di bawah ini:\n   ```text\n   PasswordAuthentication no\n   PubkeyAuthentication yes\n   PermitRootLogin prohibit-password\n   Port 2222 (Ubah port default 22 ke port kustom pilihan Anda)\n   ```\n3. Simpan file tersebut, lalu restart layanan SSH untuk menerapkan perubahan:\n   * **Ubuntu\/Debian:** `sudo systemctl restart ssh`\n   * **CentOS\/RHEL:** `sudo systemctl restart sshd`\n\n*PENTING: Jangan tutup sesi terminal aktif Anda sebelum mencoba membuka koneksi terminal baru menggunakan SSH Key untuk memastikan konfigurasi berjalan dengan benar.*"}