In diesem Dokument werden Best Practices für die Prüfung des SSH-Zugriffs auf Linux-VM-Instanzen beschrieben.
Mit Cloud-Audit-Logs können Sie vergangene Aktivitäten analysieren. Sie können eine wichtige Informationsquelle bei der Untersuchung verdächtiger Aktivitäten sein, die sich auf Ihre Google Cloud-Ressourcen auswirken.
Die folgenden Abschnitte enthalten Best Practices, mit denen Sie einen prüfbaren Audit-Trail verwalten können:
- Datenzugriffslogs für IAP aktivieren
- Audit-Logeinträge im Zusammenhang mit der SSH-Nutzung überwachen
Das Dokument konzentriert sich auf Verfahren, die entweder für Google Cloud spezifisch sind oder bei der Verwendung von SSH in Google Cloud von besonderer Bedeutung sind. Das Dokument deckt keine Best Practices für bestimmte SSH-Client- oder ‑Serverimplementierungen ab.
Datenzugriffslogs für IAP aktivieren
Damit IAP bei jedem Versuch, eine SSH-Verbindung herzustellen, den Cloud-Audit-Logs einen Eintrag hinzufügt, aktivieren Sie Datenzugriffslogs für die Cloud Identity-Aware Proxy API. Datenzugriffslogs sind standardmäßig deaktiviert. Sofern Sie keine Bedenken hinsichtlich des Logvolumens haben, aktivieren Sie Datenzugriffslogs für alle Projekte mit VM-Instanzen.
Audit-Logeinträge zur SSH-Nutzung überwachen
Die SSH-Nutzung kann sich auf die Sicherheit von VMs und ihrer Arbeitslasten auswirken. Daher ist es wichtig, sowohl für erfolgreiche Verbindungsversuche als auch für fehlgeschlagene Zugriffsversuche einen Audit-Trail zu führen. Dies ist besonders in Produktionsumgebungen wichtig, in denen die SSH-Nutzung als vertrauliche Aktion betrachtet werden sollte.
Um den SSH-Zugriff zu überwachen und möglicherweise verdächtiges Verhalten zu erkennen, sollten Sie die folgenden SSH-bezogenen Logeinträge im Blick behalten:
Dienst | Methode | Beschreibung |
---|---|---|
IAP | AuthorizeUser |
Gibt einen Verbindungsversuch über die IAP-TCP-Weiterleitung an. Protokolleinträge enthalten Details zum Gerät des Nutzers sowie erfüllte und nicht erfüllte Zugriffsebenen. |
OS Login | google.cloud.oslogin.v1.OsLoginService.CheckPolicy |
Zeigt einen Anmeldeversuch an. |
OS Login | google.cloud.oslogin.OsLoginService.v1.StartSession |
Gibt den Beginn einer OS Login-2FA-Herausforderung an |
OS Login | google.cloud.oslogin.OsLoginService.v1.ContinueSession |
Bedeutung: Die Bestätigung in zwei Schritten für OS Login wurde abgeschlossen. |
Compute Engine | v1.compute.projects.setCommonInstanceMetadata |
Wenn das Feld projectMetadataDelta einen Eintrag für „ssh-keys“ enthält, weist dieser Protokolleintrag darauf hin, dass ein SSH-Schlüssel in den Projektmetadaten hinzugefügt, entfernt oder geändert wurde.
|
Compute Engine | v1.compute.instances.setMetadata |
Wenn das Feld projectMetadataDelta einen Eintrag für „ssh-keys“ oder „sshKeys“ enthält, weist dieser Protokolleintrag darauf hin, dass ein SSH-Schlüssel in den Instanzmetadaten hinzugefügt, entfernt oder geändert wurde.
|
Compute Engine | google.ssh-serialport.v1.connect |
Gibt einen Verbindungsversuch zur seriellen Konsole an. |
IAM |
beta.compute.instances.setIamPolicy ,
v1.compute.instances.setIamPolicy
|
Gibt eine Änderung an der IAM-Richtlinie einer VM-Instanz an. Eine Änderung der IAM-Richtlinie kann sich darauf auswirken, ob Nutzer Instanzmetadaten ändern können. |
IAM |
SetIamPolicy |
Gibt eine Änderung an der IAM-Richtlinie eines Projekts an. Eine Änderung der IAM-Richtlinie kann sich darauf auswirken, ob Nutzer Projektmetadaten und die Konfiguration der Audit-Logs zum Datenzugriff des Projekts ändern können. |
Alle Audit-Logeinträge enthalten ein Feld principalEmail
, in dem das Hauptkonto angegeben ist, das die Aktivität initiiert hat.
Wenn Sie einen vollständigen Überblick über die Aktivitäten auf Ihren VMs erhalten möchten, konfigurieren Sie Ihre VMs so, dass /var/log/messages
- und SSH-Serverlogs nach Cloud Logging exportiert werden, z. B. mit dem Ops-Agent.
Je nach verwendeter Linux-Distribution werden SSH-Serverprotokolle möglicherweise in verschiedene Protokolldateien (normalerweise /var/log/auth.log
oder /var/log/secure
) geschrieben. Diese Protokolldateien sind nicht von der Standardkonfiguration von Ops Agent abgedeckt.