Dalam infrastruktur komputasi awan dan datacenter modern, membuka port SSH (port 22) ke internet publik atau membagikan private key SSH s...
Dalam infrastruktur komputasi awan dan datacenter modern, membuka port SSH (port 22) ke internet publik atau membagikan private key SSH statis (id_rsa) antar-teknisi adalah celah keamanan struktural. Jika private key salah satu engineer bocor atau laptop mereka disusupi malware, seluruh armada server di jaringan rentan terhadap pergerakan lateral penyerang tanpa adanya jejak audit yang dapat ditelusuri.
Teleport adalah platform Identity-Aware, Multi-Protocol Access Plane modern berbasis prinsip Zero Trust. Alih-alih mengandalkan private key statis, Teleport menggunakan Certificate Authority (CA) internal yang menerbitkan sertifikat SSH dan TLS berumur pendek (short-lived certificates) setelah pengguna melewati Single Sign-On (SSO) dan autentikasi multi-faktor (MFA). Dilengkapi dengan Web UI Terminal interaktif, kontrol akses berbasis peran (RBAC), serta rekaman sesi interaktif (session recording) yang dapat diputar ulang layaknya video DVR, Teleport menjadi standar emas pengganti SSH Bastion / Jump Host tradisional.
1. Mengapa Mengganti SSH Bastion Tradisional dengan Teleport?
Perbedaan mendasar antara SSH konvensional dan Teleport Access Plane meliputi:
- Short-Lived Certificates: Tidak ada kunci SSH yang tertinggal di server. Sertifikat pengguna kedaluwarsa secara otomatis (misal: 8 jam), sehingga pencabutan hak akses terjadi secara instan.
- Full Session Recording: Setiap ketukan tombol (keystroke), output perintah terminal, dan eksekusi skrip direkam secara tamper-proof untuk keperluan audit kepatuhan (SOC2, ISO 27001).
- Unified Multi-Infrastructure Access: Satu gateway Teleport mampu mengamankan akses ke Linux/Windows Server (SSH/RDP), kluster Kubernetes, database (PostgreSQL/MySQL), dan aplikasi web internal.
- Zero Port Ingress (Tunneling): Node server di balik firewall atau jaringan privat (NAT) dapat terhubung ke Teleport Proxy melalui reverse tunnel keluar (outbound tunnel) tanpa membuka port publik di server target.
2. Instalasi Teleport di Linux Server
Pasang repositori resmi Teleport Community Edition pada distribusi Ubuntu/Debian:
# Unduh kunci GPG resmi Teleport
sudo curl https://apt.releases.teleport.dev/gpg -o /usr/share/keyrings/teleport-archive-keyring.asc
# Tambahkan repositori apt Teleport
source /etc/os-release
echo "deb [signed-by=/usr/share/keyrings/teleport-archive-keyring.asc] https://apt.releases.teleport.dev/${ID?} ${VERSION_CODENAME?} stable/v15" | sudo tee /etc/apt/sources.list.d/teleport.list
# Install paket Teleport
sudo apt update
sudo apt install -y teleport
# Verifikasi versi Teleport
teleport version
3. Konfigurasi Teleport Auth & Proxy Service
Buat berkas konfigurasi /etc/teleport.yaml untuk menjalankan Teleport Auth Service dan Proxy Service dengan sertifikat SSL Let's Encrypt otomatis:
version: v3
teleport:
nodename: teleport-gateway.lab.internal
data_dir: /var/lib/teleport
log:
output: stderr
severity: INFO
auth_service:
enabled: "yes"
cluster_name: "teleport-lab.zhato-tech.id"
authentication:
type: "local"
second_factor: "otp"
proxy_service:
enabled: "yes"
web_listen_addr: "0.0.0.0:443"
public_addr: "teleport.zhato-tech.id:443"
acme:
enabled: "yes"
email: "[email protected]"
ssh_service:
enabled: "yes"
labels:
environment: production
role: gateway
Jalankan daemon Teleport menggunakan systemd:
# Aktifkan dan jalankan service teleport
sudo systemctl enable --now teleport
sudo systemctl status teleport
4. Pembuatan Pengguna Pertama & Setup MFA
Buat akun administrator pertama di server dengan peran editor dan access:
# Buat user admin baru dan tautkan ke akun sistem Linux 'ubuntu' dan 'root'
sudo tctl users add admin --roles=editor,access --logins=ubuntu,root
# Salin link registrasi yang dihasilkan ke browser untuk scan QR-Code 2FA (Google Authenticator)
tctl tokens add) ke repositori publik. Token autentikasi node bersifat sensitif dan hanya boleh dibagikan ke server klien target dengan masa kedaluwarsa pendek (misal: --ttl=1h).
5. Menghubungkan Server Remote via Teleport Node Agent
Pada server target yang ingin dilindungi tanpa membuka port firewall publik:
# Generate token join di server auth gateway
sudo tctl tokens add --type=node --ttl=1h
# Di server target: pasang teleport dan jalankan node agent dengan reverse tunnel
sudo teleport node configure --token=YOUR_JOIN_TOKEN --proxy=teleport.zhato-tech.id:443 --labels=env=staging,service=database -o /etc/teleport.yaml
sudo systemctl enable --now teleport
6. Mengakses Server dan Memutar Ulang Rekaman Sesi (Session Audit)
Pengguna dapat mengakses armada server melalui dua metode modern:
- Melalui Terminal CLI (tsh):
# Login via CLI dengan browser authentication tsh login --proxy=teleport.zhato-tech.id:443 --user=admin # List server yang tersedia tsh ls # Masuk ke server target secara aman tsh ssh ubuntu@target-server - Melalui Web UI Browser: Buka
https://teleport.zhato-tech.id, login dengan 2FA, klik Connect pada server target, dan terminal Linux interaktif akan langsung terbuka di browser Anda!
Semua sesi yang berlangsung dapat diputar ulang frame-by-frame di menu Management > Session Recordings, memberikan transparansi audit menyeluruh bagi tim keamanan infrastruktur.
COMMENTS