Come crittografare i dischi virtuali in una VM di LinuxHow to encrypt virtual disks on a Linux VM

Per migliorare gli aspetti di sicurezza e conformità delle macchine virtuali (VM), i dischi virtuali in Azure possono essere crittografati.For enhanced virtual machine (VM) security and compliance, virtual disks in Azure can be encrypted. I dischi vengono crittografati usando chiavi di crittografia protette in un insieme di credenziali delle chiavi di Azure.Disks are encrypted using cryptographic keys that are secured in an Azure Key Vault. È possibile controllare queste chiavi di crittografia e il loro uso.You control these cryptographic keys and can audit their use. Questo articolo descrive come crittografare i dischi virtuali in una VM di Linux tramite l'interfaccia della riga di comando di Azure 2.0.This article details how to encrypt virtual disks on a Linux VM using the Azure CLI 2.0. È possibile anche eseguire questi passaggi tramite l'interfaccia della riga di comando di Azure 1.0.You can also perform these steps with the Azure CLI 1.0.

Comandi rapidiQuick commands

Se si necessita di eseguire rapidamente l'attività, nella sezione seguente sono illustrati i comandi di base per crittografare i dischi rigidi della VM.If you need to quickly accomplish the task, the following section details the base commands to encrypt virtual disks on your VM. Altre informazioni dettagliate e il contesto per ogni passaggio sono disponibili nelle sezioni successive del documento, a partire da qui.More detailed information and context for each step can be found the rest of the document, starting here.

È necessario aver installato l'interfaccia della riga di comando di Azure 2.0 e aver eseguito l'accesso a un account Azure tramite il comando az login.You need the latest Azure CLI 2.0 installed and logged in to an Azure account using az login. Nell'esempio seguente sostituire i nomi dei parametri di esempio con i valori desiderati.In the following examples, replace example parameter names with your own values. I nomi dei parametri di esempio includono myResourceGroup, myKey e myVM.Example parameter names include myResourceGroup, myKey, and myVM.

Per prima cosa, abilitare il provider dell'insieme di credenziali delle chiavi di Azure nella sottoscrizione di Azure con az provider register e creare un gruppo di risorse con az group create.First, enable the Azure Key Vault provider within your Azure subscription with az provider register and create a resource group with az group create. L'esempio seguente crea un nome del gruppo di risorse myResourceGroup nella località stati uniti orientali:The following example creates a resource group name myResourceGroup in the eastus location:

az provider register -n Microsoft.KeyVault
az group create --name myResourceGroup --location eastus

Creare un insieme di credenziali delle chiavi di Azure con az keyvault create e abilitare l'insieme di credenziali delle chiavi per l'utilizzo con crittografia del disco.Create an Azure Key Vault with az keyvault create and enable the Key Vault for use with disk encryption. Specificare un nome univoco di Key Vault per keyvault_name come indicato di seguito:Specify a unique Key Vault name for keyvault_name as follows:

keyvault_name=mykeyvaultikf
az keyvault create \
    --name $keyvault_name \
    --resource-group myResourceGroup \
    --location eastus \
    --enabled-for-disk-encryption True

Creare una chiave di crittografia nell'insieme di credenziali delle chiavi con az keyvault key create.Create a cryptographic key in your Key Vault with az keyvault key create. Nell'esempio seguente viene creata una chiave denominata myKey:The following example creates a key named myKey:

az keyvault key create --vault-name $keyvault_name --name myKey --protection software

Creare un'entità servizio usando Azure Active Directory con az ad sp creare-per-rbac.Create a service principal using Azure Active Directory with az ad sp create-for-rbac. L'entità servizio gestisce l'autenticazione e lo scambio di chiavi di crittografia dall'insieme di credenziali delle chiavi.The service principal handles the authentication and exchange of cryptographic keys from Key Vault. Nell'esempio seguente vengono letti i valori per l'ID e la password dell'entità servizio per l'uso nei comandi successivi:The following example reads in the values for the service principal Id and password for use in later commands:

read sp_id sp_password <<< $(az ad sp create-for-rbac --query [appId,password] -o tsv)

