Praktik terbaik untuk mengaudit akses SSH


Dokumen ini menjelaskan praktik terbaik untuk mengaudit akses SSH ke instance virtual machine (VM) Linux.

Log Audit Cloud memungkinkan Anda menganalisis aktivitas sebelumnya dan dapat menjadi sumber informasi penting saat menyelidiki aktivitas mencurigakan yang memengaruhi resourceGoogle Cloud Anda.

Bagian berikut berisi praktik terbaik yang dapat membantu Anda mempertahankan jejak audit yang tidak dapat disangkal:

Dokumen ini berfokus pada praktik yang spesifik untuk Google Cloud atau sangat relevan saat menggunakan SSH di Google Cloud. Dokumen ini tidak mencakup praktik terbaik untuk implementasi server atau klien SSH tertentu.

Mengaktifkan log akses data untuk IAP

Untuk memastikan IAP menambahkan entri ke Log Audit Cloud setiap kali pengguna mencoba membuat koneksi SSH, aktifkan log akses data untuk Cloud Identity-Aware Proxy API. Log akses data dinonaktifkan secara default. Kecuali jika Anda memiliki masalah terkait volume log, aktifkan log akses data untuk semua project yang berisi instance VM.

Memantau entri log audit yang terkait dengan penggunaan SSH

Penggunaan SSH dapat memengaruhi keamanan VM dan beban kerjanya, jadi penting untuk mempertahankan audit trail untuk upaya koneksi yang berhasil dan upaya akses yang gagal. Hal ini terutama penting di lingkungan produksi, tempat penggunaan SSH harus dianggap sebagai tindakan sensitif.

Untuk melacak akses SSH dan mungkin menemukan perilaku yang mencurigakan, pastikan Anda memantau entri log yang terkait dengan SSH, termasuk hal berikut:

Layanan Metode Deskripsi
IAP AuthorizeUser Menunjukkan upaya koneksi melalui penerusan TCP IAP. Entri log berisi detail tentang perangkat pengguna, tingkat akses yang terpenuhi, dan tingkat akses yang tidak terpenuhi.
Login OS google.cloud.oslogin.v1.OsLoginService.CheckPolicy Menunjukkan upaya login.
Login OS google.cloud.oslogin.OsLoginService.v1.StartSession Menunjukkan awal verifikasi 2FA Login OS
Login OS google.cloud.oslogin.OsLoginService.v1.ContinueSession Menunjukkan penyelesaian verifikasi 2FA Login OS
Compute Engine v1.compute.projects.setCommonInstanceMetadata Jika kolom projectMetadataDelta berisi entri untuk `ssh-keys`, entri log ini menunjukkan bahwa kunci SSH telah ditambahkan, dihapus, atau diubah dalam metadata project.
Compute Engine v1.compute.instances.setMetadata Jika kolom projectMetadataDelta berisi entri untuk `ssh-keys` atau `sshKeys`, entri log ini menunjukkan bahwa kunci SSH telah ditambahkan, dihapus, atau diubah dalam metadata instance.
Compute Engine google.ssh-serialport.v1.connect Menunjukkan upaya koneksi ke konsol serial
IAM beta.compute.instances.setIamPolicy, v1.compute.instances.setIamPolicy Menunjukkan perubahan pada kebijakan IAM instance VM. Perubahan kebijakan IAM dapat memengaruhi kemampuan pengguna untuk mengubah metadata instance.
IAM SetIamPolicy Menunjukkan perubahan pada kebijakan IAM project. Perubahan kebijakan IAM dapat memengaruhi kemampuan pengguna untuk mengubah metadata project dan konfigurasi log audit Akses Data project.

Semua catatan log audit berisi kolom principalEmail yang mengidentifikasi akun utama yang memulai aktivitas.

Untuk mendapatkan gambaran lengkap tentang aktivitas di VM, konfigurasikan VM untuk mengekspor log server /var/log/messages dan SSH ke Cloud Logging, misalnya dengan menggunakan Agen Operasional.

Perhatikan bahwa bergantung pada distribusi Linux yang Anda gunakan, log server SSH mungkin ditulis ke file log yang berbeda (biasanya, /var/log/auth.log atau /var/log/secure), dan file log ini tidak tercakup dalam konfigurasi default yang digunakan oleh Ops Agent.