En este documento se describen las prácticas recomendadas para auditar el acceso SSH a instancias de máquinas virtuales (VM) Linux.
Los registros de auditoría de Cloud te permiten analizar la actividad anterior y pueden ser una fuente de información importante cuando investigas actividad sospechosa que afecta a tusGoogle Cloud recursos.
En las siguientes secciones se incluyen prácticas recomendadas que pueden ayudarte a mantener una pista de auditoría irrefutable:
- Habilitar los registros de acceso a datos para la compra en la aplicación
- Monitorizar las entradas del registro de auditoría relacionadas con el uso de SSH
El documento se centra en las prácticas que son específicas de Google Cloud o de especial relevancia cuando se usa SSH en Google Cloud. El documento no abarca las prácticas recomendadas para implementaciones específicas de clientes o servidores SSH.
Habilitar registros de acceso a datos para IAP
Para asegurarte de que IAP añade una entrada a los registros de auditoría de Cloud cada vez que un usuario intenta establecer una conexión SSH, habilita los registros de acceso a datos de la API Cloud Identity-Aware Proxy. Los registros de acceso a datos están inhabilitados de forma predeterminada. A menos que te preocupe el volumen de registros, habilita los registros de acceso a los datos en todos los proyectos que contengan instancias de VM.
Monitorizar las entradas del registro de auditoría relacionadas con el uso de SSH
El uso de SSH puede afectar a la seguridad de las VMs y sus cargas de trabajo, por lo que es importante mantener un registro de auditoría tanto de los intentos de conexión correctos como de los intentos de acceso fallidos. Esto es especialmente importante en entornos de producción, donde el uso de SSH debe considerarse una acción sensible.
Para monitorizar el acceso SSH y, posiblemente, detectar comportamientos sospechosos, asegúrate de monitorizar las entradas de registro relacionadas con SSH, incluidas las siguientes:
Servicio | Método | Descripción |
---|---|---|
IAP | AuthorizeUser |
Indica un intento de conexión a través del reenvío de TCP de IAP. Las entradas de registro contienen detalles sobre el dispositivo del usuario, los niveles de acceso satisfechos y los niveles de acceso no satisfechos. |
OS Login | google.cloud.oslogin.dataplane.OsLoginDataPlaneService.CheckPolicy |
Indica un intento de inicio de sesión. |
OS Login | google.cloud.oslogin.dataplane.OsLoginDataPlaneService.StartSession |
Indica el inicio de un reto de autenticación de dos factores de OS Login |
OS Login | google.cloud.oslogin.dataplane.OsLoginDataPlaneService.ContinueSession |
Indica que se ha completado un reto de autenticación de dos factores de OS Login |
Compute Engine | v1.compute.projects.setCommonInstanceMetadata |
Si el campo projectMetadataDelta contiene una entrada para `ssh-keys`, esta entrada de registro indica que se ha añadido, eliminado o modificado una clave SSH en los metadatos del proyecto.
|
Compute Engine | v1.compute.instances.setMetadata |
Si el campo projectMetadataDelta contiene una entrada para `ssh-keys` o `sshKeys`,
esta entrada de registro indica que se ha añadido, eliminado o modificado una clave SSH
en los metadatos de la instancia.
|
Compute Engine | google.ssh-serialport.v1.connect |
Indica un intento de conexión a la consola en serie. |
Gestión de identidades y accesos |
beta.compute.instances.setIamPolicy ,
v1.compute.instances.setIamPolicy
|
Indica un cambio en la política de gestión de identidades y accesos de una instancia de VM. Un cambio en una política de IAM puede afectar a la capacidad de los usuarios para modificar los metadatos de las instancias. |
Gestión de identidades y accesos |
SetIamPolicy |
Indica un cambio en la política de gestión de identidades y accesos de un proyecto. Un cambio en una política de gestión de identidades y accesos puede afectar a la capacidad de los usuarios para modificar los metadatos del proyecto y la configuración de los registros de auditoría de acceso a datos del proyecto. |
Todos los registros de auditoría contienen un campo principalEmail
que identifica la entidad de seguridad que ha iniciado la actividad.
Para obtener una visión completa de la actividad de tus VMs, configúralas para que exporten los registros del servidor /var/log/messages
y SSH a Cloud Logging. Por ejemplo, puedes usar el Agente de operaciones.
Ten en cuenta que, en función de la distribución de Linux que utilices, los registros del servidor SSH se pueden escribir en archivos de registro diferentes (normalmente, /var/log/auth.log
o /var/log/secure
) y que estos archivos de registro no están cubiertos por la configuración predeterminada que usa Ops Agent.