Episode ini membahas lapisan identitas tailnet: autentikasi SSO via Google, GitHub, Microsoft, atau Okta dengan MFA, penggunaan auth keys untuk provisioning otomatis, API keys untuk integrasi, serta Tailnet Lock untuk melindungi tailnet dari kompromi.

Di episode 12 kalian memahami lapisan enkripsi. Tapi sebelum enkripsi berbicara, ada pertanyaan yang harus dijawab: siapa perangkat dan siapa orang yang bergabung ke tailnet? Inilah lapisan identitas — dan jawabannya datang dari authentication dan SSO.
Episode 13 membahas cara tailnet memverifikasi identitas: login via Google, GitHub, Microsoft, atau Okta dengan multi-factor authentication, penggunaan auth keys untuk provisioning otomatis tanpa interaksi manusia, API keys untuk integrasi, dan Tailnet Lock untuk melindungi tailnet bahkan jika admin dikompromi.
Saat pertama tailscale up, kalian diarahkan ke halaman login provider pilihan — ini Single Sign-On (SSO). Identitas manusia datang dari identity provider perusahaan atau pribadi, bukan dari database Tailscale sendiri:
tailscale loginPerintah tailscale login membuka kembali alur autentikasi, berguna saat kalian ingin berpindah provider atau menyambungkan kembali node yang kadaluarsa.
MFA berjalan di level identity provider: jika Google atau Okta kalian mengaktifkan MFA, login Tailscale otomatis memakainya. Ini berarti satu lapisan keamanan ekstra tanpa konfigurasi tambahan di tailnet. Untuk organisasi, wajibkan MFA di kebijakan provider untuk melindungi akses tailnet dari akun yang bocor.
Untuk server cloud, container, dan perangkat headless, tidak ada browser untuk login. Solusinya auth keys — key sekali pakai yang di-generate di admin console:
sudo tailscale up --auth-key=tskey-auth-kEYmPLdExampleAuth key bisa dibuat one-shot (habis satu kali pakai) atau ephemeral (node dihapus otomatis saat down). Perintah sudo tailscale up --auth-key=... memungkinkan provisioning tanpa interaksi manusia — pola penting untuk episode 17 dan 21.
API key dipakai untuk memanggil Tailscale API — mengelola devices, ACL, dan konfigurasi dari kode. Bedanya dengan auth key: API key adalah kredensial admin untuk API, bukan untuk login node:
curl -s https://api.tailscale.com/api/v2/tailnet/example.com/devices \
-H "Authorization: Bearer tskey-api-xxxxx"Perintah curl -s ... -H "Authorization: Bearer ..." mengambil daftar perangkat lewat API. API keys harus disimpan aman dan diberi masa berlaku — jangan pernah commit ke repository.
Tailnet Lock (bernama Tailnet Lock) menambahkan persetujuan tanda tangan: perubahan signifikan pada tailnet — seperti menambahkan node baru — memerlukan tanda tangan dari sejumlah key yang ditunjuk. Bahkan jika kredensial admin diretas, penyerang tetap tidak bisa menambahkan node tanpa key yang memenuhi ambang:
sudo tailscale lock init
sudo tailscale lock signPerintah sudo tailscale lock init mengaktifkan lock dan menampilkan key kalian. tailscale lock sign menandatangani operasi yang sedang menunggu. Tailnet Lock adalah pertahanan terakhir yang kuat untuk tailnet production.
Manusia -> SSO (Google/GitHub/Microsoft/Okta) + MFA
Perangkat -> auth keys (one-shot/ephemeral)
Integrasi -> API keys / OAuth
Pertahanan-> Tailnet Lock (persetujuan tanda tangan)1. Buat auth key one-shot dengan masa berlaku pendek
2. Provision node dengan auth key
3. Verifikasi node muncul di admin console
4. Login manual untuk workstation dengan SSO
5. Rotasi auth key setelah provisioning selesaiUrutan ini memastikan tidak ada auth key yang menganggur terlalu lama. Untuk workstation, biarkan alur SSO berjalan — interaksi manusia justru memastikan pemilik perangkat bisa dikenali.
Identitas tailnet bukan sesuatu yang dikonfigurasi sekali lalu dilupakan. Key expiry memaksa node me-reauthenticate secara berkala, dan Tailnet Lock menjaga perubahan tetap terkontrol. Memperlakukan identitas sebagai proses berkelanjutan adalah kunci keamanan jangka panjang.
Autentikasi adalah gerbang yang menjaga lapisan enkripsi tetap bermakna. Dengan SSO plus MFA untuk manusia, auth keys untuk perangkat otomatis, API keys untuk integrasi, dan Tailnet Lock sebagai jaring pengaman, tailnet kalian punya lapisan identitas yang lengkap.
Episode 13 melengkapi lapisan pertama model keamanan: identitas. Kalian memahami alur SSO dan MFA, provisioning dengan auth keys, integrasi API keys, dan perlindungan ekstra dari Tailnet Lock.
Inti yang harus dibawa pulang:
Di episode 14 selanjutnya kita akan membahas security hardening dan ACL lanjutan — aturan ACL granular per node dan per user, kebijakan berbasis tag dengan least privilege, plus checklist hardening seperti key expiry, monitoring devices, pembatasan Taildrop dan SSH, serta pengamanan node server publik.