Home Home Il Progetto The Project Il Team The Team Strumenti di Rete Tool Kit Chiave PGP PGP Key Chi sono About Servizi Services EN
List topics: List topics:

Consulente ICT ICT Consultant

> Bridging Technology, Risk Management & Business

Il Profilo
Con oltre 25 anni di esperienza in reti, sistemi e IT risk management, mi occupo di amministrazione On-Premise e Cloud. Aiuto organizzazioni e imprese a garantire la conformità normativa (GDPR, ISO 27001, NIS 1 e 2) e offro servizi avanzati di Digital Forensics. Il mio obiettivo è consolidare il mio ruolo di esperto in Cybersecurity e Intelligenza Artificiale Generativa, operando a livello internazionale in modalità remote-first.

Esperienza sul Campo
Dal 2005 sono Programmatore Sistemista e Privacy Manager per il Consorzio per la Bonifica della Capitanata, ruolo a cui affianco una continua attività di consulenza per realtà sanitarie e studi legali (Gruppo Salatto, Studio Torlontano, ecc.). Gestisco operativamente attività di DFIR (Digital Forensics and Incident Response), Business Continuity, Disaster Recovery e mitigazione dell'impatto dei rischi IT. In passato, ho coordinato team internazionali come IT Project Manager tra Amsterdam e Tallinn.

Visione Strategica e Competenze
Comprendere l'infrastruttura richiede anche una solida visione aziendale. Per questo ho integrato il mio background tecnico (Windows/Linux Server, reti TCP/IP, Firewall) con una Laurea Magistrale in Scienze Economiche conseguita con lode. Unisco l'approccio ingegneristico alle metodologie manageriali e Agile (ITIL v.3, Scrum, Six Sigma). Attualmente sto espandendo le mie competenze attraverso i percorsi ufficiali Google come Cybersecurity Expert e Generative AI Leader.

Oltre il codice
Lavoro correntemente in inglese (certificazione C2 Cambridge) e conosco altre tre lingue. Quando non sono alle prese con server o incident response, ricarico le energie a contatto con la natura, pilotando droni (UAS Open A1/A3), dedicandomi alla fotografia o sperimentando nuove tecniche ai fornelli.

Formazione in corso

  • Professional Cloud Architect (Google Cloud)

Formazione Accademica

  • Master in Gestione delle imprese e delle società MA659 (30/30)
  • Laurea Magistrale in Scienze Economiche LM-56 (110/110 e Lode)
  • Laurea Triennale in Scienze dell'Economia e della Gestione Aziendale L-18 (94/110)

Certificazioni
Di seguito l'elenco completo delle certificazioni conseguite, dei corsi di specializzazione e dei badge ottenuti, a testimonianza del continuo aggiornamento tecnico e professionale:

  • Cybersecurity Foundations Professional Certificate (ID: 51934206)
  • Microsoft Certified: Azure Fundamentals
  • Foundations of Operationalizing MITRE ATT&CK
  • Foundations of Purple Teaming
  • Autopsy Basics and Hands On – Digital Forensics (ID: YRXYSTQBK8)
  • GrassHopper Javascript – Coding Fundamentals, Coding Fundamentals II, Array Methods, Animations
  • Project Management Essentials Certified (ID: 55005870)
  • Scrum Foundation Certificate (SFPC) (ID: 43043593)
  • Six Sigma White Belt (ID: 55005099)
  • Six Sigma Yellow Belt (ID: 729673)
  • ITIL v.3 Foundation (ID: GR750562993FR)
  • Cybersecurity Essentials – Cisco Netacad
  • Introduction to Cybersecurity – Cisco Netacad
  • Introduction to Cisco Packet Tracer – Cisco Netacad
  • Introduction to Internet of Everything – Cisco Netacad
  • Google Analytics for Beginners
  • Google Digital Training (ID: R7ZXBVRRR)
  • The EU GDPR - An Introduction (ID: UC-0HROEMGN)
  • Eipass Progressive (ID: 8B77A028CB)

The Profile
With over 25 years of experience in networks, systems, and IT risk management, I specialize in On-Premise and Cloud administration. I help organizations ensure regulatory compliance (GDPR, ISO 27001, NIS 1 and 2) and provide advanced Digital Forensics services. My current goal is to consolidate my expertise in Cybersecurity and Generative AI, collaborating internationally in a remote-first work environment.

Field Experience
Since 2005, I have served as the System Programmer and Privacy Manager for the Consorzio per la Bonifica della Capitanata, alongside continuous consulting work for healthcare facilities and law firms. I operationally manage DFIR (Digital Forensics and Incident Response), Business Continuity, Disaster Recovery, and IT risk mitigation. Previously, I coordinated international teams as an IT Project Manager between Amsterdam and Tallinn.

Strategic Vision & Skills
Understanding IT infrastructure also requires a solid business vision. That is why I integrated my technical background (Windows/Linux Servers, TCP/IP networks, Firewalls) with a Master's Degree in Economics (Summa Cum Laude). I combine an engineering approach with managerial and Agile methodologies (ITIL v.3, Scrum, Six Sigma). I am currently expanding my skill set through the official Google Cybersecurity Expert and Generative AI Leader paths.

Beyond the code
I am fluent in English (Cambridge C2 certification) and have knowledge of three other languages. When I am not dealing with servers or incident response, I recharge my energy by immersing myself in nature, flying drones (UAS Open A1/A3), practicing photography, or experimenting with new cooking techniques.

Formazione in corso

  • Professional Cloud Architect (Google Cloud)

Academic Background

  • Postgraduate Master in Corporate and Business Management (MA659)
  • Master's Degree in Economics LM-56 (Summa Cum Laude)
  • Bachelor's Degree in Economics and Business Management L-18 (94/110)

