Apa Itu Kerberos?


Halo! Selamat datang kembali. Di sesi kali ini, gua bakal bahas salah satu protokol keamanan yang sering banget jadi momok buat para junior, tapi sebenarnya krusial banget buat dipahami, apalagi kalau lu sudah mulai mainan sistem enterprise atau Windows Server. Barang ini namanya Kerberos.

Langsung saja, simak pembahasannya di bawah ini.


Pengertian

Kerberos adalah sebuah protokol autentikasi jaringan komputer yang bekerja berdasarkan "tiket" untuk memungkinkan simpul (node) yang berkomunikasi melalui jaringan yang tidak aman untuk membuktikan identitas mereka satu sama lain secara aman. Protokol ini dikembangkan oleh MIT dan fokus utamanya adalah menyediakan metode Strong Authentication untuk aplikasi client-server.

Konsep

Konsep dasar Kerberos adalah kepercayaan pada pihak ketiga yang disebut Key Distribution Center (KDC). Dalam arsitektur Kerberos, tidak ada kata "percaya begitu saja". Setiap kali lu mau mengakses layanan (misalnya file sharing), lu harus punya tiket yang sah. KDC ini terbagi menjadi dua bagian utama:

  1. Authentication Service (AS): Bagian yang memverifikasi siapa lu di awal.

  2. Ticket Granting Service (TGS): Bagian yang memberikan lu tiket spesifik untuk mengakses layanan tertentu.

Cara Kerja

Alur Kerberos ini memang agak muter-muter, tapi sistematis. Berikut urutannya:

  1. Login: Lu sebagai client mengirim permintaan ke AS (Authentication Service) dengan ID lu.

  2. AS Verification: AS bakal ngecek di database. Kalau ID lu ada, AS bakal ngirim balik tiket yang disebut Ticket Granting Ticket (TGT) yang sudah dienkripsi.

  3. Request TGS: Saat lu mau akses server tertentu (misal database), lu kirim TGT tadi ke TGS (Ticket Granting Service).

  4. TGS Response: TGS bakal verifikasi TGT lu. Kalau valid, TGS bakal kasih lu "Tiket Layanan" (Service Ticket).

  5. Service Access: Lu bawa Tiket Layanan itu ke server tujuan. Server bakal verifikasi tiket tersebut, dan boom! Lu dapat akses tanpa perlu kirim password lagi lewat jaringan.

Tujuan

Kerberos diciptakan untuk menyelesaikan masalah Cleartext Password yang berkeliaran di jaringan. Dulu, banyak protokol ngirim password polosan, yang mana gampang banget di-sniffing. Selain itu, Kerberos bertujuan untuk mewujudkan Single Sign-On (SSO), jadi lu cukup login sekali di awal, dan lu bisa akses banyak server tanpa harus ngetik password berulang-ulang di tiap layanan.

Analogi

Bayangkan lu mau masuk ke sebuah Taman Hiburan (Dufan) yang sangat ketat:

  • AS (Authentication Service): Itu adalah loket tiket utama di depan gerbang. Lu kasih KTP (ID) dan bayar, lalu lu dikasih gelang sakti (TGT).

  • TGS (Ticket Granting Service): Itu adalah pos-pos kecil di depan setiap wahana (Misal: Bianglala atau Halilintar). Lu nggak bisa langsung naik, lu harus tunjukin gelang sakti lu ke penjaga pos buat dapetin karcis khusus wahana itu (Service Ticket).

  • Layanan: Itu adalah wahana yang mau lu naikin. Penjaga wahana cuma bakal lihat karcis khusus tadi, bukan KTP lu lagi.

Kelebihan dan Kekurangan

KelebihanKekurangan
Keamanan Tinggi: Password tidak pernah dikirimkan dalam bentuk teks biasa melalui jaringan.Single Point of Failure: Kalau server KDC mati, seluruh jaringan nggak bisa login sama sekali.
Single Sign-On (SSO): User cuma butuh satu kali autentikasi untuk akses banyak resource.Ketergantungan Waktu: Jam di semua server harus sinkron (pake NTP). Selisih sedikit saja (biasanya 5 menit), tiket dianggap kadaluarsa.
Mutual Authentication: Baik client maupun server sama-sama melakukan verifikasi identitas.Konfigurasi Rumit: Setup awal Kerberos, terutama di Linux, butuh ketelitian tinggi di sisi konfigurasi file.

Tutorial & Problem Solving Lengkap

Biasanya, lu bakal nemuin Kerberos ini di ekosistem Active Directory. Tapi sebagai engineer, lu harus tahu cara instalasi dasarnya di Linux (Debian/Ubuntu) buat simulasi.

1. Instalasi KDC Server

# Update repo dulu biar segar
$ sudo apt update

# Install paket kerberos server
$ sudo apt install krb5-kdc krb5-admin-server -y

2. Konfigurasi Realm

Saat instalasi, lu bakal diminta masukin Realm. Biasanya formatnya huruf kapital semua, misal: RIDHO.LAB. Edit file konfigurasinya:

# Mengatur konfigurasi utama Kerberos
$ sudo nano /etc/krb5.conf

# Pastikan bagian default_realm mengarah ke REALM lu
# [libdefaults]
#     default_realm = RIDHO.LAB

3. Membuat Database Kerberos

# Membuat master key untuk database Kerberos
# Masukkan password yang kuat dan jangan sampai lupa!
$ sudo krb5_newrealm

4. Problem Solving: Clock Skew Error

Masalah yang paling sering dialami junior adalah error Clock skew too great. Ini artinya jam antara client dan server beda jauh.

Solusi:

Gunakan NTP untuk sinkronisasi waktu.

# Install NTP client
$ sudo apt install ntpdate -y

# Paksa sinkronisasi ke server waktu (misal id.pool.ntp.org)
$ sudo ntpdate id.pool.ntp.org

Kesimpulan

Kerberos itu standar emas buat autentikasi di jaringan enterprise. Meskipun kelihatannya ribet karena banyak istilah tiket, tapi ini jauh lebih aman daripada sistem autentikasi tradisional. Best practice-nya, selalu pastikan server NTP lu jalan dengan benar sebelum lu troubleshooting Kerberos, karena 90% masalah Kerberos di lapangan biasanya cuma gara-gara jam server yang ngaco.


Glosarium Engineer

  • Kerberos: Protokol autentikasi jaringan berbasis tiket yang menyediakan keamanan kuat melalui enkripsi.

  • MIT: Massachusetts Institute of Technology, institusi yang mengembangkan protokol Kerberos.

  • Strong Authentication: Metode pembuktian identitas yang menggunakan lebih dari satu faktor atau enkripsi tingkat tinggi.

  • Key Distribution Center (KDC): Server pusat dalam Kerberos yang bertugas mengelola kunci enkripsi dan menerbitkan tiket.

  • Single Sign-On (SSO): Fitur yang memungkinkan pengguna masuk satu kali untuk mengakses berbagai aplikasi atau sistem.

  • Ticket Granting Ticket (TGT): Tiket awal yang diberikan KDC untuk membuktikan bahwa user sudah terverifikasi.

  • NTP (Network Time Protocol): Protokol untuk sinkronisasi waktu antar perangkat dalam jaringan komputer.

  • Realm: Domain atau area administrasi dalam jaringan Kerberos, biasanya ditulis dengan huruf besar.

  • Clock Skew: Selisih waktu antara jam internal satu perangkat dengan perangkat lainnya dalam satu jaringan.

Comments

Popular posts from this blog

Apa itu Link Aggregation?

Apa Itu Port Security di Switch Cisco