Amankan SSH Ubuntu dengan YubiKey 2FA

Amankan SSH Ubuntu dengan YubiKey 2FA

Bitnesia • Linux • Mar 25, 2026 269 •EN

Akses SSH adalah pintu utama untuk mengelola server Linux. Meski SSH key sudah lebih aman dibanding password, risiko tetap ada begitu file kunci privat bocor atau dicuri dari laptop sysadmin. Untuk menutup celah ini, kita bisa menambahkan hardware security key FIDO2/U2F seperti YubiKey buatan Yubico sebagai lapisan verifikasi kedua. Setiap login SSH pun butuh sentuhan fisik ke perangkat, sehingga penyerang (attacker) yang cuma mengantongi file kunci privat tetap tidak bisa masuk ke server.

Metode Otentikasi SSH

SSH mendukung beberapa metode otentikasi:

  1. Password Authentication: Metode paling sederhana, tetapi juga paling rentan terhadap brute-force attack atau pencurian password.
  2. Public Key Authentication: Menggunakan pasangan kunci publik dan privat. Lebih aman dibanding password, tetapi jika kunci privat bocor, akses server tetap bisa ditembus.
  3. Host-based Authentication: Mengandalkan kepercayaan antar host. Jarang dipakai di server publik.
  4. Keyboard-Interactive / Challenge-Response: Mengizinkan metode tambahan seperti OTP (One-Time Password), sehingga bisa dipadukan dengan 2FA.

Dalam praktik terbaik, sysadmin biasanya menonaktifkan password authentication dan hanya mengandalkan SSH key. Namun, menambahkan 2FA berbasis hardware token seperti YubiKey akan jauh meningkatkan lapisan keamanan.

Two-Factor Authentication

Two-Factor Authentication (2FA) adalah metode otentikasi yang menggabungkan dua lapisan verifikasi berbeda. Biasanya terdiri dari:

  • Something you know → password atau passphrase.
  • Something you have → perangkat fisik seperti token atau smartphone.
  • Something you are → biometrik, misalnya sidik jari.

2FA memastikan bahwa meskipun kunci privat atau password bocor, penyerang (attacker) tetap tidak bisa login tanpa perangkat fisik itu, dalam kasus ini YubiKey.

YubiKey sebagai Security Key

YubiKey adalah perangkat keras buatan Yubico yang berfungsi sebagai security key untuk otentikasi multifaktor. YubiKey mendukung berbagai protokol keamanan, di antaranya:

  • OTP (One-Time Password)
  • FIDO2 / U2F
  • PIV (Personal Identity Verification)
  • OpenPGP
  • Challenge-Response

Dalam konteks SSH, YubiKey berperan sebagai second factor. Setiap login SSH pun otomatis membutuhkan sentuhan fisik pada perangkat YubiKey.

Instalasi Paket FIDO2

Pastikan package OpenSSH yang terpasang sudah mendukung FIDO2, yaitu OpenSSH versi 8.2 ke atas. Di Ubuntu Server 26.04 LTS, repository resmi sudah menyediakan OpenSSH 10.2 beserta package pendukung FIDO2 seperti libfido2. Ikuti langkah berikut untuk memasang dependency-nya:

  1. Perbarui daftar package:
    sudo apt update
  2. Instal package pendukung FIDO2/U2F:
    sudo apt install libfido2-1 libfido2-dev libu2f-udev -y
  3. Cek versi OpenSSH yang terpasang:
    ssh -V
    Jika versi yang tampil ≥ 8.2, dukungan FIDO2 sudah tersedia.

Konfigurasi FIDO2 untuk SSH

Colokkan YubiKey ke port USB, lalu ikuti langkah berikut untuk membuat SSH key berbasis FIDO2:

  1. Buat key pair baru dengan flag -sk:
    ssh-keygen -t ed25519-sk -C "user@server"
    Flag -sk menandakan penggunaan security key (FIDO2/U2F). Sentuh YubiKey saat diminta untuk menyelesaikan pembuatan key.
  2. Perintah di atas menghasilkan dua file: private key id_ed25519_sk dan public key id_ed25519_sk.pub.
  3. Salin public key ke server:
    ssh-copy-id -i ~/.ssh/id_ed25519_sk.pub user@IP-Server

Uji Coba Login SSH

Setelah public key tersalin ke server, coba login:

ssh -i ~/.ssh/id_ed25519_sk user@IP-Server

Sysadmin akan diminta menyentuh YubiKey sebelum koneksi berhasil terbentuk. Jika YubiKey tidak tercolok, proses otentikasi otomatis gagal walau private key tersedia di disk.

Kombinasi FIDO2 dan YubiKey memberi lapisan keamanan fisik pada otentikasi SSH. Private key saja tidak cukup dipakai tanpa YubiKey tercolok, sehingga pencuri file kunci tetap tidak bisa login ke server. Metode ini lebih sederhana dibanding OTP berbasis PAM, sekaligus lebih kuat karena terintegrasi langsung dengan OpenSSH modern. Bagi sysadmin dan security engineer, kombinasi SSH berbasis FIDO2 dan disiplin manajemen key adalah langkah paling efektif untuk melindungi server Ubuntu dari akses ilegal.

Dukung keberlanjutan tutorial open source Bitnesia melalui link di bawah ini.

Kirim Donasi

Related Posts