Certifications
Below is the complete list of certifications, specialization courses, and badges achieved, demonstrating a continuous commitment to technical and professional development:

  • Cybersecurity Foundations Professional Certificate (ID: 51934206)
  • Microsoft Certified: Azure Fundamentals
  • Foundations of Operationalizing MITRE ATT&CK
  • Foundations of Purple Teaming
  • Autopsy Basics and Hands On – Digital Forensics (ID: YRXYSTQBK8)
  • GrassHopper Javascript – Coding Fundamentals, Coding Fundamentals II, Array Methods, Animations
  • Project Management Essentials Certified (ID: 55005870)
  • Scrum Foundation Certificate (SFPC) (ID: 43043593)
  • Six Sigma White Belt (ID: 55005099)
  • Six Sigma Yellow Belt (ID: 729673)
  • ITIL v.3 Foundation (ID: GR750562993FR)
  • Cybersecurity Essentials – Cisco Netacad
  • Introduction to Cybersecurity – Cisco Netacad
  • Introduction to Cisco Packet Tracer – Cisco Netacad
  • Introduction to Internet of Everything – Cisco Netacad
  • Google Analytics for Beginners
  • Google Digital Training (ID: R7ZXBVRRR)
  • The EU GDPR - An Introduction (ID: UC-0HROEMGN)
  • Eipass Progressive (ID: 8B77A028CB)
> author identified
Foto Francesco Russo

Difesa Ransomware: Backup Immutabili su Linux con chattr

Il Problema: I Ransomware che cifrano il Disaster Recovery

Ransomware Attack
Immagine realizzata con Gemini AI


Il più grande incubo di un sistemista non è un ransomware che blocca i dati di produzione, ma un ransomware "smart" che, prima di rivelarsi, cerca nel network le share SMB, i NAS e i repository di backup cifrandoli. Se il malware ha accesso in scrittura alla destinazione dei tuoi backup, l'intero piano di Disaster Recovery è annullato.

La Soluzione: Architettura di Backup Immutabile su Linux

Per sconfiggere questa minaccia serve l'immutabilità: un file salvato non deve poter essere modificato, sovrascritto o cancellato, nemmeno dall'utente root. Utilizzando gli attributi nativi dei file system Linux (ext4/xfs), possiamo creare un repository "antiproiettile" a costo zero.

Il comando magico: chattr

Una volta che la tua procedura di backup (es. rsync o un cron job) ha trasferito l'archivio sul server di deposito Linux, aggiungi una riga per bloccare il file a livello di kernel utilizzando il flag +i (immutable):

# Il file di backup viene reso inalterabile
sudo chattr +i /backup/repository/server_db_lunedì.tar.gz

Se un hacker ottiene l'accesso al server ed esegue uno script crittografico, il kernel respingerà l'operazione. Per permettere la rotazione dei vecchi backup, uno script blindato rimuoverà temporaneamente il flag (-i), cancellerà il file obsoleto e rimetterà il lucchetto sui nuovi arrivi.

La tua Ricompensa: Script Audit Backup Immutabili

I tuoi backup sono davvero protetti? Usa questo script bash automatizzato per scansionare la tua infrastruttura di storage Linux e verificare istantaneamente se il flag di immutabilità è applicato correttamente ai tuoi archivi critici. Inserisci la tua email per ottenerlo.

Inviando la richiesta, accetti di iscriverti alla newsletter tecnica di IT Chronicle. Riceverai immediatamente il link sicuro via email. Zero spam, pura operatività.

Privacy IT e GDPR: Automatizzare la cancellazione dei log

Il Problema: I log infiniti e la violazione del GDPR

Log Rotation
Immagine realizzata con Gemini AI


I sistemisti soffrono di accumulo seriale di dati. La tendenza naturale è conservare indefinitamente i file di log (accessi proxy, web server, firewall) "nel caso servano per un'indagine futura". Tuttavia, mantenere log contenenti indirizzi IP e dati identificativi degli utenti senza un limite temporale predefinito espone l'azienda a gravi sanzioni per violazione del principio di minimizzazione del GDPR.

La Soluzione: Data Lifecycle automatizzato tramite Logrotate

L'infrastruttura IT deve essere progettata (Privacy by Design) per distruggere autonomamente il dato quando scade la base giuridica per la sua conservazione. Su macchine Linux, lo strumento definitivo per questo compito è logrotate.

Configurare l'oblio automatico

Creando una regola specifica all'interno di /etc/logrotate.d/, possiamo istruire il demone a ruotare i log mensilmente, comprimerli ed eliminare matematicamente quelli antecedenti ai limiti imposti dall'ufficio legale (es. 6 mesi).

