first commit

This commit is contained in:
Luca Sacchi Ricciardi
2026-04-07 08:20:23 +02:00
commit 1b72239d8b
3 changed files with 277 additions and 0 deletions

187
README.md Normal file
View File

@@ -0,0 +1,187 @@
# 🛠️ Script di Amministrazione
Repository di script PowerShell per l'amministrazione e la gestione di sistemi Windows, Hyper-V e Active Directory.
## 📋 Descrizione
Questa raccolta contiene script PowerShell progettati per automatizzare operazioni comuni di amministrazione di sistema, semplificare attività ripetitive e generare report dettagliati per il monitoraggio dell'infrastruttura IT.
## 📂 Struttura Repository
```
.
├── Hyper-V/
│ ├── Report_Checkpoint_HyperV.ps1
│ └── ...
├── Active-Directory/
│ └── ...
├── Exchange/
│ └── ...
├── Utilities/
│ └── ...
└── README.md
```
## ✅ Requisiti
### Requisiti Generali
- **Sistema Operativo**: Windows Server 2016 o superiore / Windows 10/11 Pro
- **PowerShell**: Versione 5.1 o superiore
- **Privilegi**: Privilegi di amministratore per la maggior parte degli script
- **Execution Policy**: Configurata per permettere l'esecuzione di script
### Requisiti Specifici per Categoria
#### Hyper-V
- Ruolo Hyper-V installato e configurato
- Modulo PowerShell `Hyper-V`
#### Active Directory
- RSAT (Remote Server Administration Tools) installato
- Modulo PowerShell `ActiveDirectory`
#### Exchange
- Exchange Management Shell o modulo Exchange installato
- Connessione al server Exchange
## 🚀 Utilizzo
### 1. Configurazione Execution Policy
Prima di eseguire qualsiasi script, verificare la policy di esecuzione:
```powershell
Get-ExecutionPolicy
```
Se necessario, modificarla (come amministratore):
```powershell
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
```
### 2. Esecuzione Script
**Metodo 1**: Esecuzione diretta
```powershell
# Aprire PowerShell come Amministratore
cd C:\path\to\repository
.\Hyper-V\Report_Checkpoint_HyperV.ps1
```
**Metodo 2**: Importazione e utilizzo come funzione
```powershell
. .\Hyper-V\Report_Checkpoint_HyperV.ps1
```
### 3. Personalizzazione Parametri
Molti script contengono variabili configurabili all'inizio del file. Modificare i valori secondo le proprie esigenze:
```powershell
# Esempio
$ExportPath = "C:\Reports\MioReport.csv"
$Server = "Server01"
```
## 📜 Script Disponibili
### Hyper-V
#### Report_Checkpoint_HyperV.ps1
**Descrizione**: Genera un report CSV contenente l'elenco delle VM Hyper-V locali con il conteggio dei checkpoint.
**Utilizzo**:
```powershell
.\Hyper-V\Report_Checkpoint_HyperV.ps1
```
**Output**: File CSV in `C:\temp\Report_Checkpoint_HyperV.csv`
**Privilegi richiesti**: Amministratore
---
*Aggiungi qui la documentazione per gli altri script man mano che vengono creati*
## ⚠️ Avvertenze
- **Backup**: Eseguire sempre un backup prima di utilizzare script che modificano configurazioni di sistema
- **Testing**: Testare gli script in ambiente non di produzione prima di utilizzarli su sistemi critici
- **Privilegi**: Verificare che l'account utilizzato abbia i privilegi necessari
- **Audit**: Controllare sempre il codice degli script prima dell'esecuzione
## 🤝 Contribuire
I contributi sono benvenuti! Per contribuire:
1. Effettua il fork del repository
2. Crea un branch per la tua feature (`git checkout -b feature/NuovaFunzionalita`)
3. Commit delle modifiche (`git commit -m 'Aggiunta nuova funzionalità'`)
4. Push al branch (`git push origin feature/NuovaFunzionalita`)
5. Apri una Pull Request
### Linee Guida per i Contributi
- Includere commenti chiari e descrittivi nel codice
- Utilizzare il blocco `.SYNOPSIS` e `.DESCRIPTION` per la documentazione
- Gestire correttamente gli errori con try-catch
- Fornire output informativi all'utente
- Aggiornare il README con la documentazione dello script
## 📝 Best Practices
Gli script in questo repository seguono queste best practices:
- **Documentazione**: Ogni script include commenti header con descrizione e utilizzo
- **Gestione Errori**: Implementazione di error handling appropriato
- **Output Strutturato**: Utilizzo di oggetti personalizzati (PSCustomObject) per dati strutturati
- **Feedback Utente**: Messaggi informativi durante l'esecuzione
- **Path Validation**: Verifica dell'esistenza di directory prima della scrittura
- **Encoding Standard**: Utilizzo di UTF-8 per i file di output
## 📊 Report e Log
Gli script che generano report utilizzano le seguenti convenzioni:
- **Formato predefinito**: CSV con encoding UTF-8
- **Percorso predefinito**: `C:\temp\` (modificabile)
- **Nomenclatura**: Descrittiva e con timestamp quando appropriato
- **Delimitatore CSV**: Virgola (,)
## 🔐 Sicurezza
- Mai includere credenziali hardcoded negli script
- Utilizzare Windows Credential Manager o variabili sicure per le password
- Limitare i permessi di esecuzione agli amministratori autorizzati
- Effettuare audit regolari delle modifiche al repository
## 📞 Supporto
Per problemi, domande o suggerimenti:
- Aprire una Issue su GitHub
- Verificare la documentazione degli script
- Controllare i requisiti di sistema
## 📄 Licenza
Questo progetto è distribuito sotto licenza MIT. Vedere il file `LICENSE` per maggiori dettagli.
---
**Nota**: Questo repository è in continua evoluzione. Gli script vengono aggiunti e aggiornati regolarmente in base alle necessità operative.
## 🔄 Changelog
### [Data] - Versione Iniziale
- Aggiunto script Report_Checkpoint_HyperV.ps1
- Creata struttura repository
- Documentazione iniziale
---
**Ultimo aggiornamento**: 07 aprile 2026