

# Configuración de la Protección de Integridad del Sistema para instancias de Mac de Amazon EC2
<a name="mac-sip-settings"></a>

Puede configurar los ajustes de Protección de Integridad del Sistema (SIP) para instancias Mac x86 e instancias Mac de silicio con Apple. SIP es una característica de seguridad crítica de macOS que ayuda a prevenir la ejecución de código no autorizado y las modificaciones a nivel del sistema. Para obtener más información, consulte [Acerca de la Protección de Integridad del Sistema](https://support.apple.com/en-us/102149).

Puede habilitar o deshabilitar SIP por completo, o puede habilitar o deshabilitar de forma selectiva determinadas configuraciones de SIP. Se recomienda deshabilitar el SIP solo temporalmente para realizar las tareas necesarias y, a continuación, volver a habilitarlo lo antes posible. Si se deshabilita el SIP, la instancia podría quedar vulnerable a códigos malintencionados.

La configuración SIP se admite en todas las regiones de AWS en las que se admiten las instancias de Mac de Amazon EC2.

**Topics**
+ [Consideraciones](#mac-sip-considerations)
+ [Configuraciones de SIP predeterminadas](#mac-sip-defaults)
+ [Comprobación de la configuración de SIP](#mac-sip-check-settings)
+ [Requisitos previos para las instancias de Mac de silicio con Apple](#mac-sip-prereqs)
+ [Configuración de los ajustes de SIP](#mac-sip-configure)
+ [Comprobación del estado de la tarea de configuración de SIP](#mac-sip-state)

## Consideraciones
<a name="mac-sip-considerations"></a>
+ Se admiten los siguientes tipos de instancias de Mac de Amazon EC2 y versiones de macOS:
  + **Mac1 \$1 Mac2 \$1 MAc2-m1ultra**: macOS Ventura (versión 13.0 o posterior)
  + **Mac2-m2 \$1 Mac2-m2pro**: macOS Ventura (versión 13.2 o posterior)
  + **Mac-m4 \$1 Mac-m4pro**: macOS Sequoia (versión 15.6 o posterior)
**nota**  
No se admiten las versiones beta y preliminar de macOS.
+ Puede especificar una configuración de SIP personalizada para habilitar o deshabilitar de forma selectiva las distintas configuraciones de SIP. Si implementa una configuración personalizada, [conéctese a la instancia y verifique la configuración](#mac-sip-check-settings) para asegurarse de que sus requisitos se implementan correctamente y funcionan según lo previsto.

  Las configuraciones de SIP pueden cambiar con las actualizaciones de macOS. Le recomendamos que revise la configuración de SIP personalizada después de actualizar la versión de macOS para garantizar la compatibilidad continua y el correcto funcionamiento de sus configuraciones de seguridad.
+ En el caso de las instancias de Mac x86, la configuración de SIP se aplica a nivel de instancia. Cualquier volumen raíz adjunto a la instancia heredará automáticamente la configuración de SIP configurada.

  En el caso de las instancias de Mac de silicio con Apple, la configuración de SIP se aplica a nivel de volumen. Los volúmenes raíz adjuntos a la instancia no heredan la configuración de SIP. Si conecta otro volumen raíz, debe volver a configurar los ajustes de SIP en el estado requerido.
+ Las tareas de configuración de SIP pueden tardar hasta 90 minutos en completarse. No se puede acceder a la instancia mientras se realiza la tarea de configuración de SIP.
+ Las configuraciones de SIP no se transfieren a las instantáneas ni a las AMI que se crean posteriormente a partir de la instancia.
+ Las instancias Mac de silicio con Apple solo deben tener un volumen de arranque y cada volumen adjunto solo puede tener un usuario administrador adicional.

## Configuraciones de SIP predeterminadas
<a name="mac-sip-defaults"></a>

En la siguiente tabla, se muestra la configuración de SIP predeterminada para las instancias Mac x86 y las instancias Mac de silicio con Apple.


|  | Instancias Mac de silicio con Apple | Instancias Mac x86 | 
| --- | --- | --- | 
| Apple Internal | Habilitado | Deshabilitado | 
| Protecciones del sistema de archivos | Habilitado | Deshabilitado | 
| Sistema base | Habilitado | Habilitado | 
| Restricciones de depuración | Habilitado | Habilitado | 
| Restricciones de Dtrace | Habilitado | Habilitado | 
| Firma de Kext | Habilitado | Habilitado | 
| Protecciones Nvram | Habilitado | Habilitado | 

## Comprobación de la configuración de SIP
<a name="mac-sip-check-settings"></a>

Le recomendamos que compruebe la configuración de SIP antes y después de realizar cambios para asegurarse de que está configurada según lo esperado.

**Cómo comprobar la configuración de SIP de una instancia de Mac de Amazon EC2**  
[Conéctese a la instancia mediante SSH](connect-to-mac-instance.md#mac-instance-ssh) y, a continuación, ejecute el siguiente comando en la línea de comandos.

```
$ csrutil status
```

A continuación, se muestra un ejemplo del resultado.

```
System Integrity Protection status: enabled.

Configuration:
    Apple Internal: enabled
    Kext Signing: disabled
    Filesystem Protections: enabled
    Debugging Restrictions: enabled
    DTrace Restrictions: enabled
    NVRAM Protections: enabled
    BaseSystem Verification: disabled
```

## Requisitos previos para las instancias de Mac de silicio con Apple
<a name="mac-sip-prereqs"></a>

Antes de poder configurar los ajustes de SIP para las instancias de Mac de silicio con Apple, debe establecer una contraseña y habilitar el token de seguridad para el usuario administrativo del volumen raíz de Amazon EBS (`ec2-user`).

**nota**  
La contraseña y el token de seguridad se configuran la primera vez que se conecta a una instancia Mac de silicio con Apple mediante la GUI. Si se [ha conectado previamente a la instancia mediante la GUI](connect-to-mac-instance.md#mac-instance-vnc) o si utiliza una instancia Mac x86, **no** necesita realizar estos pasos.

**nota**  
Todos los nombres de usuario y contraseñas de macOS utilizados para la autenticación de macOS deben tener entre 4 y 16 caracteres para poder usarlos con las llamadas a la API de configuración de SIP.

**Cómo establecer una contraseña y habilitar el token de seguridad para el usuario administrativo del volumen raíz de EBS**

1. [Conéctese a la instancia mediante SSH](connect-to-mac-instance.md#mac-instance-ssh).

1. Establezca la contraseña del usuario `ec2-user`.

   ```
   $ sudo /usr/bin/dscl . -passwd /Users/ec2-user
   ```

1. Habilite el token de seguridad para el usuario `ec2-user`. Para `-oldPassword`, especifique la misma contraseña del paso anterior. Para `-newPassword`, especifique una contraseña diferente. El siguiente comando supone que tiene las contraseñas anterior y nueva guardadas en archivos `.txt`.

   ```
   $ sysadminctl -oldPassword `cat old_password.txt` -newPassword `cat new_password.txt`
   ```

1. Compruebe que el token de seguridad esté habilitado.

   ```
   $ sysadminctl -secureTokenStatus ec2-user
   ```

## Configuración de los ajustes de SIP
<a name="mac-sip-configure"></a>

Al configurar los ajustes de SIP para la instancia, puede habilitar o deshabilitar todos los ajustes de SIP, o bien puede especificar una configuración personalizada que habilite o deshabilite ajustes de SIP específicos de forma selectiva.

**nota**  
Si implementa una configuración personalizada, [conéctese a la instancia y verifique la configuración](#mac-sip-check-settings) para asegurarse de que sus requisitos se implementan correctamente y funcionan según lo previsto.  
Las configuraciones de SIP pueden cambiar con las actualizaciones de macOS. Le recomendamos que revise la configuración de SIP personalizada después de actualizar la versión de macOS para garantizar la compatibilidad continua y el correcto funcionamiento de sus configuraciones de seguridad.

Para configurar los ajustes de SIP de su instancia, debe crear una tarea de configuración de SIP. La tarea de configuración de SIP especifica los ajustes de SIP de la instancia.

Cuando cree una configuración de SIP para una instancia de Mac de silicio con Apple, debe especificar las siguientes credenciales:
+ **Usuario administrativo del disco interno**
  + Nombre de usuario: solo se admite el usuario administrativo predeterminado (`aws-managed-user`) y se usa de forma predeterminada. No puede especificar un usuario administrativo diferente.
  + Contraseña: si no ha cambiado la contraseña predeterminada para `aws-managed-user`, especifique la contraseña predeterminada, que está *en blanco*. De lo contrario, especifique su contraseña.
+ **Usuario administrativo del volumen raíz de Amazon EBS**
  + Nombre de usuario: si no ha cambiado el usuario administrativo predeterminado, especifique `ec2-user`. De lo contrario, especifique el nombre de usuario de su usuario administrativo.
  + Contraseña: siempre debe especificar la contraseña.

Utilice los siguientes métodos para crear una tarea de configuración de SIP.

------
#### [ Console ]

**Cómo crear una tarea de configuración de SIP mediante la consola**

1. Abra la consola de Amazon EC2 en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. En el panel de navegación, elija **Instancias** y, luego, seleccione la instancia de Mac de Amazon EC2.

1. En la pestaña **Seguridad**, seleccione **Modificar Mac, Modificar la Protección de Integridad del Sistema**.

1. Para habilitar todos los ajustes de SIP, seleccione **Habilitar SIP**. Para deshabilitar todos los ajustes de SIP, desmarque **Habilitar SIP**.

1. Para especificar una configuración personalizada que habilite o deshabilite de forma selectiva ajustes específicos de SIP, seleccione **Especificar una configuración de SIP personalizada** y, a continuación, seleccione los ajustes de SIP que desee habilitar o desmarque los ajustes de SIP que desee deshabilitar.

1. Especifique las credenciales del usuario del volumen raíz y del propietario del disco interno.

1. Elija **Crear tarea de modificación de SIP**.

------
#### [ AWS CLI ]

**Cómo crear una tarea de configuración de SIP mediante la AWS CLI**  
Utilice el comando [create-mac-system-integrity-protection-modification-task](https://docs.aws.amazon.com/cli/latest/reference/ec2/create-mac-system-integrity-protection-modification-task.html).

**Cómo habilitar o deshabilitar todas las configuraciones de SIP**  
Para habilitar o deshabilitar por completo todas las configuraciones de SIP, utilice únicamente el parámetro `--mac-system-integrity-protection-status`.

El siguiente comando de ejemplo activa todas las configuraciones de SIP.

```
aws ec2 create-mac-system-integrity-protection-modification-task \
--instance-id i-0abcdef9876543210 \
--mac-system-integrity-protection-status enabled \
--mac-credentials file://mac-credentials.json
```

**Especificación de una configuración de SIP personalizada**  
Para especificar una configuración SIP personalizada que habilite o deshabilite de forma selectiva configuraciones SIP específicas, especifique los parámetros `--mac-system-integrity-protection-status` y `--mac-system-integrity-protection-configuration`. En este caso, utilice `mac-system-integrity-protection-status` para especificar el estado general del SIP y utilice `mac-system-integrity-protection-configuration` para habilitar o deshabilitar de forma selectiva las configuraciones SIP individuales.

En el siguiente comando de ejemplo, se crea una tarea de configuración de SIP para habilitar todas las configuraciones de SIP, excepto `NvramProtections` y `FilesystemProtections`.

```
aws ec2 create-mac-system-integrity-protection-modification-task \
--instance-id i-0abcdef9876543210 \
--mac-system-integrity-protection-status enabled \
--mac-system-integrity-protection-configuration "NvramProtections=disabled, FilesystemProtections=disabled" \
--mac-credentials file://mac-credentials.json
```

En el siguiente comando de ejemplo, se crea una tarea de configuración SIP para deshabilitar todas las configuraciones SIP, excepto `DtraceRestrictions`.

```
aws ec2 create-mac-system-integrity-protection-modification-task \
--instance-id i-0abcdef9876543210 \
--mac-system-integrity-protection-status disabled \
--mac-system-integrity-protection-configuration "DtraceRestrictions=enabled" \
--mac-credentials file://mac-credentials.json
```

**Contenido del archivo `mac-credentials.json`**  
A continuación, se presenta el contenido del archivo `mac-credentials.json` al que se hace referencia en los ejemplos siguientes.

```
{
  "internalDiskPassword":"internal-disk-admin_password",
  "rootVolumeUsername":"root-volume-admin_username",
  "rootVolumepassword":"root-volume-admin_password"
}
```

------

## Comprobación del estado de la tarea de configuración de SIP
<a name="mac-sip-state"></a>

Utilice uno de los siguientes métodos para comprobar el estado de las tareas de configuración de SIP.

------
#### [ Console ]

**Cómo ver las tareas de configuración de SIP mediante la consola**

1. Abra la consola de Amazon EC2 en [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. En el panel de navegación, elija **Instancias** y, luego, seleccione la instancia de Mac de Amazon EC2.

1. En la pestaña **Seguridad**, desplácese hacia abajo hasta la sección **Tareas de modificación de Mac**.

------
#### [ AWS CLI ]

**Cómo comprobar el estado de las tareas de configuración del SIP mediante la AWS CLI**  
Utilice el comando [describe-mac-modification-tasks](https://docs.aws.amazon.com/cli/latest/reference/ec2/describe-mac-modification-tasks.html).

------