Press ESC to close

Konfigurasi SSH Key Authentication di Server Linux

WhatsAppTelegramFacebookXThreadsCopy Link

Anda merasa khawatir setiap kali harus masuk ke server menggunakan password? Atau mungkin Anda sering mengetik password panjang berulang kali dan takut salah satu kali akan lupa atau tertangkap log?

Masalah seperti ini sangat umum dialami oleh pengguna baru Linux, terutama ketika mengelola server jarak jauh. Password memang mudah digunakan, tetapi juga lebih mudah diretas dengan teknik seperti brute force attack. Di sinilah SSH Key Authentication hadir sebagai solusi yang lebih aman dan efisien.

Artikel ini akan memandu Anda langkah demi langkah dalam mengonfigurasi SSH key authentication di server Linux — mulai dari membuat kunci SSH, menyalin ke server, hingga menonaktifkan login dengan password. Anda juga akan mempelajari tips keamanan tambahan agar koneksi server Anda tetap terlindungi dari ancaman siber.


Apa Itu SSH Key Authentication?

SSH (Secure Shell) adalah protokol untuk mengakses server secara aman melalui jaringan terenkripsi. Biasanya Anda masuk menggunakan username dan password. Namun, metode ini memiliki risiko tinggi jika password Anda lemah atau bocor.

SSH Key Authentication mengganti metode password dengan sepasang kunci kriptografi:

  • Private key: Disimpan di komputer lokal Anda dan jangan pernah dibagikan.
  • Public key: Disimpan di server.

Ketika Anda mencoba masuk, server akan mencocokkan public key dengan private key Anda. Jika cocok, Anda bisa masuk tanpa perlu mengetik password.


Langkah-Langkah Konfigurasi SSH Key Authentication

Berikut panduan lengkapnya agar Anda dapat menerapkan sistem autentikasi berbasis SSH key di server Linux dengan aman.


1. Membuat SSH Key di Komputer Lokal

Buka terminal di komputer Anda, lalu jalankan:

ssh-keygen -t rsa -b 4096

Penjelasan:

  • -t rsa → jenis algoritma enkripsi.
  • -b 4096 → panjang kunci untuk keamanan yang lebih kuat.

Setelah menjalankan perintah ini, sistem akan menanyakan:

Enter file i which to save the key (/home/user/.ssh/id_rsa):

Tekan Enter untuk menyimpan di lokasi default.

Kemudian Anda akan diminta membuat passphrase (opsional). Ini seperti lapisan keamanan tambahan untuk private key Anda.


2. Menyalin SSH Public Key ke Server Linux

Ada dua cara mudah untuk menyalin public key Anda ke server:

Cara 1: Otomatis dengan ssh-copy-id (disarankan)

ssh-copy-id username@ip-address-server

Ganti username dan ip-address-server sesuai milik Anda. Setelah memasukkan password untuk terakhir kalinya, public key akan tersalin ke server.

Cara 2: Manual (jika ssh-copy-id tidak tersedia)

  1. Tampilkan isi public key Anda:
    cat ~/.ssh/id_rsa.pub
  2. Login ke server Anda:
    ssh username@ip-address-server
  3. Buat folder .ssh jika belum ada:
    mkdir -p ~/.ssh && chmod 700 ~/.ssh
  4. Tambahkan public key ke file
    authorized_keys: echo "PASTE_PUBLIC_KEY_ANDA_DI_SINI" >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys

3. Menguji Koneksi SSH Tanpa Password

Sekarang coba login lagi:

ssh username@ip-address-server

Jika konfigurasi berhasil, Anda akan langsung masuk tanpa diminta password.


4. Menonaktifkan Login Password (Opsional tapi Direkomendasikan)

Untuk keamanan yang maksimal, Anda bisa mematikan login berbasis password agar hanya kunci SSH yang bisa digunakan.

  1. Edit file konfigurasi SSH di server:
    sudo nano /etc/ssh/sshd_config
  2. Cari dan ubah baris berikut:
    PasswordAuthentication no ChallengeResponseAuthentication no
  3. Simpan perubahan dan restart service SSH:
    sudo systemctl restart sshd

Sekarang, hanya pengguna dengan private key yang bisa mengakses server Anda.


5. Tips Keamanan Tambahan SSH Key

  • Gunakan passphrase pada private key Anda untuk keamanan ekstra.
  • Simpan backup key di lokasi aman (misalnya flashdisk terenkripsi).
  • Gunakan ed25519 sebagai algoritma modern pengganti RSA untuk performa lebih cepat dan keamanan lebih tinggi:
ssh-keygen -t ed25519
  • Pastikan folder .ssh di server memiliki permission yang ketat:
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

Sekarang Anda sudah berhasil mengonfigurasi SSH Key Authentication di server Linux. Metode ini bukan hanya meningkatkan keamanan, tetapi juga membuat proses login lebih cepat dan efisien.

Jika Anda ingin memperdalam topik keamanan server,
baca juga artikel kami tentang “Cara Mengamankan Port SSH dari Serangan Brute Force di Linux.

WhatsAppTelegramFacebookXThreadsCopy Link