AWS Systems Manager Session Manager
Session Manager è completamente gestito dalla funzione AWS Systems Manager. Con Session Manager puoi gestire le istanze Amazon Elastic Compute Cloud (Amazon EC2), dispositivi edge, server on-premise e macchine virtuali (VM). Puoi utilizzare sia una shell interattiva one-clic basata su browser o un AWS Command Line Interface (AWS CLI). Session Manager fornisce una gestione dei nodi sicura e controllabile senza la necessità di aprire porte in ingresso, mantenere bastion host e gestire chiavi SSH. Session Manager facilita inoltre l'ottemperanza alle policy aziendali che richiedono l'accesso controllato ai nodi gestiti, severe pratiche di sicurezza e registri di accesso completamente controllabili con i dettagli di accesso al nodo, garantendo allo stesso tempo agli utenti finali un semplice accesso multipiattaforma one-clic ai nodi gestiti. Per iniziare a utilizzare Session Manager, apri la console di Systems Manager
Quali sono i vantaggi di Session Manager per la mia azienda?
Session Manager offre questi vantaggi:
-
Controllo degli accessi centralizzato ai nodi che utilizzano policy IAM
Gli amministratori dispongono di un'unica posizione da cui concedere e revocare l'accesso ai nodi gestiti. Utilizzando solo policy AWS Identity and Access Management (IAM), puoi controllare quali utenti singoli o gruppi della tua organizzazione possono utilizzare Session Manager e a quali nodi gestiti possono accedere.
-
Nessuna porta in entrata aperta e nessuna necessità di gestire bastion host o chiavi SSH
Lasciando le porte PowerShell remote o SSH in entrata aperte sui nodi gestiti aumenta notevolmente il rischio che le entità eseguano comandi non autorizzati o dannosi sui nodi gestiti. Il Session Manager ti aiuta a migliorare la tua posizione di sicurezza consentendoti di chiudere le porte in entrata e liberandoti quindi dalla gestione di certificati e chiavi SSH, bastion host e jumpbox.
-
Accesso con un clic ai nodi gestiti dalla console e dall'interfaccia a riga di comando (CLI)
Utilizzando la console AWS Systems Manager o Amazon EC2, puoi avviare una sessione con un solo clic. Utilizzando AWS CLI, puoi anche avviare una sessione che esegue un singolo comando o una sequenza di comandi. Poiché le autorizzazioni ai nodi gestiti vengono fornite tramite le policy IAM anziché le chiavi SSH o altri meccanismi, il tempo di connessione viene notevolmente ridotto.
-
Connessione sia alle istanze Amazon EC2 che ai nodi gestiti in ambienti ibridi e nel cloud
È possibile connettersi sia a istanze Amazon Elastic Compute Cloud (Amazon EC2) che a nodi non EC2 in ambienti ibridi, inclusi server on-premise, dispositivi edge supportati e macchine virtuali (VM) fornite da altri fornitori di servizi cloud.
Per connettersi a nodi non EC2 utilizzando Session Manager, è necessario innanzitutto attivare il piano istanze avanzate. Viene addebitato un costo per l'utilizzo del livello dei parametri avanzati. Non sono però previsti costi aggiuntivi per la connessione alle istanze EC2 tramite Session Manager. Per informazioni, consultare Configurazione dei livelli di istanza.
-
Inoltro alla porta
Reindirizzare qualsiasi porta all'interno del nodo gestito a una porta locale su un client. Successivamente, connettersi alla porta locale e accedere all'applicazione server in esecuzione all'interno del nodo.
-
Supporto multipiattaforma per Windows , Linux e macOS
Session Manager fornisce supporto per Windows , Linux e macOS da un unico strumento. Ad esempio, non è necessario utilizzare un client SSH per Linux e nodi gestiti macOS o una connessione RDP per i nodi gestiti Windows Server.
-
Registrazione e controllo delle attività delle sessioni
Per soddisfare i requisiti operativi o di sicurezza della tua organizzazione, potresti dover fornire un registro delle connessioni effettuate ai nodi gestiti e dei comandi che sono stati eseguiti su di essi. Puoi anche ricevere notifiche quando un utente nella tua organizzazione inizia o termina un'attività della sessione.
Le funzionalità di registrazione e verifica vengono fornite tramite l'integrazione con i seguenti Servizi AWS:
-
AWS CloudTrail – AWS CloudTrail acquisisce informazioni sulle chiamate API del Session Manager effettuate nel tuo account Account AWS e le scrive nei file di log archiviati in un bucket Amazon Simple Storage Service (Amazon S3) da te specificato. Per tutti i registri CloudTrail dell'account viene utilizzato un solo bucket. Per ulteriori informazioni, consulta Registrazione delle chiamate API AWS Systems Manager con AWS CloudTrail.
-
Amazon Simple Storage Service: puoi decidere di archiviare i dati di log delle sessioni in un bucket Amazon S3 di tua scelta a scopi di debug e risoluzione dei problemi. I dati di log possono essere inviati al tuo bucket Amazon S3 con o senza crittografia utilizzando la tua chiave AWS KMS key. Per ulteriori informazioni, consulta Registrazione dei dati delle sessioni mediante Amazon S3 (console).
-
File di log Amazon CloudWatch: File di log di CloudWatch ti consente di monitorare, archiviare e accedere ai file di log da diversi Servizi AWS. Puoi inviare i dati di log delle sessioni a un gruppo di log CloudWatch Logs a scopi di debug e risoluzione dei problemi. I dati di log possono essere inviati al tuo gruppo di log con o senza crittografia AWS KMS utilizzando la tua chiave KMS. Per ulteriori informazioni, consulta Registrazione dei dati delle sessioni mediante Amazon CloudWatch Logs (console).
-
Amazon EventBridge e Amazon Simple Notification Service: EventBridge ti consente di impostare regole per rilevare quando vengono apportate modifiche alle risorse AWS specificate. Puoi creare una regola per rilevare quando un utente della tua organizzazione avvia o arresta una sessione e quindi ricevere una notifica tramite Amazon SNS (ad esempio, un testo o un messaggio e-mail) sull'evento. Puoi anche configurare un evento CloudWatch per attivare altre risposte. Per ulteriori informazioni, consulta Monitoraggio dell'attività delle sessioni tramite Amazon EventBridge (console) .
Nota La registrazione non è disponibile per sessioni Session Manager che si connettono tramite port forwarding o SSH. Questo perché SSH crittografa tutti i dati di sessione e Session Manager serve solo come tunnel per le connessioni SSH.
-
Chi deve utilizzare Session Manager?
-
Qualsiasi cliente AWS che desideri migliorare la propria sicurezza e il livello di verifica, ridurre l'overhead operativo centralizzando il controllo accessi sui nodi gestiti e ridurre l'accesso ai nodi in entrata.
-
Gli esperti di sicurezza delle informazioni che desiderano monitorare e tracciare l'accesso e le attività dei nodi e chiudere le porte in entrata sui nodi gestiti o permettere le connessioni ai nodi gestiti che non dispongono di un indirizzo IP pubblico.
-
Gli amministratori che desiderano concedere e revocare l'accesso da una singola postazione e fornire agli utenti una soluzione per i nodi gestiti da Linux, macOS e Windows Server.
-
Gli utenti finali che desiderano connettersi a un nodo gestito con un solo clic dal browser o dalla AWS CLI senza dover fornire le chiavi SSH.
Quali sono le caratteristiche principali del Session Manager?
-
Supporto per Windows Server, Linux e nodi gestiti macOS
Session Manager consente di stabilire connessioni protette alle istanze Amazon Elastic Compute Cloud (EC2), ai dispositivi edge, ai server on-premise e alle macchine virtuali (VM). Per un elenco dei tipi di sistema operativo dell'istanza supportati, consulta Configurazione di Session Manager.
Nota Il supporto Session Manager per server on-premise è fornito solo per il piano istanze avanzate. Per informazioni, consultare Attivazione del piano istanze avanzate.
-
Accesso alle funzionalità del Session Manager tramite console, interfaccia a riga di comando (CLI) e SDK
Puoi utilizzare Session Manager nei modi seguenti:
La console AWS Systems Manager include l'accesso a tutte le funzionalità del Session Manager sia per gli amministratori sia per gli utenti finali. Tramite la console Systems Manager, puoi eseguire qualsiasi processo correlato alle tue sessioni.
La console Amazon EC2 consente agli utenti finali di connettersi alle istanze EC2 per le quali sono state concesse autorizzazioni di sessione.
AWS CLI include l'accesso alle funzionalità del Session Manager per gli utenti finali. Tramite AWS CLI, puoi avviare una sessione, visualizzare un elenco di sessioni e terminare definitivamente una sessione.
Nota Per utilizzare AWS CLI per eseguire i comandi della sessione, devi utilizzare la versione 1.16.12 o successiva della CLI e sul computer locale deve essere installato il plug-in Session Manager. Per informazioni, consultare (Facoltativo) Installazione del plugin Session Manager per la AWS CLI.
L'SDK del Session Manager è composto da librerie e codice di esempio che consentono agli sviluppatori di costruire applicazioni front-end, ad esempio shell personalizzate o portali self-service per gli utenti interni che utilizzano il Session Manager in modo nativo per connettersi ai nodi gestiti. Gli sviluppatori e i partner possono integrare il Session Manager nei propri strumenti lato client o nei propri flussi di lavoro di automazione tramite le API del Session Manager. Puoi anche creare soluzioni personalizzate.
-
Controllo degli accessi (IAM)
Mediante le policy IAM, puoi controllare quali membri della tua organizzazione possono avviare sessioni ai nodi gestiti e a quali nodi possono accedere. Puoi anche fornire un accesso temporaneo ai tuoi nodi gestiti. Ad esempio, puoi assegnare a un tecnico reperibile (o a un gruppo di tecnici reperibili) l'accesso al server di produzione solo per la durata della loro rotazione.
-
Supporto delle funzionalità di registrazione e verifica
Session Manager fornisce le opzioni per il verifica e la registrazione delle cronologie delle sessioni nell'account Account AWS attraverso l'integrazione con diversi altri Servizi AWS. Per ulteriori informazioni, consulta Verifica dell'attività delle sessioni e Attività di registrazione delle sessioni.
-
Profili della shell configurabili
Session Manager fornisce opzioni per configurare le preferenze all'interno delle sessioni. Questi profili personalizzabili permettono di definire preferenze quali le preferenze della shell, le variabili di ambiente, le directory di lavoro ed eseguire più comandi all'avvio di una sessione.
-
Supporto per la crittografia dei dati della chiave del cliente
È possibile configurare Session Manager per crittografare i log dei dati delle sessioni inviati a un bucket Amazon Simple Storage Service (Amazon S3) o tramite streaming a un gruppo di log CloudWatch Logs. Puoi anche configurare Session Manager per crittografare ulteriormente i dati trasmessi tra computer client e i tuoi nodi gestiti durante le sessioni. Per informazioni, consulta Attività di registrazione delle sessioni e Configurare le preferenze delle sessioni.
-
Supporto AWS PrivateLink per i nodi gestiti senza indirizzi IP pubblici
È anche possibile configurare endpoint VPC per Systems Manager utilizzando AWS PrivateLink per proteggere ulteriormente le sessioni. AWS PrivateLink limita il traffico di rete tra i nodi gestiti, Systems Manager e Amazon EC2 alla rete Amazon. Per ulteriori informazioni, consulta Creazione di endpoint VPC.
-
Tunneling
In una sessione, utilizza un documento SSM di tipo sessione AWS Systems Manager per creare un tunnel del traffico, ad esempio http o un protocollo personalizzato, tra una porta locale su un computer client e una porta remota su un nodo gestito.
-
Comandi interattivi
Crea un documento SSM di tipo sessione che utilizza una sessione per eseguire in modo interattivo un singolo comando, offrendo un modo per gestire ciò che gli utenti possono eseguire su un nodo gestito.
Che cos'è una sessione?
Una sessione è una connessione effettuata a un nodo gestito utilizzando Session Manager. Le sessioni si basano su un canale di comunicazione bidirezionale sicuro tra il client (l'utente) e il nodo gestito remoto che trasmette input e output per i comandi. Il traffico tra un client e un nodo gestito viene crittografato utilizzando TLS 1.2 e le richieste per creare la connessione sono firmate utilizzando Sigv4. Questa comunicazione bidirezionale consente l'accesso interattivo bash e PowerShell ai nodi gestiti. È possibile utilizzare anche una chiave AWS Key Management Service (AWS KMS) per crittografare ulteriormente i dati oltre la crittografia TLS predefinita.
Ad esempio, supponi che John sia un tecnico reperibile del tuo reparto IT. Riceve una notifica di un problema che richiede di connettersi da remoto a un nodo gestito, ad esempio un errore che richiede la risoluzione del problema o una direttiva per modificare una semplice opzione di configurazione su un nodo gestito. Tramite console AWS Systems Manager, la console Amazon EC2 o la AWS CLI, John avvia una sessione per collegarsi al nodo gestito, esegue sul nodo i comandi necessari per completare il processo, quindi termina la sessione.
Quando John invia il primo comando per avviare la sessione, il servizio Session Manager autentica il suo ID, verifica le autorizzazioni concesse da una policy IAM, controlla le impostazioni di configurazione (ad esempio verifica i limiti consentiti per le sessioni) e invia un messaggio all'SSM Agent per aprire il collegamento bidirezionale. Una volta stabilita la connessione e dopo aver digitato il comando successivo, l'output del comando da parte dell'SSM Agent viene caricato su questo canale di comunicazione e inviato nuovamente al computer locale di John.
Argomenti