PowerShell rappresenta uno degli strumenti fondamentali per l’amministrazione moderna degli ambienti Windows Server. Consente di configurare sistemi, installare ruoli e funzionalità, gestire servizi, utenti, rete e storage, raccogliere informazioni diagnostiche e automatizzare attività amministrative ripetitive.
Il corso PowerShell per Windows Server 2025 fornisce le competenze necessarie per utilizzare PowerShell nelle attività quotidiane di amministrazione dei server Microsoft.
Il percorso non si limita alla sintassi del linguaggio, ma mostra come applicare comandi, pipeline e script alla gestione concreta di Windows Server 2025. I partecipanti lavoreranno su esempi relativi alla configurazione del sistema operativo, ai servizi, agli account, alla rete, allo storage, ai ruoli server e all’amministrazione remota.
Windows Server 2025 dispone di una specifica raccolta di moduli PowerShell destinati alla configurazione, alla manutenzione e all’amministrazione delle funzionalità del sistema operativo. Microsoft documenta inoltre la compatibilità di numerosi moduli di gestione di Windows Server con PowerShell 7.
Particolare attenzione sarà dedicata alla gestione remota, alla produzione di report amministrativi, alla gestione degli errori e alla costruzione di script riutilizzabili e sicuri.
Il corso è rivolto a:
- amministratori di sistema;
- sistemisti Windows;
- tecnici help desk di secondo livello;
- amministratori di infrastrutture Microsoft;
- personale IT responsabile della gestione di server fisici e virtuali;
- professionisti che utilizzano prevalentemente strumenti grafici e intendono introdurre PowerShell nelle proprie attività operative;
- tecnici che desiderano prepararsi a successivi percorsi di automazione avanzata.
Al termine del percorso i partecipanti saranno in grado di:
- utilizzare PowerShell per amministrare Windows Server 2025;
- individuare comandi, moduli, parametri ed esempi disponibili;
- interrogare e filtrare le informazioni restituite dal sistema;
- utilizzare correttamente pipeline, variabili, operatori e strutture di controllo;
- installare e rimuovere ruoli e funzionalità di Windows Server;
- amministrare processi, servizi, eventi e attività pianificate;
- gestire account locali, gruppi e autorizzazioni;
- configurare elementi di rete e storage;
- raccogliere informazioni su hardware, sistema operativo e configurazione;
- eseguire comandi su uno o più server remoti;
- importare ed esportare dati nei principali formati;
- creare script amministrativi riutilizzabili;
- gestire errori, registrazione delle attività e troubleshooting;
- applicare criteri di base per la sicurezza degli script e delle sessioni remote.
1. Introduzione a PowerShell in Windows Server 2025
- ruolo di PowerShell nell’amministrazione di Windows Server;
- differenze tra Prompt dei comandi, Windows PowerShell e PowerShell 7;
- Windows PowerShell 5.1 e PowerShell 7;
- compatibilità dei moduli di Windows Server;
- console PowerShell;
- Windows Terminal;
- Visual Studio Code e PowerShell Extension;
- esecuzione come amministratore;
- Execution Policy;
- profili PowerShell;
- struttura dei comandi PowerShell;
- convenzione verbo-sostantivo.
2. Individuazione e utilizzo dei comandi
- utilizzo di
Get-Command;
- ricerca dei cmdlet per verbo, nome e modulo;
- utilizzo di
Get-Help;
- aggiornamento della guida locale;
- sintassi, parametri ed esempi;
- parametri obbligatori e facoltativi;
- parametri posizionali e denominati;
- utilizzo di
Get-Member;
- individuazione delle proprietà e dei metodi degli oggetti;
- PowerShell Module Browser e documentazione Microsoft.
3. Oggetti, pipeline e gestione dei risultati
- modello a oggetti di PowerShell;
- proprietà, metodi e tipi di dati;
- funzionamento della pipeline;
- passaggio degli oggetti tra comandi;
- selezione delle proprietà con
Select-Object;
- ordinamento con
Sort-Object;
- filtraggio con
Where-Object;
- enumerazione con
ForEach-Object;
- raggruppamento e misurazione dei risultati;
- formattazione tabellare e a elenco;
- differenza tra selezione, formattazione ed esportazione;
- costruzione di pipeline amministrative efficienti.
4. Variabili, operatori e strutture di controllo
- definizione e utilizzo delle variabili;
- stringhe, numeri, date, array e hash table;
- conversione dei tipi di dati;
- operatori di confronto;
- operatori logici;
- operatori di corrispondenza;
- condizioni
if, elseif ed else;
- istruzione
switch;
- cicli
foreach, for, while e do;
- utilizzo degli array nelle attività amministrative;
- elaborazione di elenchi di server, utenti e servizi.
5. Gestione del sistema operativo e dell’hardware
- raccolta delle informazioni sul sistema;
- informazioni su sistema operativo, hardware e memoria;
- utilizzo dei cmdlet CIM;
- query CIM e WMI;
- gestione di processi e applicazioni;
- avvio e arresto dei processi;
- gestione dei servizi Windows;
- configurazione del tipo di avvio;
- variabili di ambiente;
- consultazione del registro di sistema;
- gestione di chiavi e valori del registro;
- inventario della configurazione dei server.
6. Ruoli e funzionalità di Windows Server 2025
- utilizzo del modulo ServerManager;
- individuazione dei ruoli installati;
- utilizzo di
Get-WindowsFeature;
- installazione di ruoli e funzionalità;
- utilizzo di
Install-WindowsFeature;
- rimozione di ruoli e funzionalità;
- inclusione degli strumenti di gestione;
- installazione automatizzata su server remoti;
- verifica dello stato dell’installazione;
- esportazione della configurazione;
- controllo della conformità tra più server.
Il modulo ServerManager comprende i cmdlet specifici per l’installazione, la rimozione e la verifica dei ruoli e delle funzionalità di Windows Server.
7. Gestione di file, cartelle e autorizzazioni
- navigazione nel file system;
- PowerShell Provider;
- creazione, copia, spostamento e rimozione di file e cartelle;
- ricerca di file;
- gestione delle proprietà dei file;
- elaborazione ricorsiva delle directory;
- controllo dello spazio occupato;
- lettura e scrittura di file di testo;
- gestione di percorsi locali e UNC;
- introduzione alle autorizzazioni NTFS;
- lettura delle Access Control List;
- utilizzo di
Get-Acl e Set-Acl;
- produzione di report sulle autorizzazioni;
- individuazione di file obsoleti o di grandi dimensioni.
8. Amministrazione di dischi e storage
- individuazione di dischi e volumi;
- inizializzazione dei dischi;
- creazione e formattazione delle partizioni;
- gestione delle lettere di unità;
- controllo dello spazio disponibile;
- gestione dei volumi;
- individuazione di condizioni critiche;
- raccolta di informazioni sullo storage;
- automazione dei controlli periodici;
- produzione di report sullo spazio disco.
9. Configurazione della rete
- individuazione delle schede di rete;
- configurazione degli indirizzi IP;
- configurazione di gateway e DNS;
- visualizzazione delle connessioni;
- test di connettività;
- utilizzo di
Test-NetConnection;
- risoluzione dei nomi;
- controllo delle porte TCP;
- gestione delle configurazioni IP;
- introduzione alla gestione di DNS e DHCP tramite PowerShell;
- esportazione della configurazione di rete;
- diagnostica dei problemi di connettività.
10. Account locali, gruppi e attività pianificate
- gestione degli utenti locali;
- creazione, modifica e rimozione degli account;
- gestione dei gruppi locali;
- aggiunta e rimozione dei membri;
- controllo degli account amministrativi;
- gestione delle password;
- introduzione alle attività pianificate;
- creazione di Scheduled Task;
- esecuzione periodica degli script;
- utilizzo di account di servizio;
- verifica dell’esito delle attività;
- raccolta dei risultati di esecuzione.
11. Eventi, log e monitoraggio
- struttura dei registri eventi di Windows;
- utilizzo di
Get-WinEvent;
- filtraggio per registro, livello, origine e identificativo;
- FilterHashtable;
- ricerca degli eventi su server remoti;
- analisi degli errori di sistema e applicazione;
- esportazione degli eventi;
- monitoraggio di servizi e processi;
- controllo delle risorse del server;
- creazione di report diagnostici;
- generazione di segnalazioni;
- introduzione al monitoraggio automatizzato.
12. Importazione, esportazione e produzione di report
- utilizzo di file CSV;
Import-Csv ed Export-Csv;
- importazione di elenchi di server;
- esportazione dei risultati amministrativi;
- utilizzo di JSON;
- conversione da e verso JSON;
- produzione di report HTML;
- utilizzo di
ConvertTo-Html;
- creazione di report relativi a servizi, dischi ed eventi;
- confronto tra configurazioni;
- invio o archiviazione automatizzata dei report;
- organizzazione dei dati per successive elaborazioni in Excel o Power BI.
13. PowerShell Remoting
- principi della gestione remota;
- WinRM e WS-Management;
- configurazione del remoting;
- sessioni interattive;
- utilizzo di
Enter-PSSession;
- esecuzione remota con
Invoke-Command;
- gestione contemporanea di più server;
- sessioni persistenti con
New-PSSession;
- passaggio di variabili alle sessioni remote;
- autenticazione e credenziali;
- remoting in dominio e in workgroup;
- gestione degli errori di connessione;
- cenni al problema del second hop;
- sicurezza delle sessioni remote.
PowerShell Remoting permette di stabilire sessioni interattive o persistenti e di eseguire comandi e script su uno o più computer remoti. Negli ambienti Windows Server utilizza normalmente WinRM, implementazione Microsoft del protocollo WS-Management.
14. Creazione di script amministrativi
- struttura di uno script PowerShell;
- organizzazione e indentazione del codice;
- parametri degli script;
- utilizzo di
param;
- valori predefiniti e parametri obbligatori;
- commenti e documentazione;
- funzioni di base;
- restituzione dei risultati;
- riutilizzo del codice;
- validazione dei dati ricevuti;
- pipeline input;
- creazione di semplici strumenti amministrativi;
- convenzioni per nomi, cartelle e versioni;
- introduzione ai moduli personalizzati.
15. Gestione degli errori, logging e troubleshooting
- errori terminanti e non terminanti;
- variabile
$Error;
- utilizzo di
-ErrorAction;
- blocchi
try, catch e finally;
- gestione controllata delle eccezioni;
- registrazione delle operazioni;
- utilizzo di transcript;
- creazione di file di log;
- messaggi informativi, warning ed errori;
- modalità verbose e debug;
- verifica preventiva con
-WhatIf;
- richiesta di conferma con
-Confirm;
- tecniche di troubleshooting degli script;
- utilizzo dei breakpoint in Visual Studio Code.
16. Sicurezza e buone pratiche
- esecuzione degli script con privilegi minimi;
- protezione delle credenziali;
- utilizzo sicuro di
Get-Credential;
- SecureString e PSCredential;
- rischi legati alle credenziali inserite nel codice;
- firma digitale degli script;
- Execution Policy e relativi limiti;
- logging e trascrizione delle sessioni;
- controllo dei moduli utilizzati;
- introduzione a Just Enough Administration;
- delega controllata delle attività amministrative;
- limitazione dei comandi disponibili nelle sessioni remote.
Just Enough Administration consente di delegare attività gestibili tramite PowerShell, limitando comandi e funzioni disponibili e registrando le operazioni eseguite dagli utenti.
- Il corso si svolgerà in modalità online live streaming, con il docente che terrà le lezioni in diretta.
- I partecipanti dovranno avere a disposizione un Personal Computer e preferibilmente un secondo schermo.
- Saranno forniti labs online che vengono messi a disposizione anche dopo la fine del corso per 3 mesi.
- Al termine del corso, coloro che avranno partecipato ad almeno l'80% delle lezioni riceveranno un attestato di frequenza.
Per partecipare efficacemente è consigliabile possedere:
- conoscenze di base dei sistemi operativi Windows Server;
- familiarità con utenti, gruppi, servizi, file system e rete;
- esperienza nell’utilizzo degli strumenti grafici di amministrazione di Windows Server;
- conoscenza elementare dei concetti di Active Directory.
Non è richiesta una precedente esperienza di programmazione.
Una conoscenza introduttiva di PowerShell è utile, ma i principali elementi della sintassi saranno ripresi durante il corso.