Cara Mengunggah Kunci Publik SSH ke VPS yang Sudah Ada
AlexHost menggunakan kunci SSH adalah salah satu cara yang paling aman dan efisien untuk menangani autentikasi. Jika Anda memiliki VPS yang sudah ada dan ingin beralih menggunakan kunci SSH (atau menambahkan kunci baru), ini adalah proses langsung yang meningkatkan keamanan dengan mengizinkan login tanpa kata sandi. Dalam panduan ini, kami akan memandu Anda tentang cara mengunggah kunci publik SSH ke VPS yang sudah ada, memastikan bahwa login di masa mendatang aman dan sederhana.
Mengapa Menggunakan Kunci SSH?
Kunci SSH banyak digunakan untuk mengamankan akses ke server jarak jauh. Kunci SSH menawarkan beberapa keunggulan dibandingkan kata sandi tradisional:
- Keamanan yang lebih kuat: Kunci SSH menggunakan autentikasi kriptografi, yang secara signifikan lebih sulit dibobol daripada kata sandi yang kuat sekalipun.
- Login Tanpa Kata Sandi: Setelah disiapkan, kunci SSH memungkinkan Anda untuk masuk ke server tanpa mengetikkan kata sandi.
- Perlindungan Terhadap Serangan Brute Force: Dengan meniadakan kata sandi, kunci SSH mencegah serangan brute force yang ditujukan untuk menebak kredensial login.
Prasyarat
Sebelum memulai, Anda perlu:
- Akses ke VPS yang ada: Ini berarti Anda saat ini dapat masuk ke VPS menggunakan SSH, kemungkinan besar dengan kata sandi.
- Pasangan kunci SSH: Jika Anda tidak memilikinya, kami akan membahas cara membuatnya.
- Pengetahuan dasar tentang perintah SSH: Diperlukan pengetahuan tentang antarmuka baris perintah (CLI).
Langkah 1: Buatlah Pasangan Kunci SSH (Jika Anda Belum Memilikinya)
Jika Anda belum memiliki pasangan kunci SSH pada mesin lokal, Anda dapat membuatnya. Inilah caranya:
Buka terminal pada komputer lokal Anda (macOS atau Linux) dan jalankan perintah berikut:
Perintah ini akan membuat pasangan kunci enkripsi RSA 4096-bit. Selama proses tersebut, Anda akan ditanya di mana menyimpan kunci:
- Tekan Enter untuk menyimpan kunci ke lokasi default(~/.ssh/id_rsa).
- Secara opsional, tambahkan kata sandi untuk lapisan keamanan ekstra (disarankan), atau tekan Enter untuk melewati langkah ini.
Proses ini menghasilkan dua berkas:
- id_rsa: Kunci pribadi Anda (jaga agar tetap aman dan jangan pernah membagikannya).
- id_rsa.pub: Kunci publik Anda (ini adalah kunci yang akan Anda unggah ke server).
Selanjutnya, tampilkan kunci publik agar Anda dapat menyalinnya:
ssh root@your_vps_ip
Salin hasilnya (kunci publik Anda), karena Anda akan membutuhkannya pada langkah berikutnya.
Langkah 2: Masuk ke VPS Anda
Untuk menambahkan kunci publik SSH baru Anda ke mesin virtual, Anda harus masuk ke mesin virtual menggunakan metode saat ini (baik dengan kata sandi atau kunci yang sudah ada). Buka terminal Anda dan jalankan:
Ganti your_vps_ip dengan alamat IP aktual VPS Anda. Jika Anda masuk dengan akun pengguna yang berbeda (bukan root), ganti root dengan nama pengguna yang sesuai.
Langkah 3: Buat direktori .ssh (Jika Belum Ada)
Setelah masuk, pastikan direktori.ssh sudah ada untuk akun pengguna yang Anda gunakan. Jika tidak ada, buatlah dengan perintah berikut:
Perintah ini membuat direktori .ssh dan menetapkan izin yang benar sehingga hanya pengguna saat ini yang dapat mengaksesnya.
Langkah 4: Tambahkan Kunci Publik ke berkas authorized_keys
Sekarang setelah Anda memiliki direktori .ssh, Anda perlu mengunggah kunci publik SSH Anda ke VPS dengan menambahkannya ke file authorized_keys. File ini berisi kunci publik yang diizinkan untuk mengautentikasi terhadap server.
- Buka berkas authorized_keys menggunakan editor teks, seperti nano:
Jika berkas tersebut tidak ada, perintah ini akan membuatnya.
- Rekatkan kunci SSH publik Anda (yang telah Anda salin dari id_rsa.pub sebelumnya) ke dalam berkas tersebut. Klik kanan atau gunakan fungsi tempel pada terminal untuk menyisipkan kunci.
- Simpan dan tutup berkas dengan menekan Ctrl X, lalu Y, dan tekan Enter.
- Tetapkan izin yang benar pada file authorized_keys:
Langkah ini memastikan bahwa berkas tersebut hanya dapat diakses oleh pengguna saat ini.
Langkah 5: Menguji Login Kunci SSH
Setelah menambahkan kunci SSH Anda ke VPS, Anda harus menguji pengaturan untuk memastikan bahwa Anda dapat masuk tanpa kata sandi.
- Keluar dari sesi SSH saat ini dengan mengetik:
- Sekarang, coba masuk kembali ke VPS menggunakan kunci SSH Anda:
Jika semuanya sudah diatur dengan benar
- anda akan masuk ke VPS tanpa diminta kata sandi.
Langkah 6 (Opsional): Nonaktifkan Otentikasi Kata Sandi
Untuk keamanan tambahan, Anda dapat menonaktifkan autentikasi berbasis kata sandi, sehingga hanya pengguna yang memiliki kunci SSH yang dapat mengakses VPS. Langkah ini bersifat opsional tetapi direkomendasikan untuk lingkungan yang mengutamakan keamanan.
Untuk menonaktifkan autentikasi kata sandi:
- Buka file konfigurasi SSH pada VPS Anda:
- Temukan baris-baris berikut ini dalam berkas konfigurasi dan pastikan baris-baris tersebut diatur sebagai berikut:
- Simpan dan tutup berkas dengan menekan Ctrl X, lalu Y, dan tekan Enter.
- Mulai ulang layanan SSH untuk menerapkan perubahan:
Sekarang, hanya pengguna dengan kunci SSH yang valid yang dapat masuk ke VPS.
Langkah 7: Mengelola Beberapa Kunci SSH
Jika Anda mengelola beberapa VPS atau peladen jarak jauh, Anda mungkin ingin mengatur kunci SSH dan mengonfigurasi berkas ~/.ssh/config untuk kenyamanan. Berikut ini adalah contoh konfigurasi yang memungkinkan Anda untuk menentukan kunci SSH yang berbeda untuk peladen yang berbeda:
Setelah menambahkannya ke berkas konfigurasi SSH Anda(~/.ssh/config), Anda cukup masuk dengan:
Kesimpulan
Menambahkan kunci publik SSH ke VPS yang sudah ada secara signifikan meningkatkan keamanan server jarak jauh Anda sekaligus menyederhanakan proses login. Dengan mengikuti panduan ini, Anda dapat dengan mudah mengunggah kunci publik SSH dan mengonfigurasi VPS Anda untuk login tanpa kata sandi. Untuk keamanan tambahan, pertimbangkan untuk menonaktifkan otentikasi kata sandi sepenuhnya, memastikan bahwa hanya kunci SSH yang diotorisasi yang dapat mengakses VPS Anda. Penyiapan ini tidak hanya melindungi server Anda dari akses yang tidak sah, tetapi juga menyederhanakan alur kerja Anda dengan menghilangkan kebutuhan untuk memasukkan kata sandi setiap kali Anda masuk.