Consenti profili shell configurabili - AWS Systems Manager

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Consenti profili shell configurabili

Per impostazione predefinita, le sessioni sulle istanze EC2 per Linux iniziano utilizzando la shell Bourne (sh). Tuttavia, potresti usare un'altra shell come bash. Consentendo i profili di shell configurabili, è possibile personalizzare le preferenze all'interno di sessioni quali le preferenze della shell, le variabili di ambiente, le directory di lavoro ed eseguire più comandi all'avvio di una sessione.

Importante

Systems Manager non controlla i comandi o gli script nel profilo della shell per vedere quali modifiche apporterebbero a un'istanza prima dell'esecuzione. Per limitare la capacità di un utente di modificare i comandi o gli script immessi nel profilo della shell, si consiglia quanto segue:

  • Creare un documento personalizzato di tipo sessione per gli utenti e i ruoli AWS Identity and Access Management (IAM). Modificare quindi la policy IAM per questi utenti e ruoli in modo che l'operazione API StartSession possa utilizzare solo il documento di tipo sessione creato per loro. Per informazioni, consulta Creare un documento di preferenze di Session Manager (riga di comando) e Policy di avvio rapido per utenti finali per Session Manager.

  • Modifica la policy IAM per gli utenti e i ruoli IAM per negare l'accesso all'operazione API UpdateDocument per la risorsa documento di tipo sessione creata. Ciò consente agli utenti e ai ruoli di utilizzare il documento creato per le preferenze di sessione senza consentire loro di modificare alcuna delle impostazioni.

Per attivare i profili di shell configurabili
  1. Aprire la console AWS Systems Manager all'indirizzo https://console.aws.amazon.com/systems-manager/.

  2. Nel pannello di navigazione, scegliere Session Manager.

  3. Scegli la scheda Preferences (Preferenze), quindi seleziona Edit (Modifica).

  4. Specifica le variabili di ambiente, le preferenze della shell o i comandi che si desidera eseguire all'avvio della sessione nei campi relativi ai sistemi operativi applicabili.

  5. Seleziona Salva.

Di seguito sono riportati alcuni comandi di esempio che possono essere aggiunti al profilo della shell.

Passa alla shell bash e passa alla directory /usr sulle istanze Linux.

exec /bin/bash cd /usr

Invia un timestamp e un messaggio di benvenuto all'avvio di una sessione.

Linux & macOS
timestamp=$(date '+%Y-%m-%dT%H:%M:%SZ') user=$(whoami) echo $timestamp && echo "Welcome $user"'!' echo "You have logged in to a production instance. Note that all session activity is being logged."
Windows
$timestamp = (Get-Date).ToString("yyyy-MM-ddTH:mm:ssZ") $splitName = (whoami).Split("\") $user = $splitName[1] Write-Host $timestamp Write-Host "Welcome $user!" Write-Host "You have logged in to a production instance. Note that all session activity is being logged."

Visualizzare l'attività dinamica del sistema all'avvio di una sessione.

Linux & macOS
top
Windows
while ($true) { Get-Process | Sort-Object -Descending CPU | Select-Object -First 30; ` Start-Sleep -Seconds 2; cls Write-Host "Handles NPM(K) PM(K) WS(K) VM(M) CPU(s) Id ProcessName"; Write-Host "------- ------ ----- ----- ----- ------ -- -----------"}