La password viene restituita solo quando si crea l'entità servizio.The password is only output when you create the service principal. Se lo si desidera, visualizzare e registrare la password (echo $sp_password).If desired, view and record the password (echo $sp_password). È possibile elencare le entità servizio con az ad sp list e visualizzare informazioni aggiuntive su un'entità servizio specifica con az ad sp show.You can list your service principals with az ad sp list and view additional information about a specific service principal with az ad sp show.

Impostare le autorizzazioni per l'insieme di credenziali delle chiavi con az keyvault set-policy.Set permissions on your Key Vault with az keyvault set-policy. Nell'esempio seguente l'ID dell'entità servizio viene fornita dal comando precedente:In the following example, the service principal ID is supplied from the preceding command:

az keyvault set-policy --name $keyvault_name --spn $sp_id \
    --key-permissions wrapKey \
    --secret-permissions set

Creare una macchina virtuale con az vm create e collegare un disco dati di 5 Gb.Create a VM with az vm create and attach a 5Gb data disk. Solo determinate immagini di marketplace supportano la crittografia del disco.Only certain marketplace images support disk encryption. Nell'esempio seguente viene creata una VM denominata myVM usando un'immagine CentOS 7.2n:The following example creates a VM named myVM using a CentOS 7.2n image:

az vm create \
    --resource-group myResourceGroup \
    --name myVM \
    --image OpenLogic:CentOS:7.2n:7.2.20160629 \
    --admin-username azureuser \
    --generate-ssh-keys \
    --data-disk-sizes-gb 5

SSH per la macchina virtuale tramite il valore publicIpAddress indicato nell'output dal comando precedente.SSH to your VM using the publicIpAddress shown in the output of the preceding command. Creare una partizione e un file system, quindi montare il disco dati.Create a partition and filesystem, then mount the data disk. Per ulteriori informazioni, vedere Connect to a Linux VM to mount the new disk (Connettersi a una VM Linux per montare il nuovo disco).For more information, see Connect to a Linux VM to mount the new disk. Chiudere la sessione SSH.Close your SSH session.

Crittografare la macchina virtuale con az vm encryption enable.Encrypt your VM with az vm encryption enable. Nell'esempio seguente vengono usate le variabili $sp_id e $sp_password dal comando precedente ad sp create-for-rbac:The following example uses the $sp_id and $sp_password variables from the preceding ad sp create-for-rbac command:

az vm encryption enable \
    --resource-group myResourceGroup \
    --name myVM \
    --aad-client-id $sp_id \
    --aad-client-secret $sp_password \
    --disk-encryption-keyvault $keyvault_name \
    --key-encryption-key myKey \
    --volume-type all

Il completamento del processo di crittografia del disco richiede qualche istante.It takes some time for the disk encryption process to complete. Monitorare lo stato del processo con z vm encryption show:Monitor the status of the process with az vm encryption show:

az vm encryption show --resource-group myResourceGroup --name myVM

Lo stato mostra EncryptionInProgress.The status shows EncryptionInProgress. Attendere che lo stato per il sistema operativo del disco indichi VMRestartPending, quindi riavviare la macchina virtuale con az vm restart:Wait until the status for the OS disk reports VMRestartPending, then restart your VM with az vm restart:

az vm restart --resource-group myResourceGroup --name myVM

Il processo di crittografia del disco è finalizzato durante il processo di avvio, pertanto, attendere alcuni minuti prima di verificare di nuovo lo stato della crittografia con az vm encryption show:The disk encryption process is finalized during the boot process, so wait a few minutes before checking the status of encryption again with az vm encryption show:

az vm encryption show --resource-group myResourceGroup --name myVM

Lo stato dovrebbe ora segnalare sia il disco del sistema operativo che il disco dati come Crittografato.The status should now report both the OS disk and data disk as Encrypted.

Panoramica della crittografia dei dischiOverview of disk encryption

