SSH Key: Cara Membuat dan Mengamankan Akses Server

SSH (Secure Shell) memungkinkan administrator mengakses server dari jarak jauh melalui koneksi terenkripsi. Selain autentikasi dengan kata sandi, SSH mendukung autentikasi berbasis pasangan kunci kriptografi atau SSH key. Metode ini dapat mengurangi ketergantungan pada kata sandi akun server, tetapi tetap perlu dikonfigurasi dan dirawat dengan benar.

Panduan ini menjelaskan cara membuat SSH key, memasang public key pada server yang memang berhak dikelola, menguji koneksi, dan menjaga private key agar tidak bocor. Contoh perintah menggunakan OpenSSH yang tersedia pada banyak sistem Linux, macOS, dan Windows yang memasang OpenSSH Client.

Apa Itu SSH Key?

SSH key terdiri dari dua bagian yang saling terkait: private key dan public key. Private key harus tetap berada di perangkat pemiliknya dan tidak dibagikan. Public key boleh dipasang pada akun server yang diizinkan menerima koneksi. Saat login, SSH menggunakan proses kriptografi untuk membuktikan bahwa klien memiliki private key yang cocok, tanpa mengirimkan private key itu ke server.

SSH key bukan pengganti semua kontrol keamanan. Jika private key dicuri dan tidak dilindungi dengan baik, orang lain mungkin dapat menggunakannya. Karena itu, gunakan frasa sandi pada key jika sesuai, lindungi perangkat, dan batasi akun serta izin yang diberikan.

1. Periksa Apakah SSH Sudah Tersedia

Buka Terminal di Linux atau macOS, atau PowerShell/Windows Terminal di Windows. Jalankan:

ssh -V
ssh-keygen -V

Perintah pertama menampilkan versi klien SSH jika tersedia. Perilaku opsi versi pada ssh-keygen dapat berbeda, sehingga bila perintah kedua menampilkan bantuan atau pesan penggunaan, itu belum tentu berarti OpenSSH tidak terpasang. Pada Windows, fitur OpenSSH Client dapat diperiksa melalui Optional Features atau pengaturan fitur sistem.

2. Buat Pasangan Kunci Baru

Untuk instalasi OpenSSH modern, Ed25519 merupakan pilihan praktis ketika server mendukungnya. Buat key dengan perintah:

ssh-keygen -t ed25519 -C "nama-perangkat"

Ikuti petunjuk untuk memilih lokasi penyimpanan. Lokasi bawaan biasanya berada di direktori ~/.ssh/, misalnya id_ed25519 untuk private key dan id_ed25519.pub untuk public key. Jika file dengan nama itu sudah ada, jangan menimpanya sebelum memastikan key lama tidak lagi digunakan; pilih nama file baru bila perlu.

Ketika diminta memasukkan passphrase, pertimbangkan untuk mengisinya. Passphrase menambah perlindungan jika file private key disalin orang lain. Simpan dengan aman dan jangan menaruhnya di repositori kode atau dokumen yang dapat diakses umum.

3. Pasang Public Key pada Server

Public key adalah file yang berakhiran .pub. Isinya boleh disalin ke akun server yang akan digunakan, sedangkan private key tanpa akhiran tersebut tidak boleh dikirim ke administrator lain atau ditempelkan ke tiket dukungan.

Di sistem yang menyediakan ssh-copy-id, public key dapat dipasang dengan:

ssh-copy-id -i ~/.ssh/id_ed25519.pub [email protected]

Ganti nama pengguna dan alamat server dengan nilai yang benar. Perintah ini biasanya memerlukan akses awal yang sah ke server. Jika ssh-copy-id tidak tersedia, salin isi public key ke file ~/.ssh/authorized_keys milik akun yang tepat melalui metode administrasi yang disetujui. Pastikan direktori dan file tersebut memiliki izin yang sesuai dengan kebijakan sistem.

4. Uji Koneksi Sebelum Mengubah Konfigurasi

Coba masuk dengan menyebut key secara eksplisit:

