dgt_sys04 – Sicurezza

Titolo del modulo: dgt_sys04 – Sicurezza


Panoramica:
Il modulo “dgt_sys04 – Sicurezza” è pensato per fornire agli studenti conoscenze avanzate su come si mettono in sicurezza i sistemi Linux e il giudizio pratico per farlo. Il programma si concentra sulle pratiche di sicurezza fondamentali che garantiscono integrità, riservatezza e disponibilità delle risorse di sistema. Unisce i concetti teorici a esercitazioni pratiche per costruire una solida comprensione della sicurezza in Linux.

In questo modulo la teoria non è negoziabile, perché nella pratica sarai tu ad approvare le modifiche di sicurezza fatte da una macchina. Non modificherai sshd_config né scriverai regole firewall a mano: dirai alla macchina, in linguaggio naturale, quale deve essere la policy (SSH solo con chiavi su una porta non standard, SELinux in enforcing, solo le porte necessarie aperte) e poi leggerai ogni regola e ogni riga di configurazione che produce, verificando che faccia esattamente questo e che non ti chiuda fuori né lasci un varco aperto.

Obiettivi del modulo:
Al termine di questo modulo, i partecipanti saranno in grado di:

  1. Comprendere i principi fondamentali della sicurezza in Linux.
  2. Far implementare e gestire correttamente le policy SELinux, verificando che SELinux resti sempre abilitato per una protezione ottimale del sistema.
  3. Specificare i requisiti del firewall e revisionare le regole iptables generate dalla macchina per creare ambienti di rete sicuri.
  4. Guidare l’hardening della configurazione del demone SSH per mitigare le vulnerabilità comuni, e verificarne il risultato.
  5. Assicurarsi che gli accessi basati su password siano disabilitati a favore di metodi di autenticazione più sicuri.
  6. Far cambiare la porta SSH predefinita per ridurre i tentativi di accesso non autorizzato, comprendendone il reale valore in termini di sicurezza.
  7. Far implementare l’autenticazione SSH basata su chiavi e confermare che funzioni prima di rimuovere l’accesso con password.

Unità del modulo:

  1. Introduzione alla sicurezza in Linux
  2. Panoramica delle minacce e delle vulnerabilità specifiche dei sistemi Linux.
  3. L’importanza di mantenere un ambiente di sistema sicuro.

  4. Fondamenti di SELinux

  5. Introduzione a SELinux (Security-Enhanced Linux).
  6. L’importanza di abilitare SELinux per applicare i controlli di accesso.
  7. Esercitazioni in linguaggio naturale: chiedere alla macchina di configurare e diagnosticare le policy SELinux, poi leggere i contesti e i denial che riporta.

  8. Sicurezza di rete con iptables

  9. Basi del filtraggio dei pacchetti di rete e ruolo di iptables.
  10. Come le regole proteggono dai comuni attacchi di rete, e come leggerle.
  11. Sessioni di laboratorio in cui descrivi alla macchina una configurazione firewall sicura e verifichi il ruleset che costruisce.

  12. Mettere in sicurezza i servizi SSH

  13. Comprendere le potenziali vulnerabilità dei demoni SSH.
  14. Configurazioni per l’hardening di SSH, inclusa la disabilitazione dell’autenticazione con password.
  15. Cambiare la porta SSH predefinita e le sue implicazioni per la sicurezza.
  16. Metodi di autenticazione SSH basati su chiavi.

  17. Strategie di autenticazione senza password

  18. Esplorare alternative ai tradizionali accessi con password.
  19. Come si generano e distribuiscono le chiavi SSH, e come verificare cosa ha fatto la macchina a ogni passaggio.
  20. Best practice per gestire in sicurezza chiavi pubbliche e private.

  21. Misure di sicurezza avanzate

  22. Ulteriori miglioramenti della sicurezza come fail2ban e strumenti di auditing.
  23. Tecniche di monitoraggio e logging per rilevare attività sospette.
  24. Strategie di miglioramento continuo per mantenere la sicurezza del sistema.

Destinatari:
Questo modulo è rivolto a professionisti IT, amministratori di sistema, network engineer e appassionati di cybersecurity responsabili della gestione di sistemi Linux. Presuppone una conoscenza di base dell’amministrazione Linux.

Prerequisiti:
– Familiarità con l’ambiente a riga di comando di Linux, sufficiente a leggere i comandi e il loro output.
– Conoscenza di base dei concetti di networking.
– Comprensione dei fondamenti di SSH.

Formato del modulo:
Il modulo si svolge attraverso lezioni interattive, laboratori in linguaggio naturale e casi di studio reali. I partecipanti avranno accesso ad ambienti di laboratorio virtuali in cui istruiscono la macchina e ne verificano le modifiche.

Valutazione:
Le conoscenze e le competenze dei partecipanti saranno valutate tramite quiz, esercitazioni di laboratorio e un progetto finale in cui guidano la macchina a mettere in sicurezza un sistema Linux secondo i principi insegnati nel modulo, dimostrando poi che ogni misura è attiva e funzionante.

Gli studenti possono caricare i propri esercizi nel Progetto Git dell’Academy DevOps & SRE. Per questo modulo, crea una cartella con il tuo username come nome nella seguente sottocartella: https://github.com/Garanti-Del-Talento/gdt_academy