I dischi virtuali delle VM Linux vengono crittografati a riposo mediante dm-crypt.Virtual disks on Linux VMs are encrypted at rest using dm-crypt. Non è previsto alcun addebito per la crittografia dei dischi virtuali in Azure.There is no charge for encrypting virtual disks in Azure. Le chiavi di crittografia vengono archiviate nell'insieme di credenziali delle chiavi di Azure che usano la protezione del software oppure è possibile importare o generare le chiavi in moduli di protezione hardware certificati per gli standard FIPS 140-2 di livello 2.Cryptographic keys are stored in Azure Key Vault using software-protection, or you can import or generate your keys in Hardware Security Modules (HSMs) certified to FIPS 140-2 level 2 standards. È possibile esercitare il controllo su queste chiavi di crittografia e sul loro uso.You retain control of these cryptographic keys and can audit their use. Queste chiavi di crittografia vengono usate per crittografare e decrittografare i dischi virtuali collegati alla VM.These cryptographic keys are used to encrypt and decrypt virtual disks attached to your VM. Un'entità servizio di Azure Active Directory offre un meccanismo protetto per il rilascio delle chiavi di crittografia all'accensione e allo spegnimento delle VM.An Azure Active Directory service principal provides a secure mechanism for issuing these cryptographic keys as VMs are powered on and off.

Il processo per la crittografia di una VM si articola nel modo seguente:The process for encrypting a VM is as follows:

  1. Creare una chiave di crittografia in un insieme di credenziali delle chiavi di Azure.Create a cryptographic key in an Azure Key Vault.
  2. Configurare la chiave di crittografia in modo da renderla utilizzabile per la crittografia dei dischi.Configure the cryptographic key to be usable for encrypting disks.
  3. Per leggere la chiave di crittografia dall'insieme di credenziali delle chiavi di Azure, creare un'entità servizio di Azure Active Directory con le autorizzazioni appropriate.To read the cryptographic key from the Azure Key Vault, create an Azure Active Directory service principal with the appropriate permissions.
  4. Eseguire il comando per crittografare i dischi virtuali, specificando l'entità servizio di Azure Active Directory e la chiave di crittografia appropriata da usare.Issue the command to encrypt your virtual disks, specifying the Azure Active Directory service principal and appropriate cryptographic key to be used.
  5. L'entità servizio di Azure Active Directory richiede la chiave di crittografia necessaria dall'insieme di credenziali delle chiavi di Azure.The Azure Active Directory service principal requests the required cryptographic key from Azure Key Vault.
  6. I dischi virtuali vengono crittografati tramite la chiave di crittografia fornita.The virtual disks are encrypted using the provided cryptographic key.

Processo di crittografiaEncryption process

La crittografia del disco si basa sui componenti aggiuntivi seguenti:Disk encryption relies on the following additional components:

  • Insieme di credenziali delle chiavi di Azure, che consente di proteggere le chiavi crittografiche e private usate per il processo di crittografia/decrittografia dei dischi.Azure Key Vault - used to safeguard cryptographic keys and secrets used for the disk encryption/decryption process.
    • Se disponibile, è possibile usare un insieme di credenziali delle chiavi di Azure esistente.If one exists, you can use an existing Azure Key Vault. Non è necessario dedicare un insieme di credenziali delle chiavi alla crittografia dei dischi.You do not have to dedicate a Key Vault to encrypting disks.
    • Per separare i limiti amministrativi e la visibilità delle chiavi, è possibile creare un insieme di credenziali delle chiavi dedicato.To separate administrative boundaries and key visibility, you can create a dedicated Key Vault.
  • Azure Active Directory gestisce lo scambio protetto delle chiavi di crittografia necessarie e dell'autenticazione per le azioni richieste.Azure Active Directory - handles the secure exchanging of required cryptographic keys and authentication for requested actions.
    • In genere, è possibile inserire l'applicazione in un'istanza esistente di Azure Active Directory.You can typically use an existing Azure Active Directory instance for housing your application.
    • L'entità servizio offre un meccanismo protetto per richiedere e consentire il rilascio delle chiavi di crittografia appropriate.The service principal provides a secure mechanism to request and be issued the appropriate cryptographic keys. Non si sta procedendo a sviluppare un'applicazione reale integrata con Azure Active Directory.You are not developing an actual application that integrates with Azure Active Directory.

Requisiti e limitazioniRequirements and limitations

Requisiti relativi alla crittografia dei dischi e scenari supportati:Supported scenarios and requirements for disk encryption:

  • I seguenti SKU dei server Linux: Ubuntu, CentOS, SUSE e SUSE Linux Enterprise Server (SLES) e Red Hat Enterprise Linux.The following Linux server SKUs - Ubuntu, CentOS, SUSE and SUSE Linux Enterprise Server (SLES), and Red Hat Enterprise Linux.
  • Tutte le risorse, come l'insieme di credenziali delle chiavi, l'account di archiviazione e la VM, devono risiedere nella stessa area e nella stessa sottoscrizione di Azure.All resources (such as Key Vault, Storage account, and VM) must be in the same Azure region and subscription.
  • VM standard delle serie A, D, DS, G e GS.Standard A, D, DS, G, and GS series VMs.

