Google Authenticator (2FA)

Apa itu 2FA?

2FA (Two-Factor Authentication) atau sering disebut TFA (Two-Factor Authentication) adalah metode keamanan yang membutuhkan dua langkah verifikasi sebelum seseorang bisa mengakses suatu akun atau sistem.

Bagaimana 2FA Bekerja?

Dalam sistem 2FA, pengguna harus melewati dua lapisan keamanan:

1ļøāƒ£ Sesuatu yang Anda Ketahui → Misalnya password atau PIN 2ļøāƒ£ Sesuatu yang Anda Miliki → Misalnya kode OTP dari aplikasi autentikator, SMS, atau perangkat fisik

Contoh umum: āœ… Saat login SSH, pengguna harus memasukkan password + kode OTP dari Google Authenticator āœ… Saat login akun online, selain password, harus memasukkan kode dari SMS atau aplikasi


Jenis-Jenis 2FA

Ada beberapa metode 2FA yang digunakan, antara lain:

1ļøāƒ£ OTP (One-Time Password) – Kode Sekali Pakai (yang digunakan saat ini)

šŸ“Œ Menggunakan aplikasi autentikator seperti:

  • Google Authenticator

  • Authy

  • Microsoft Authenticator

šŸ“Œ Cara kerja:

  • Setiap beberapa detik, aplikasi akan menghasilkan kode unik (OTP) yang harus dimasukkan saat login.

  • Kode ini hanya berlaku sekali dan dalam waktu terbatas (biasanya 30 detik).

2ļøāƒ£ SMS / Email OTP

šŸ“Œ Kode OTP dikirim ke nomor HP atau email pengguna. šŸ“Œ Kurang aman dibanding aplikasi autentikator karena bisa disadap atau diretas.

3ļøāƒ£ Hardware Token (Perangkat Fisik)

šŸ” Menggunakan perangkat fisik seperti:

  • YubiKey

  • Google Titan Security Key

šŸ“Œ Perangkat ini harus dicolokkan ke komputer atau digunakan melalui NFC untuk otentikasi.

4ļøāƒ£ Biometrik (Fingerprint / Face Recognition)

šŸ“Œ Menggunakan sidik jari atau pengenalan wajah sebagai faktor kedua.


Kenapa 2FA Penting?

āœ… Melindungi akun dari peretasan – Meski password bocor, akun tetap aman. āœ… Mencegah serangan brute force – Hacker tidak bisa login tanpa kode OTP. āœ… Digunakan oleh banyak layanan keamanan tinggi – Contoh: SSH, perbankan, email, media sosial.

Cara Memasang 2FA di SSH

Menambahkan Two-Factor Authentication (2FA) ke SSH meningkatkan keamanan dengan meminta kode OTP selain password atau SSH Key. Berikut adalah langkah-langkahnya untuk Ubuntu/Debian dan RHEL/CentOS.


1ļøāƒ£ Instalasi Paket Google Authenticator

Di Ubuntu/Debian:

sudo apt update && sudo apt install libpam-google-authenticator -y

Di RHEL/CentOS:

sudo yum install epel-release -y
sudo yum install google-authenticator -y

2ļøāƒ£ Mengkonfigurasi Google Authenticator

Jalankan perintah ini untuk setiap pengguna SSH:

google-authenticator

Jawab pertanyaan prompt yang muncul: āœ… Do you want authentication tokens to be time-based (y/n)? → y āœ… Simpan secret key, QR code, dan kode pemulihan

āš ļø Jika QR Code tidak muncul - seperti ini:

  1. Kunjungi website ini

  2. Masukkan secret key dari authenticator

āœ… Do you want to update your .google_authenticator file? (y/n) → y āœ… Do you want to disallow multiple uses? (y/n) → y āœ… Do you want to increase the time window? (y/n) → n āœ… Do you want to enable rate limiting? (y/n) → y

šŸ“Œ Scan QR Code dengan aplikasi seperti Google Authenticator atau Authy untuk mendapatkan kode OTP.


3ļøāƒ£ Mengaktifkan 2FA di SSH

Edit file konfigurasi PAM:

sudo nano /etc/pam.d/sshd

Tambahkan baris ini di bagian akhir:

auth required pam_google_authenticator.so

Simpan lalu keluar (CTRL+X, lalu Y, lalu ENTER).


4ļøāƒ£ Konfigurasi SSH agar Menggunakan 2FA

Edit file konfigurasi SSH:

sudo nano /etc/ssh/sshd_config

Cari dan ubah baris berikut:

KbdInteractiveAuthentication yes
ChallengeResponseAuthentication yes
PasswordAuthentication yes
UsePAM yes
AuthenticationMethods publickey,keyboard-interactive

Simpan lalu keluar (CTRL+X, lalu Y, lalu ENTER).


5ļøāƒ£ Restart Layanan SSH

Setelah konfigurasi selesai, restart SSH agar perubahan diterapkan:

sudo systemctl restart ssh

6ļøāƒ£ Uji Coba Login SSH dengan 2FA

Coba login ke server dari terminal lain:

ssh user@server-ip

Sekarang, setelah memasukkan password, SSH akan meminta kode OTP dari aplikasi Google Authenticator.

āœ… Jika berhasil login, 2FA sudah aktif! šŸ”„ Jika gagal login, coba cek kembali konfigurasi dan pastikan secret key sudah sesuai.


Kesimpulan

Dengan menambahkan 2FA pada SSH, kita meningkatkan keamanan login dengan kombinasi password + OTP. Ini akan menyulitkan peretas yang mencoba mengakses server meskipun mereka memiliki password atau SSH Key. šŸš€

Last updated

Was this helpful?