# Configurazione per Apache2 - Conservazione a 6 mesi
/var/log/apache2/*.log {
    monthly
    rotate 6
    compress
    delaycompress
    missingok
    notifempty
}

In questo modo, il settimo mese il log più vecchio viene definitivamente purgato dal file system, rendendo l'azienda automaticamente conforme ai controlli dell'autorità garante.

La tua Ricompensa: Tool di Verifica Privacy Log

Stai accumulando dati illegali sui tuoi server? Scarica il tool per analizzare ricorsivamente le directory di log di Linux, calcolare le date di retention ed evidenziare i file che violano il GDPR. Inserisci la tua email per ottenere il tool.

Inviando la richiesta, accetti di iscriverti alla newsletter tecnica di IT Chronicle. Riceverai immediatamente il link sicuro via email. Zero spam, pura operatività.

Fondi Europei per l'IT: Finanziare la Cybersicurezza Aziendale

Il Problema: Trovare budget per l'Innovazione IT

Granting Funds
Immagine realizzata con Gemini AI


I progetti di rinnovamento infrastrutturale (come la migrazione al cloud o l'implementazione di sistemi EDR avanzati) richiedono ingenti capitali. Spesso la Direzione frena i piani dell'IT Manager perché considerati "costi a fondo perduto". Come sbloccare i budget necessari senza gravare sul bilancio aziendale?

La Soluzione: Sfruttare i Fondi Europei per la Transizione Digitale

L'Unione Europea mette a disposizione fondi (spesso a fondo perduto) per le PMI che investono in Digitalizzazione e Cybersicurezza. Il compito dell'IT Manager moderno è trasformare un'esigenza tecnica in un Progetto Finanziabile.

1. Tradurre i requisiti in "Euro-progettazione"

I bandi non finanziano "l'acquisto di server", ma "l'efficientamento energetico tramite consolidamento hardware". Non finanziano un "nuovo firewall", ma "l'innalzamento della resilienza cybernetica della supply chain". Mappare la situazione AS-IS dell'infrastruttura obsoleta e presentare il piano TO-BE allineato agli obiettivi del bando è la chiave per vincere.

2. Utilizzare le Metodologie Agili

Includere metodologie come Scrum o Gantt strutturati all'interno della richiesta di finanziamento dimostra agli enti valutatori che il progetto ha tempistiche di delivery certe e rischi operativi mitigati, aumentando drasticamente le chance di approvazione.

La tua Ricompensa: Modello Richiesta Finanziamento IT

Salta la burocrazia del foglio bianco. Ho preparato un template già compilato (adattabile alla tua PMI) contenente le terminologie tecniche corrette per presentare progetti di Cybersecurity e Cloud Migration per bandi UE.

Inviando, accetti di iscriverti alla newsletter tecnica di IT Chronicle. Riceverai immediatamente il link sicuro via email. Zero spam, pura operatività.

Adeguamento NIS 2: Come calcolare RTO e RPO con il BIA

Il Problema: Lo stallo decisionale per l'adeguamento NIS 2

BIA
Image generated with Gemini AI


La Direttiva Europea NIS 2 impone requisiti di cybersicurezza rigorosi e responsabilità penali per il top management in caso di negligenza. Molti IT Manager commettono l'errore di acquistare tool di sicurezza in modo casuale, sperando di coprire i requisiti, senza aver prima misurato il valore economico dei processi da proteggere.

La Soluzione: Il Business Impact Assessment (BIA)

Non si può proteggere un'azienda senza sapere quanto costa un'ora del suo fermo. Il BIA è lo strumento di Governance che traduce il disastro informatico in perdite finanziarie tangibili, permettendo di calcolare accuratamente gli obiettivi di recupero.

1. Stabilire RTO e RPO

Sulla base delle interviste ai responsabili di funzione (stakeholder), l'IT deve mappare ogni servizio per definire:

  • RTO (Recovery Time Objective): Il tempo massimo entro cui il sistema DEVE tornare online prima di causare danni catastrofici (es. 4 ore).
  • RPO (Recovery Point Objective): Quanti dati l'azienda è disposta a perdere (es. al massimo i dati degli ultimi 15 minuti, determinando la frequenza dei backup).

2. Giustificare il budget di sicurezza

Se il BIA dimostra che il blocco del gestionale costa 50.000€ l'ora e l'RTO aziendale richiesto è di 1 ora, l'IT Manager ha in mano i dati matematici (Expected Value) per giustificare l'acquisto di un'infrastruttura di Disaster Recovery da 20.000€, spostando la conversazione da "costo tecnico" a "protezione del rischio d'impresa".

La tua Ricompensa: BIA Template Professionale

Smetti di stimare a occhio e inizia a calcolare. Scarica il mio modello Excel preimpostato per eseguire un Business Impact Assessment strutturato e presentarti preparato all'audit NIS 2. Inserisci la tua email per ricevere il foglio di calcolo.

Inviando la richiesta, accetti di iscriverti alla newsletter tecnica di IT Chronicle. Riceverai immediatamente il link sicuro via email. Zero spam, pura operatività.

Shadow AI Aziendale: Eseguire LLM Locali con Ollama

Il Problema: Fuga di dati aziendali tramite Shadow AI

Secure AI
Immagine realizzata con Gemini AI


Il fenomeno dello Shadow IT si è evoluto. I dipendenti, per velocizzare il lavoro, incollano codice sorgente, contratti riservati o dati finanziari all'interno di chatbot IA pubblici (come ChatGPT o Claude). Poiché questi strumenti utilizzano spesso i prompt degli utenti per addestrare i propri modelli linguistici, i dati sensibili (PII) dell'azienda vengono irrimediabilmente esposti all'esterno, violando policy e normative sulla privacy.

La Soluzione: Deploy di LLM Locali con Ollama

Per sfruttare la potenza dell'Intelligenza Artificiale Generativa garantendo la totale sovranità del dato, le aziende devono portare i modelli on-premise. L'approccio migliore è utilizzare Ollama, un framework per eseguire modelli linguistici di grandi dimensioni (LLM) direttamente su hardware aziendale, offline.

1. Setup dell'infrastruttura Linux

Predisponi un server Linux (es. Debian 12) dotato di GPU o con sufficiente RAM per l'inferenza CPU. L'installazione è rapidissima tramite terminale:

curl -fsSL https://ollama.com/install.sh | sh
sudo systemctl enable ollama
sudo systemctl start ollama

2. Modelli Open Source in Sicurezza

Modelli performanti come Llama 3 (Meta) o Mistral possono essere scaricati ed eseguiti localmente. L'elaborazione del testo avviene strettamente isolata all'interno del server aziendale, garantendo conformità GDPR immediata.

# Scarica ed esegue il modello
ollama run llama3

Tool di Verifica Privacy IA (Python CLI)

I tuoi dipendenti stanno alimentando modelli pubblici con dati sensibili? Inserisci la tua email per accedere allo strumento di audit CLI multilingua per mappare file, credenziali e PII a rischio fuga.

Inviando la richiesta, accetti di iscriverti alla newsletter tecnica di IT Chronicle. Riceverai immediatamente il link di conferma via email. Zero spam, solo architetture operative.

Kerberoasting in Active Directory: Difesa e Hardening

Il Problema: L'escalation di privilegi tramite Kerberoasting

VPN compromised
Immagine generata con Gemini AI


Active Directory (AD) è il cuore pulsante delle infrastrutture aziendali, ma le sue configurazioni legacy lo rendono un bersaglio primario. Uno degli attacchi più letali e silenziosi è il Kerberoasting. Gli attaccanti, pur avendo accesso con un account utente standard senza privilegi, possono richiedere i ticket di servizio (TGS) per qualsiasi account associato a un Service Principal Name (SPN). Poiché questi ticket sono cifrati con l'hash della password dell'account di servizio, gli hacker li esportano offline per tentare attacchi di brute-force ed estrarre la password in chiaro.

La Soluzione: Hardening degli SPN e policy crittografiche

La mitigazione di questa vulnerabilità richiede un approccio a due livelli, agendo sia sulla complessità delle credenziali che sugli algoritmi di cifratura utilizzati dal dominio.

1. Password complesse per i Service Account

La difesa più efficace contro il cracking offline è la lunghezza. Gli account di servizio con SPN registrati (come quelli usati per SQL Server o IIS) devono avere password generate casualmente di almeno 30 caratteri. Implementa le Managed Service Accounts (gMSA) dove possibile, affinché Windows gestisca e ruoti automaticamente queste password complesse in totale trasparenza.

2. Disabilitare la cifratura RC4

I ticket cifrati con il vecchio protocollo RC4 sono triviali da forzare. Forza l'utilizzo di AES-256 modificando la Group Policy Object (GPO) del dominio:

# Imposta i tipi di crittografia supportati per Kerberos tramite GPO
# Percorso: Computer Configuration > Policies > Windows Settings > Security Settings > Local Policies > Security Options
# Network security: Configure encryption types allowed for Kerberos
# Selezionare solo: AES128_HMAC_SHA1 e AES256_HMAC_SHA1

Una volta applicata la GPO, gli attaccanti che tenteranno di esportare i ticket si scontreranno con un algoritmo matematicamente impraticabile da forzare in tempi utili.

Scanner di Sicurezza Active Directory (Script PowerShell)

Ho preparato uno script PowerShell sicuro e non intrusivo che interroga il tuo AD ed elenca tutti gli account con SPN attivi e cifratura debole. Inserisci la tua email per ricevere immediatamente il link di accesso alle risorse operative.

Inviando la richiesta, accetti di iscriverti alla newsletter tecnica di IT Chronicle. Riceverai immediatamente il link di conferma via email. Zero spam, solo architetture operative.

Amministrazione Remota PowerShell: Abilitare WinRM Sicuro

Il Problema: La Pesantezza del Remote Desktop (RDP)

Amministrazione Remota PowerShell
Immagine realizzata con Gemini AI


Gestire dozzine di server Windows Server aprendo sessioni in Desktop Remoto (RDP) è lento, consuma banda e lascia sessioni grafiche orfane appese nel sistema. Inoltre, esporre il protocollo RDP (porta 3389) sulle reti inter-ufficio aumenta inutilmente la superficie di attacco aziendale.

La Soluzione: PowerShell Remoting via WinRM

La soluzione moderna e scalabile per l'IT Management è PowerShell Remoting. Utilizzando il protocollo nativo WinRM (Windows Remote Management), puoi aprire sessioni interattive o eseguire script in batch su macchine remote direttamente dal tuo terminale, proprio come fai con SSH su Linux.

1. Abilitare WinRM sul Server Destinazione

Collegati al server target (o usa una Group Policy, GPO, se sei in un ambiente Active Directory) e apri una console PowerShell con privilegi di Amministratore. Esegui il comando di configurazione rapida:

Enable-PSRemoting -Force

Questo comando avvia il servizio WinRM, lo imposta su avvio automatico e crea le regole predefinite sul firewall (porte TCP 5985 HTTP). Tuttavia, in ambienti zero-trust, HTTP non basta.

2. Hardening: Forzare HTTPS (Porta 5986)

Per criptare il traffico a livello di trasporto e prevenire attacchi Man-In-The-Middle, devi vincolare WinRM a un certificato SSL. Supponendo di aver generato o richiesto un certificato per il server (via PKI aziendale), puoi creare un listener HTTPS tramite PowerShell:

# Recupera il thumbprint del certificato
$Cert = Get-ChildItem -Path Cert:\LocalMachine\My | Where-Object { $_.Subject -match "IlTuoServer" }
$Thumbprint = $Cert.Thumbprint

# Configura il listener HTTPS
New-Item -Path WSMan:\LocalHost\Listener -Transport HTTPS -Address * -CertificateThumbPrint $Thumbprint -Force

Non dimenticare di aprire la porta 5986 sul firewall di Windows Server.

3. Eseguire la Connessione dal Client

Ora, dalla tua postazione di lavoro Sysadmin, puoi connetterti al server in totale sicurezza aprendo una sessione interattiva:

Enter-PSSession -ComputerName IlTuoServer -UseSSL -Credential (Get-Credential)

Il terminale cambierà prompt, confermandoti che ogni comando che scriverai da quel momento in poi verrà eseguito localmente sul server remoto.

Script Bash: Automatizzare Backup Server e Rotazione dei Log

Il Problema: I Dischi Saturati dai File di Log

Automating Server Backups and Log Rotation
Immagine realizzata con Gemini AI


La manutenzione manuale dei server è il nemico dell'efficienza. Un sistemista IT si trova regolarmente a dover liberare spazio su disco saturato da vecchi file di log di Apache/Nginx o a dover garantire che le directory di configurazione (es. /etc) siano costantemente sottoposte a backup remoto. Dimenticarsi queste operazioni causa interruzioni di servizio non pianificate.

La Soluzione: Scripting Bash e Cronjobs

Dobbiamo creare uno script robusto che si occupi autonomamente di archiviare i dati critici, rimuovere i file obsoleti per liberare spazio e sincronizzare il tutto su un server di backup sicuro.

1. Lo Script Bash per Backup e Pulizia

Crea un file chiamato server_maintenance.sh e inserisci questo codice. Lo script utilizza tar per la compressione, find per identificare i vecchi log e rsync per il trasferimento sicuro tramite SSH.

#!/bin/bash
# server_maintenance.sh - Backup e rotazione log

BACKUP_DIR="/var/backups/daily"
TIMESTAMP=$(date +"%F")
TARGET_DIR="/etc"
REMOTE_SERVER="backup_user@10.0.10.50:/archive"

# 1. Creazione dell'archivio compresso
echo "[*] Creazione backup per $TARGET_DIR..."
mkdir -p "$BACKUP_DIR"
tar -czf "$BACKUP_DIR/etc_backup_$TIMESTAMP.tar.gz" "$TARGET_DIR"

# 2. Pulizia vecchi log (più vecchi di 30 giorni)
echo "[*] Rotazione e cancellazione log obsoleti..."
find /var/log -name "*.log" -type f -mtime +30 -exec rm -f {} \;

# 3. Trasferimento remoto sicuro
echo "[*] Sincronizzazione verso il server di backup..."
rsync -avz --delete "$BACKUP_DIR/" "$REMOTE_SERVER"

echo "[+] Manutenzione completata con successo."

2. Permessi di Esecuzione e Schedulazione

Per rendere lo script eseguibile, modifica i permessi:

chmod +x server_maintenance.sh

Ora deleghiamo l'esecuzione automatica al demone cron. Apri la tabella cron per l'utente root eseguendo sudo crontab -e e aggiungi la seguente direttiva per far girare lo script ogni notte alle 02:00:

0 2 * * * /percorso/completo/server_maintenance.sh >> /var/log/maintenance.log 2>&1

Con questa automazione, il ciclo di vita dei dati sul tuo server è completamente autonomo, ottimizzato per le prestazioni e sicuro contro i disastri.

Troubleshooting DNS Avanzato: Oltre il solito ipconfig

Il Problema: Connettività Presente, Risoluzione Assente

Advanced DNS Troubleshooting
Immagine realizzata con Gemini AI


È un incubo ricorrente: il server risponde al ping 8.8.8.8, ma provando a raggiungere un dominio interno o esterno il browser restituisce ERR_NAME_NOT_RESOLVED. Il comando ipconfig /flushdns non ha sortito alcun effetto. In questi scenari avanzati, limitarsi a riavviare la scheda di rete è inutile; serve ispezionare chirurgicamente la catena di risoluzione.

La Soluzione: Gli strumenti del Sysadmin (dig e nslookup)

Per diagnosticare dove si interrompe la catena DNS, dobbiamo bypassare la cache del sistema operativo e interrogare direttamente i name server.

1. Ispezionare la risoluzione con `dig` o `nslookup`

Su Linux (o WSL su Windows), utilizza dig per tracciare il percorso della richiesta. Specifica il server DNS aziendale per capire se sta rispondendo ai record interni (es. il gestionale su intranet.local):

# Interroga specificamente il Domain Controller aziendale (10.0.20.5)
dig @10.0.20.5 intranet.local

Se il server restituisce un errore SERVFAIL, il problema risiede nei forwarder del server DNS. Se restituisce NXDOMAIN, il record semplicemente non esiste nella zona DNS.

2. Il conflitto del DNS over HTTPS (DoH) nei Browser

Un problema sempre più comune nelle reti aziendali è causato dal DNS over HTTPS (DoH). I browser moderni (Chrome, Edge, Firefox) bypassano le impostazioni DNS della scheda di rete di Windows e criptano le richieste inviandole direttamente a Cloudflare o Google. Il risultato? L'utente naviga su internet ma non riesce ad accedere alle risorse aziendali interne, perché il DNS pubblico non conosce la vostra zona privata.

Per risolvere, disabilita il "DNS Sicuro" all'interno delle impostazioni di privacy del browser o forza il traffico tramite policy GPO (Group Policy Object).

3. Verificare i file Host e Resolv.conf

Su macchine Linux, assicurati che il processo di risoluzione stia puntando al server corretto. Ispeziona il file di configurazione:

cat /etc/resolv.conf

Se è gestito da systemd-resolved, controlla lo stato globale della risoluzione eseguendo:

resolvectl status

Segmentazione di Rete: Mitigare le Minacce con le VLAN

Il Problema: La Rete "Piatta" e il Movimento Laterale

Segmentazione di Rete
Immagine realizzata con Gemini AI


In molte infrastrutture aziendali legacy, tutti i dispositivi (computer degli uffici, server di produzione, telecamere IP e Wi-Fi ospiti) risiedono sulla stessa subnet (es. 192.168.1.0/24). Se un dipendente apre un allegato malevolo e innesca un ransomware, il malware sfrutta questa architettura "piatta" per eseguire un movimento laterale, scansionando e infettando istantaneamente i server critici e i repository di backup senza alcun ostacolo di rete.

La Soluzione: Segmentazione tramite VLAN e Firewall

Il principio del privilegio minimo si applica anche al networking. Dobbiamo isolare fisicamente o logicamente le diverse aree aziendali utilizzando le VLAN (Virtual Local Area Network) e instradare il traffico attraverso un firewall interno per bloccare le comunicazioni non autorizzate.

1. Creazione delle VLAN (Isolamento Logico)

Sui tuoi switch gestiti (Layer 2 o Layer 3), crea segmenti di rete distinti. Un'architettura standard minima prevede:

  • VLAN 10 (Management): 10.0.10.0/24 - Accesso esclusivo per i Sysadmin a hypervisor, switch e iLO.
  • VLAN 20 (Server): 10.0.20.0/24 - Server applicativi, database e Active Directory.
  • VLAN 30 (Client): 10.0.30.0/24 - Workstation dei dipendenti.
  • VLAN 40 (IoT/Stampanti): 10.0.40.0/24 - Dispositivi embedded vulnerabili.

2. Regole di Routing e Firewall Inter-VLAN

Senza un router o un firewall (come pfSense o FortiGate) a fare da gateway, le VLAN non possono comunicare tra loro. Applica regole rigide sul firewall per consentire solo il traffico strettamente necessario. Ad esempio, i client (VLAN 30) non devono poter avviare sessioni RDP verso i server (VLAN 20); solo la VLAN di Management può farlo.

# Esempio logico di regola Firewall su pfSense (UFW non gestisce VLAN routing)
Azione: PASS
Interfaccia: VLAN_CLIENT
Sorgente: VLAN_CLIENT Subnet
Destinazione: VLAN_SERVER Subnet
Porte: 443 (HTTPS), 3306 (MySQL)

Azione: DROP
Interfaccia: VLAN_CLIENT
Sorgente: ANY
Destinazione: VLAN_SERVER Subnet
Porte: 3389 (RDP), 22 (SSH)

Conclusione

Segmentare la rete trasforma l'infrastruttura da una prateria aperta a una serie di compartimenti stagni. Se un endpoint viene compromesso, il raggio dell'attacco (blast radius) rimane confinato all'interno della sua VLAN, salvando i servizi critici e i backup.

Shadow AI Aziendale: Rischi e Prevenzione del Data Leakage

Il Problema: L'esfiltrazione invisibile dei dati tramite LLM

Enterprise Shadow AI
Immagine realizzata con Gemini AI


Il fenomeno dello Shadow IT si è evoluto. Oggi la minaccia principale non è più il server cloud non autorizzato, ma la Shadow AI. I dipendenti, per velocizzare il lavoro, incollano codice sorgente, contratti riservati o dati finanziari (PII) all'interno di chatbot IA pubblici (come la versione gratuita di ChatGPT o Claude). Poiché questi strumenti utilizzano spesso i prompt degli utenti per addestrare i propri modelli linguistici, i dati sensibili dell'azienda vengono irrimediabilmente esposti all'esterno del perimetro di sicurezza aziendale.

La Soluzione: Policy, DNS Filtering ed Enterprise AI

Bloccare semplicemente l'accesso agli strumenti IA genera frustrazione e spinge gli utenti a trovare scappatoie (es. connessioni hotspot). La soluzione richiede un approccio a tre livelli.

1. Visibilità e Blocco a livello di Rete

Il primo passo è fermare l'emorragia di dati verso endpoint non autorizzati. Configura il firewall aziendale o il resolver DNS (come Pi-hole o NextDNS) per monitorare e bloccare le query verso le API pubbliche dei principali fornitori IA non contrattualizzati.

# Esempio di domini da inserire in blocklist DNS
api.openai.com
chatgpt.com
claude.ai
gemini.google.com

2. Implementazione di IA Aziendale (Walled Garden)

Per mantenere la produttività senza compromettere la sicurezza, è necessario fornire un'alternativa sicura. Implementa istanze private tramite servizi cloud enterprise (come Google Cloud Vertex AI o Azure OpenAI) dove i contratti garantiscono esplicitamente che i dati non verranno utilizzati per il training dei modelli. In alternativa, per dati ad altissima classificazione, distribuisci LLM open-source (come Llama 3) localmente sui server aziendali.

3. Configurazione Endpoint DLP

Aggiorna le policy del software di Data Loss Prevention (DLP) sugli endpoint per rilevare e bloccare i tentativi di copia-incolla di stringhe sensibili (es. numeri di carte di credito, IBAN o codice proprietario) all'interno delle finestre del browser dirette a categorie URL classificate come "Generative AI".

Generative AI per l'IT: Accelerare Scripting Bash e PowerShell

Il Problema: I Colli di Bottiglia nello Sviluppo Interno

Generative AI per l'IT
Immagine realizzata con Gemini AI


Scrivere complesse espressioni regolari (regex), gestire moduli PowerShell avanzati o costruire loop annidati in Bash richiede ore di concentrazione e continua consultazione della documentazione ufficiale. Nel contesto frenetico della consulenza ICT, il tempo speso a fare debugging sintattico è tempo sottratto all'analisi del rischio e alla progettazione strategica dell'infrastruttura.

La Soluzione: Generative AI come Copilota Operativo

Guidare l'adozione dell'IA Generativa (Generative AI) a livello aziendale non significa puntare alla sostituzione del capitale umano, ma fornire un copilota avanzato. Sfruttando modelli linguistici di grandi dimensioni (LLM), è possibile delegare all'intelligenza artificiale la stesura strutturale del codice, abbattendo drasticamente il time-to-market delle automazioni.

1. Prompt Engineering Specifico per l'IT

Il segreto per ottenere codice funzionale risiede nel fornire vincoli tecnici rigorosi. Un prompt generico produce script generici e spesso vulnerabili. Ecco la struttura di un prompt ingegnerizzato per un Sistemista:

"Agisci come un Senior Windows Sysadmin. Scrivi uno script PowerShell compatibile con Windows Server 2022 che comprima i file di log di IIS più vecchi di 30 giorni. Requisiti tassativi: utilizza costrutti Try/Catch per la gestione degli errori, scrivi l'output delle operazioni in un file di log locale (formato JSON) e non fare affidamento su moduli di terze parti."

2. Code Refactoring e Traduzione

Oltre alla generazione pura, l'IA brilla nell'analisi del debito tecnico. Fornendo in input script legacy non documentati (magari ereditati da precedenti amministratori), è possibile richiedere la spiegazione riga per riga, l'aggiunta di commenti standardizzati o la traduzione diretta di interi blocchi logici da Bash a PowerShell, garantendo uniformità architetturale in ambienti ibridi.

Gestione Sicura delle Credenziali: Eliminare le Password dagli Script

Il Problema: Password in Chiaro nei Sorgenti

L'automazione tramite scripting è il cuore nevralgico della gestione sistemistica. Tuttavia, hardcodare credenziali (password, token API, chiavi crittografiche) in chiaro all'interno di file .sh o .ps1 è una violazione critica della sicurezza. Chiunque abbia accesso in lettura al file system o al repository Git compromette l'intero ecosistema aziendale.

Password Safety
Immagine realizzata con Gemini AI


La Soluzione: Gestione Cifrata dei Segreti

Dobbiamo disaccoppiare la logica dello script dal dato sensibile, sfruttando i meccanismi di protezione nativi del sistema operativo.

1. In Ambiente PowerShell (Windows)

In infrastrutture Microsoft, possiamo usare Export-Clixml per cifrare un oggetto credenziale. La cifratura è legata a doppio filo all'account utente che l'ha generata e alla macchina fisica (grazie alle API di Data Protection di Windows).

# Eseguire una volta per salvare la password cifrata
Get-Credential | Export-Clixml -Path "C:\secure\admin_creds.xml"

# Nello script di produzione, richiamare il file:
$cred = Import-Clixml -Path "C:\secure\admin_creds.xml"

2. In Ambiente Bash (Linux)

Nei sistemi Unix, il metodo più immediato e a costo zero per proteggere i demoni e gli script cron è isolare le variabili in un file di configurazione separato, restringendo i permessi esclusivamente all'utente root.

# Creare il file di configurazione protetto
echo "DB_PASS='SuperSegreta!'" > /etc/script_secrets.conf
sudo chmod 400 /etc/script_secrets.conf

Nello script principale (eseguito con privilegi elevati), basta importare le variabili con il comando source /etc/script_secrets.conf. Il codice rimane pulito e le credenziali risultano invisibili agli utenti non autorizzati.

Hardening Server Linux: I 5 Passi Obbligatori Post-Installazione

Immagine generata con Gemini AI


Il Problema: L'Esposizione Predefinita

Un server Linux appena installato ed esposto su cloud pubblico è una tela bianca, ma anche un bersaglio facile. Le configurazioni predefinite del demone SSH e le porte aperte attirano immediatamente scansioni automatizzate, botnet e attacchi brute-force.

La Soluzione: 5 Passaggi di Hardening

Prima di installare qualsiasi applicativo aziendale, l'infrastruttura deve essere blindata applicando il principio del minimo privilegio.

  • 1. Autenticazione a Chiave Pubblica: Abbandona le password. Genera un certificato con ssh-keygen, copialo sul server e modifica /etc/ssh/sshd_config impostando PasswordAuthentication no.
  • 2. Disabilitare l'accesso Root: Nello stesso file di configurazione SSH, assicurati di inserire PermitRootLogin no per forzare l'accesso solo tramite utenza standard e successiva elevazione tramite sudo.
  • 3. Segmentazione con Firewall (UFW): Chiudi tutto il traffico in ingresso tranne lo stretto necessario.
    sudo ufw default deny incoming
    sudo ufw allow ssh
    sudo ufw enable
  • 4. Mitigazione Brute-Force (Fail2Ban): Banna automaticamente a livello di rete gli IP malevoli che falliscono ripetutamente i login.
    sudo apt install fail2ban -y
  • 5. Aggiornamenti Silenti: Mantieni il sistema protetto dalle vulnerabilità zero-day installando unattended-upgrades per l'applicazione automatica delle sole patch di sicurezza critiche, senza interruzioni di servizio.

Pronto Soccorso IT - Ep. 30: "App bloccata a scopo di protezione"


Stai cercando di installare un vecchio software (magari gestionale) perfettamente legittimo, ma una grossa schermata rossa di Windows ti urla in faccia: "Questa app è stata bloccata a scopo di protezione". Non c'è un tasto "Esegui comunque".

1. Il blocco del certificato

L'UAC (Controllo Account Utente) intercetta i software il cui certificato di firma digitale è scaduto o revocato. Fai clic destro sul file .exe scaricato, vai in Proprietà. Se in basso vedi un avviso sulla sicurezza, spunta la casella "Annulla blocco" e dai Applica.

2. Avvio forzato da Terminale

App Lock
Immagine realizzata con Gemini AI


Se Windows continua a fare muro, usa la prepotenza da Admin. Apri il Prompt dei comandi eseguendolo come Amministratore. Naviga tramite comando cd nella cartella dove si trova il file (es. cd C:\Download) e digita il nome dell'eseguibile (es. setup.exe). Essendo lanciato da un ambiente già verificato e con privilegi massimi, l'installazione bypasserà il blocco grafico.

Hai bisogno di supporto tecnico?

Mettere mano al terminale di Windows o ai registri di sistema ti sembra un campo minato? Se preferisci non rischiare i tuoi dati o non hai tempo da perdere, lascia fare a un professionista.

Scopri i miei servizi IT

Pronto Soccorso IT - Ep. 29: Password di Windows locale dimenticata


Attenzione: questa manovra è il motivo per cui noi sistemisti insistiamo sempre per cifrare i dischi con BitLocker. Se l'account è locale (non collegato a una mail Microsoft) e non è cifrato, ecco il classico trucco del "passpartout".

Forgot Password
Immagine realizzata con Gemini AI


1. Il trucco di Utilman

Avvia il PC con una chiavetta di installazione di Windows. Usa Shift+F10 per aprire il prompt dei comandi. Il gioco consiste nel navigare nella cartella System32 e rinominare l'eseguibile dell'Accessibilità (utilman.exe) sostituendolo con il prompt dei comandi (cmd.exe).

2. Il reset brutale

Riavviando il PC normalmente, arrivato alla schermata di blocco, cliccando sull'icona in basso a destra dell'Accessibilità, si aprirà un prompt dei comandi con privilegi massimi (SYSTEM). Basterà digitare net user nomeutente nuovapassword per forzare il cambio e rimettere piede nel sistema. Niente formattazione.

Hai bisogno di supporto tecnico?

Mettere mano al terminale di Windows o ai registri di sistema ti sembra un campo minato? Se preferisci non rischiare i tuoi dati o non hai tempo da perdere, lascia fare a un professionista.

Scopri i miei servizi IT

Pronto Soccorso IT - Ep. 28: Dispositivi Bluetooth accoppiati ma non connessi


Le tue cuffie o il tuo mouse risultano nell'elenco dei dispositivi "Accoppiati", ma cliccando su Connetti non succede assolutamente nulla. Continuare a rimuovere e riaggiungere il dispositivo a volte non serve se lo stack radio si è bloccato.

Bluetooth Service
Immagine realizzata con Gemini AI


1. Il riavvio dei Servizi Radio

Premi Win + R, digita services.msc e dai Invio. Cerca il Servizio di supporto Bluetooth (o bthserv). Se è fermo, avvialo; se è già in esecuzione, fagli un bel Clic destro > Riavvia. Fai lo stesso per i servizi correlati che trovi vicino (come Servizio Gateway audio Bluetooth).

2. Lo strumento di risoluzione dei problemi

Se riavviare il demone non basta, vai in Impostazioni > Sistema > Risoluzione dei problemi > Altri strumenti di risoluzione e lancia quello dedicato al Bluetooth. Windows forzerà un ripristino del driver radio dell'antenna interna.

Hai bisogno di supporto tecnico?

Mettere mano al terminale di Windows o ai registri di sistema ti sembra un campo minato? Se preferisci non rischiare i tuoi dati o non hai tempo da perdere, lascia fare a un professionista.

Scopri i miei servizi IT

Pronto Soccorso IT - Ep. 27: Impossibile accedere al NAS o alle cartelle condivise


Hai appena configurato un NAS aziendale o una stampante con cartella condivisa, ma il tuo PC rifiuta categoricamente di vederla in Rete, restituendoti un errore generico.

SMB 1.0
Immagine realizzata con Gemini AI


1. Individuazione Rete

Prima banalità spesso ignorata: assicurati che la tua connessione sia impostata su "Rete Privata" e non "Pubblica", altrimenti il firewall di Windows chiuderà le porte di condivisione di default.

2. Il demone del protocollo SMBv1

Se il NAS o il dispositivo di rete è un po' datato, usa il protocollo SMBv1 per comunicare. Per ragioni di sicurezza (prevenzione ransomware), Windows 10/11 lo disabilitano di fabbrica. Premi Start, scrivi "Attiva o disattiva funzionalità di Windows", scorri fino a "Supporto per condivisione file SMB 1.0/CIFS", espandi e spunta la casella "Client SMB 1.0/CIFS". Riavvia il PC.

Hai bisogno di supporto tecnico?

Mettere mano al terminale di Windows o ai registri di sistema ti sembra un campo minato? Se preferisci non rischiare i tuoi dati o non hai tempo da perdere, lascia fare a un professionista.

Scopri i miei servizi IT

Guida Pratica: Hypervisor KVM con Web Cockpit su Debian 12

Cockpit Dashboard

Nel precedente articolo abbiamo analizzato la crisi di VMware post-acquisizione Broadcom. È tempo di passare all'azione fornendo una soluzione tecnica robusta ed economica.

In questa guida vi mostrerò come configurare un server Debian 12 (Bookworm) come hypervisor di livello 1 utilizzando KVM (Kernel-based Virtual Machine). Per la gestione, utilizzeremo Cockpit, un'interfaccia web nativa Linux che rende l'amministrazione delle Macchine Virtuali (VM) semplice e intuitiva.

1. Verifica e Aggiornamento del Sistema

Verifichiamo che la CPU supporti le estensioni di virtualizzazione (Intel VT-x o AMD-V):

egrep -c '(vmx|svm)' /proc/cpuinfo

Aggiorniamo il sistema:

sudo apt update && sudo apt full-upgrade -y

2. Installazione dello Stack KVM e Libvirt

Procediamo all'installazione dell'hypervisor e delle librerie di gestione.

sudo apt install qemu-kvm libvirt-clients libvirt-daemon-system bridge-utils virtinst libosinfo-bin -y

3. Configurazione del Networking (Bridge)

Per permettere alle VM di essere visibili nella rete LAN, configuriamo un Network Bridge (es. br0).

ATTENZIONE: Una configurazione errata di `/etc/network/interfaces` può causare la perdita di connettività remota del server. Procedi avendo un accesso fisico o IPMI/iLO.
# /etc/network/interfaces

auto lo
iface lo inet loopback

allow-hotplug enp3s0
iface enp3s0 inet manual

auto br0
iface br0 inet static
    address 192.168.1.100
    netmask 255.255.255.0
    gateway 192.168.1.1
    dns-nameservers 8.8.8.8
    bridge_ports enp3s0
    bridge_stp off
    bridge_fd 0
    bridge_maxwait 0

4. Setup di Cockpit per la Gestione Web

Installiamo l'interfaccia e il plugin per le VM:

sudo apt install cockpit cockpit-machines -y
Colleghiamoci al nostro server andando all'indirizzo https://localhost:9090/system
Buon divertimento a creare le vostre macchine virtuali
Cockpit Dashboard

5. Video Tutorial Completo dell'Installazione

A integrazione della guida, ecco la registrazione tramite Asciinema dell'intero processo. Puoi copiare il testo direttamente dal player.

Conclusioni

Navigando su https://indirizzo_ip_server:9090 avrai ora pieno accesso alla gestione delle tue macchine virtuali. Abbiamo trasformato un server Debian in un potente hypervisor KVM enterprise-grade, senza costi di licenza e senza vendor lock-in.

WSL 2 per IT: Da Windows a Linux in 5 Minuti

Il Problema: L'Onerosa Gestione delle Macchine Virtuali



Per anni, i sistemisti e gli sviluppatori costretti a operare in ambienti ibridi hanno dovuto affrontare un compromesso logorante: mantenere un dual-boot macchinoso o affidarsi a macchine virtuali (VM) pesanti e avide di risorse. L'esigenza di eseguire script Bash, tool di rete o container Docker direttamente da un'infrastruttura Windows Server o client ha sempre comportato colli di bottiglia nelle prestazioni e una netta frammentazione del flusso di lavoro.

La Soluzione: Windows Subsystem for Linux 2 (WSL 2)

Con WSL 2, le regole del gioco cambiano. Microsoft ha introdotto un vero kernel Linux integrato in Windows. Non si tratta più di un semplice layer di traduzione, ma di un'architettura basata su Hyper-V estremamente leggera. Il risultato garantisce un accesso nativo al file system e prestazioni I/O quasi equiparabili a quelle di un'installazione bare-metal.

WSL2
Immagine realizzata con Gemini AI

1. Installazione Rapida tramite PowerShell

L'implementazione è stata drasticamente semplificata. È sufficiente aprire PowerShell con privilegi di amministratore ed eseguire un singolo comando per installare il sottosistema e la distribuzione predefinita (Ubuntu):

wsl --install

Per ambienti di produzione, spesso si preferisce la stabilità di Debian. Puoi visualizzare l'elenco delle distribuzioni disponibili online e procedere con un'installazione mirata:

wsl --list --online
wsl --install -d Debian

2. Hardening e Ottimizzazione delle Risorse

Uno dei problemi più insidiosi riscontrati sul campo è la tendenza di WSL 2 a consumare progressivamente tutta la RAM disponibile nel sistema host. Per prevenire questo "memory leak" architetturale, è obbligatorio applicare un limite rigido alle risorse.

Crea o modifica il file .wslconfig nella root del tuo profilo utente (il percorso è C:\Users\NomeUtente\.wslconfig) e inserisci i seguenti parametri:

[wsl2]
memory=4GB
processors=2
swap=0

Per applicare e forzare le modifiche, riavvia immediatamente il servizio WSL dal terminale:

wsl --shutdown

Conclusione

Implementare WSL 2 trasforma una workstation o un server Windows nel coltellino svizzero definitivo per l'IT Management. Si ottiene la potenza del terminale Linux per il troubleshooting e il networking, senza rinunciare agli strumenti nativi di amministrazione di dominio e sicurezza del mondo Microsoft.