La crittografia del disco non è attualmente supportata negli scenari seguenti:Disk encryption is not currently supported in the following scenarios:

  • VM di base.Basic tier VMs.
  • VM create con il modello di distribuzione classica.VMs created using the Classic deployment model.
  • Disabilitare la crittografia del disco del sistema operativo nelle VM Linux.Disabling OS disk encryption on Linux VMs.
  • Aggiornare le chiavi di crittografia in una VM Linux già crittografata.Updating the cryptographic keys on an already encrypted Linux VM.

Creare le chiavi e l'insieme di credenziali delle chiavi di AzureCreate Azure Key Vault and keys

È necessario aver installato l'interfaccia della riga di comando di Azure 2.0 e aver eseguito l'accesso a un account Azure tramite il comando az login.You need the latest Azure CLI 2.0 installed and logged in to an Azure account using az login. Nell'esempio seguente sostituire i nomi dei parametri di esempio con i valori desiderati.In the following examples, replace example parameter names with your own values. I nomi dei parametri di esempio includono myResourceGroup, myKey e myVM.Example parameter names include myResourceGroup, myKey, and myVM.

Il primo passaggio consiste nel creare un insieme di credenziali delle chiavi di Azure in cui archiviare le chiavi di crittografia.The first step is to create an Azure Key Vault to store your cryptographic keys. L'insieme di credenziali delle chiavi di Azure consente di archiviare chiavi, chiavi private o password da implementare in tutta sicurezza in applicazioni e servizi.Azure Key Vault can store keys, secrets, or passwords that allow you to securely implement them in your applications and services. Per la crittografia del disco virtuale, usare l'insieme di credenziali delle chiavi per archiviare una chiave di crittografia usata per crittografare o decrittografare i dischi virtuali.For virtual disk encryption, you use Key Vault to store a cryptographic key that is used to encrypt or decrypt your virtual disks.

Abilitare il provider dell'insieme di credenziali delle chiavi di Azure nella sottoscrizione di Azure con az provider register e creare un gruppo di risorse con az group create.Enable the Azure Key Vault provider within your Azure subscription with az provider register and create a resource group with az group create. L'esempio seguente crea un nome del gruppo di risorse myResourceGroup nella posizione eastus:The following example creates a resource group name myResourceGroup in the eastus location:

az provider register -n Microsoft.KeyVault
az group create --name myResourceGroup --location eastus

L'insieme di credenziali delle chiavi di Azure contenente le chiavi di crittografia e le risorse di calcolo associate, come l'archiviazione e la VM stessa, devono risiedere nella stessa area.The Azure Key Vault containing the cryptographic keys and associated compute resources such as storage and the VM itself must reside in the same region. Creare un insieme di credenziali delle chiavi di Azure con az keyvault create e abilitare l'insieme di credenziali delle chiavi per l'utilizzo con crittografia del disco.Create an Azure Key Vault with az keyvault create and enable the Key Vault for use with disk encryption. Specificare un nome univoco di Key Vault per keyvault_name come indicato di seguito:Specify a unique Key Vault name for keyvault_name as follows:

keyvault_name=myUniqueKeyVaultName
az keyvault create \
    --name $keyvault_name \
    --resource-group myResourceGroup \
    --location eastus \
    --enabled-for-disk-encryption True

È possibile archiviare le chiavi di crittografia usando il software o il modulo di protezione hardware.You can store cryptographic keys using software or Hardware Security Model (HSM) protection. L'uso di un modulo di protezione hardware richiede un insieme di credenziali delle chiavi premium.Using an HSM requires a premium Key Vault. Esiste un costo aggiuntivo per creare un insieme di credenziali delle chiavi premium, anziché standard, in cui archiviare le chiavi protette tramite software.There is an additional cost to creating a premium Key Vault rather than standard Key Vault that stores software-protected keys. Per creare un insieme di credenziali delle chiavi premium, aggiungere --sku Premium al comando del passaggio precedente.To create a premium Key Vault, in the preceding step add --sku Premium to the command. L'esempio seguente usa chiavi protette tramite software, poiché viene creato un insieme di credenziali delle chiavi standard.The following example uses software-protected keys since we created a standard Key Vault.