ssh -i ~/.ssh/id_ed25519 [email protected]

Jika koneksi berhasil, pastikan sesi masuk ke akun dan server yang benar. Jika gagal, gunakan mode diagnostik:

ssh -v -i ~/.ssh/id_ed25519 [email protected]

Log verbose membantu menunjukkan key yang ditawarkan dan tahap koneksi yang bermasalah. Jangan menyalin log lengkap ke forum publik sebelum memeriksa apakah ada nama pengguna, alamat internal, atau informasi sensitif di dalamnya.

5. Lindungi Private Key

  • Jangan pernah membagikan private key. Public key dan private key memiliki fungsi berbeda; hanya public key yang dipasang di server.
  • Batasi izin file. Pada Linux dan macOS, izin private key yang terlalu terbuka dapat membuat SSH menolak menggunakannya. Untuk key di direktori rumah, periksa izin dan gunakan chmod 600 ~/.ssh/id_ed25519 bila sesuai.
  • Gunakan passphrase dan agen SSH dengan hati-hati. Agen dapat memudahkan penggunaan key, tetapi perangkat yang sudah terbuka atau sesi agen yang tidak terlindungi tetap memiliki risiko.
  • Pisahkan key berdasarkan tujuan. Hindari menggunakan satu key untuk semua server, pekerjaan, dan perangkat jika pemisahan dapat mengurangi dampak kebocoran.
  • Siapkan pencabutan akses. Ketika perangkat hilang atau key dicurigai bocor, hapus public key terkait dari akun server, periksa log akses, dan buat key pengganti.

6. Jangan Langsung Menonaktifkan Login Kata Sandi

Setelah autentikasi key berfungsi, administrator dapat mempertimbangkan untuk membatasi login berbasis kata sandi sesuai kebutuhan dan kebijakan server. Namun, jangan mengubah konfigurasi jarak jauh tanpa jalur pemulihan. Pertahankan sesi administrasi yang sudah aktif, uji koneksi baru pada terminal lain, dan pastikan tersedia akses konsol atau metode pemulihan jika konfigurasi salah.

Pengaturan seperti PubkeyAuthentication, PasswordAuthentication, dan aturan akun dapat berbeda menurut versi OpenSSH serta konfigurasi distribusi. Periksa dokumentasi server yang digunakan sebelum menerapkan perubahan. Prinsip ini sejalan dengan pendekatan Zero Trust: berikan akses minimum dan jangan menganggap satu mekanisme autentikasi sudah cukup untuk seluruh kebutuhan keamanan.

Jika Key Hilang atau Diduga Bocor

Jangan sekadar menghapus file lokal lalu menganggap masalah selesai. Hapus public key yang bersangkutan dari seluruh akun dan server tempat key itu terdaftar, tinjau log login, periksa akun yang mungkin dibuat atau diubah, lalu buat key baru dari perangkat yang tepercaya. Jika private key pernah masuk ke repositori, cadangan bersama, atau kanal komunikasi publik, anggap key tersebut berpotensi terekspos dan cabut aksesnya.

Kesimpulan

SSH key dapat membuat administrasi server lebih praktis sekaligus mengurangi ketergantungan pada kata sandi, asalkan private key dijaga dan akses server dibatasi dengan benar. Buat key baru dengan aman, pasang hanya public key pada akun yang tepat, uji koneksi sebelum mengubah kebijakan login, dan siapkan prosedur pencabutan jika perangkat atau key bermasalah. Untuk detail opsi dan format yang didukung, rujuk dokumentasi resmi ssh-keygen dan sshd_config.

PENGALAMAN BARU Coba tampilan baru Penasaran dengan pengalaman membaca Nazuaf versi modern? Coba tampilan baru yang dirancang agar nyaman dibaca dari ponsel dan pc. Buka versi modern dan lanjutkan membaca artikel ini. Jelajahi tampilan baru Nazuaf versi modern · Ketuk kartu untuk mencoba

Bagikan artikel ini

Tinggalkan komentar

Server Load: 24% · CMH · ⚡ --ms