Per entrambi i modelli di protezione, è necessario consentire alla piattaforma Azure di accedere all'avvio della VM per richiedere le chiavi di crittografia con cui decrittografare i dischi virtuali.For both protection models, the Azure platform needs to be granted access to request the cryptographic keys when the VM boots to decrypt the virtual disks. Creare una chiave di crittografia nell'insieme di credenziali delle chiavi con az keyvault key create.Create a cryptographic key in your Key Vault with az keyvault key create. Nell'esempio seguente viene creata una chiave denominata myKey:The following example creates a key named myKey:

az keyvault key create --vault-name $keyvault_name --name myKey --protection software

Creare un'entità servizio di Azure Active DirectoryCreate the Azure Active Directory service principal

Al momento di crittografare o decrittografare i dischi virtuali, specificare un account per gestisce l'autenticazione e lo scambio delle chiavi di crittografia dall'insieme di credenziali delle chiavi.When virtual disks are encrypted or decrypted, you specify an account to handle the authentication and exchanging of cryptographic keys from Key Vault. Tale account, un'entità servizio di Azure Active Directory, consente alla piattaforma Azure di richiedere le chiavi di crittografia appropriate per conto della VM.This account, an Azure Active Directory service principal, allows the Azure platform to request the appropriate cryptographic keys on behalf of the VM. Un'istanza di Azure Active Directory predefinita è già disponibile nella sottoscrizione, anche se molte organizzazioni hanno directory di Azure Active Directory dedicate.A default Azure Active Directory instance is available in your subscription, though many organizations have dedicated Azure Active Directory directories.

Creare un'entità servizio usando Azure Active Directory con az ad sp creare-per-rbac.Create a service principal using Azure Active Directory with az ad sp create-for-rbac. Nell'esempio seguente vengono letti i valori per l'ID e la password dell'entità servizio per l'uso nei comandi successivi:The following example reads in the values for the service principal Id and password for use in later commands:

read sp_id sp_password <<< $(az ad sp create-for-rbac --query [appId,password] -o tsv)

La password viene visualizzata solo quando si crea l'entità servizio.The password is only displayed when you create the service principal. Se lo si desidera, visualizzare e registrare la password (echo $sp_password).If desired, view and record the password (echo $sp_password). È possibile elencare le entità servizio con az ad sp list e visualizzare informazioni aggiuntive su un'entità servizio specifica con az ad sp show.You can list your service principals with az ad sp list and view additional information about a specific service principal with az ad sp show.

Per crittografare o decrittografare correttamente i dischi virtuali, le autorizzazioni per la chiave di crittografia archiviata nell'insieme di credenziali delle chiavi devono essere impostate in modo tale da consentire all'entità servizio di Azure Active Directory di leggere le chiavi.To successfully encrypt or decrypt virtual disks, permissions on the cryptographic key stored in Key Vault must be set to permit the Azure Active Directory service principal to read the keys. Impostare le autorizzazioni per l'insieme di credenziali delle chiavi con az keyvault set-policy.Set permissions on your Key Vault with az keyvault set-policy. Nell'esempio seguente l'ID dell'entità servizio viene fornita dal comando precedente:In the following example, the service principal ID is supplied from the preceding command:

az keyvault set-policy --name $keyvault_name --spn $sp_id \
  --key-permissions wrapKey \
  --secret-permissions set

Crea macchina virtualeCreate virtual machine

Per crittografare alcuni dischi virtuali, creare una VM e aggiungere un disco dati.To actually encrypt some virtual disks, lets create a VM and add a data disk. Creare una macchina virtuale da crittografare con az vm create e collegare un disco dati di 5 Gb.Create a VM to encrypt with az vm create and attach a 5Gb data disk. Solo determinate immagini di marketplace supportano la crittografia del disco.Only certain marketplace images support disk encryption. Nell'esempio seguente viene creata una VM denominata myVM tramite un'immagine di CentOS 7.2n:The following example creates a VM named myVM using a CentOS 7.2n image:

az vm create \
    --resource-group myResourceGroup \
    --name myVM \
    --image OpenLogic:CentOS:7.2n:7.2.20160629 \
    --admin-username azureuser \
    --generate-ssh-keys \
    --data-disk-sizes-gb 5

SSH per la macchina virtuale tramite il valore publicIpAddress indicato nell'output dal comando precedente.SSH to your VM using the publicIpAddress shown in the output of the preceding command. Creare una partizione e un file system, quindi montare il disco dati.Create a partition and filesystem, then mount the data disk. Per ulteriori informazioni, vedere Connect to a Linux VM to mount the new disk (Connettersi a una VM Linux per montare il nuovo disco).For more information, see Connect to a Linux VM to mount the new disk. Chiudere la sessione SSH.Close your SSH session.

Crittografare una macchina virtualeEncrypt virtual machine

Per crittografare i dischi virtuali, è necessario riunire tutti i componenti precedenti:To encrypt the virtual disks, you bring together all the previous components:

  1. Specificare un'entità servizio e la password di Azure Active Directory.Specify the Azure Active Directory service principal and password.
  2. Specificare l'insieme di credenziali delle chiavi in cui memorizzare i metadati dei dischi crittografati.Specify the Key Vault to store the metadata for your encrypted disks.
  3. Specificare le chiavi di crittografia da usare per la crittografia e la decrittografia effettive.Specify the cryptographic keys to use for the actual encryption and decryption.
  4. Specificare se si desidera crittografare il disco del sistema operativo, i dischi dati o tutti i dischi.Specify whether you want to encrypt the OS disk, the data disks, or all.

Crittografare la macchina virtuale con az vm encryption enable.Encrypt your VM with az vm encryption enable. Nell'esempio seguente vengono usate le variabili $sp_id e $sp_password dal comando precedente ad sp create-for-rbac:The following example uses the $sp_id and $sp_password variables from the preceding ad sp create-for-rbac command:

az vm encryption enable \
    --resource-group myResourceGroup \
    --name myVM \
    --aad-client-id $sp_id \
    --aad-client-secret $sp_password \
    --disk-encryption-keyvault $keyvault_name \
    --key-encryption-key myKey \
    --volume-type all

Il completamento del processo di crittografia del disco richiede qualche istante.It takes some time for the disk encryption process to complete. Monitorare lo stato del processo con z vm encryption show:Monitor the status of the process with az vm encryption show:

az vm encryption show --resource-group myResourceGroup --name myVM

L'output è simile all'esempio troncato seguente:The output is similar to the following truncated example:

[
  "dataDisk": "EncryptionInProgress",
  "osDisk": "EncryptionInProgress",
]

Attendere che lo stato per il sistema operativo del disco indichi VMRestartPending, quindi riavviare la macchina virtuale con az vm restart:Wait until the status for the OS disk reports VMRestartPending, then restart your VM with az vm restart:

az vm restart --resource-group myResourceGroup --name myVM

Il processo di crittografia del disco è finalizzato durante il processo di avvio, pertanto, attendere alcuni minuti prima di verificare di nuovo lo stato della crittografia con az vm encryption show:The disk encryption process is finalized during the boot process, so wait a few minutes before checking the status of encryption again with az vm encryption show:

az vm encryption show --resource-group myResourceGroup --name myVM

Lo stato dovrebbe ora segnalare sia il disco del sistema operativo che il disco dati come Crittografato.The status should now report both the OS disk and data disk as Encrypted.

Aggiungere ulteriori dischi datiAdd additional data disks

Una volta crittografati i dischi dati, in un secondo momento è possibile aggiungere alla VM ulteriori dischi virtuali e anche crittografarli.Once you have encrypted your data disks, you can later add additional virtual disks to your VM and also encrypt them. Ad esempio, consente di aggiungere alla VM un secondo disco virtuale, come di seguito:For example, lets add a second virtual disk to your VM as follows:

az vm disk attach-new --resource-group myResourceGroup --vm-name myVM --size-in-gb 5

Eseguire nuovamente il comando per crittografare i dischi virtuali come indicato di seguito:Re-run the command to encrypt the virtual disks as follows:

az vm encryption enable \
    --resource-group myResourceGroup \
    --name myVM \
    --aad-client-id $sp_id \
    --aad-client-secret $sp_password \
    --disk-encryption-keyvault $keyvault_name \
    --key-encryption-key myKey \
    --volume-type all

Passaggi successiviNext steps