SlideShare a Scribd company logo
20/10/2016 Fuss Server
FUSS Server
20 Ottobre 2016
LugBz workshop @ CTS Einaudi
Christopher R. Gabriel
Truelite
© 2016 Truelite Srl - La copia letterale e la distribuzione del materiale qui raccolto nella sua integrità
sono permesse con qualsiasi mezzo, a condizione che questa nota sia riprodotta.
20/10/2016 Fuss Server
Agenda
● Perchè
● Requisiti
● La soluzione software
● Componenti e architettura tecnica
● Futuro?
20/10/2016 Fuss Server
Perchè
● Luglio/Agosto 2005: migrazione completa
a software libero di tutte le scuole in
lingua italiana dell'Alto Adige.
● Schema standard presente all'interno della
rete delle singole scuole, da replicare e
estendere usando solo software libero
● Realizzare un modello standard che
soddisfi i requisiti richiesto dalla
Intendenza Scolastica
20/10/2016 Fuss Server
Requisiti
● La soluzione software è stata realizzata a
partire dai requisiti relativi a:
– Attuazione della migrazione
– Trasferimento di competenze e formazione
– Rapidità di deploy e ripristino
– Mantenimento degli standard e delle policy
della distribuzione GNU/Linux adottata
(Debian 3.1)
– Redistribuzione delle soluzioni tecniche e
aggiornamento continuo dei requisiti tecnici
20/10/2016 Fuss Server
Migrazione
● Installazione di tutti i servizi necessari
● Applicazione delle configurazioni
prestabilite
● Migrazione dati utenti/gruppi/ruoli etc da
AD
● Adeguamento continuo sulle
problematiche riscontrate e non
individuate in fase di analisi/sopralluogo.
20/10/2016 Fuss Server
Formazione
● Per ridurre al minimo l'effort formativo
necessario, la soluzione deve
automatizzare al massimo tutte le
procedure di installazione e
configurazione
● Formazione e trasferimento di
competenze verso referenti tecnici del
progetto, per approfondimenti sulla
struttura e la configurazione specifica a
partire dal modello base.
20/10/2016 Fuss Server
Rapidità di installazione e ripristino
● 83 server in circa un mese (oltre ai ~2300
client).
● Ultima spiaggia per risoluzione dei
problemi, ripetere l'installazione.
● Ridurre downtime al massimo, HA in ogni
caso (nel 2005) non necessario.
● Minimizzare la quantità di lavoro del
referente tecnico della scuola.
20/10/2016 Fuss Server
Standard e policy
● Utilizzare soluzioni standard
● Rispettare criteri e policy della distribuzione
● Integrazione totale
● Nessuna ingerenza e/o introduzione di
vincoli o forzature rispetto alla flessibilità di
configurazione
( SuSE Yast, anyone? <g> )
● Un punto di partenza e non di arrivo
20/10/2016 Fuss Server
Redistribuzione
● Necessario automatizzare la
redistribuzione dei cambiamenti
successivi in termini di:
– Politiche di configurazione
– Nuove integrazioni software
– Tools
– Documentazione
20/10/2016 Fuss Server
Soluzione software
● Pacchetto debian fuss-server:
– Software necessari per l'ambiente server
espressi tramite dipendenze
– Template di file di configurazione
– “Wizard” con 8 domande totali per
personalizzazione di base
– Script di automazione
– Applicazione fuss-server per attuazione della
configurazione
20/10/2016 Fuss Server
Soluzione software
● Dati richiesti all'operatore:
– Interfaccia di rete LAN e WAN
– Rete locale
– Range indirizzi dinamici DHCP
– Domanio locale
– Workgroup
– Denominazione struttura
– Master password
20/10/2016 Fuss Server
Modello rete
● Il modello è standardizzato per ogni
singola scuola
FUSS
SERVER
Rete esterna
LANRouter
WIFI NETWORK
20/10/2016 Fuss Server
Requisiti Rete
● La macchina server deve prevedere un
minimo di 2 interfacce di rete fisica
(LAN/green, WAN/red) con l'opzione di una
terza per la gestione dell'ambito WIFI/blue.
● WAN può usare DHCP o indirizzamento
statico: la sua configurazione specifica è
demandata agli strumenti della distribuzione.
● LAN è decisa autonomamente rispetto al
contesto locale, sia per indirizzamento che
per dimensioni
20/10/2016 Fuss Server
Servizi
● FUSS Server si preoccupa di configurare
uno stack standard di servizi, partendo
dai template forniti dal pacchetto stesso.
● I template sono elaborati
dall'applicazione fuss-server utilizzando i
dati di configurazione forniti tramite il
Wizard
● Fornisce, tramite le dipendenze, tutto i
pacchetti software necessari.
20/10/2016 Fuss Server
Servizi
● LDAP - Autenticazione centralizzata
● DNS - Gestione host rete locale e cache
per rete pubblica
● DHCP - Range configurabile per
indirizzamento dinamico, con auto-update
del DNS.
● Network File System - Condivisione sulla
rete LAN delle directory home degli utenti
● Windows Primary Domain Controller
20/10/2016 Fuss Server
Servizi
● Apache HTTPD Web server
● IP stateful firewall e router
● HTTP Proxy Cache
● HTTP Proxy Content Filter
● Proxy Secure Shell
Tutti i servizi sono implementati con componenti
standard disponibili sul sistema, l'automazione
riguarda la configurazione di questi. Ogni
personalizzazione successiva è permessa per
adattarsi al contesto specifico.
20/10/2016 Fuss Server
Fuss Server
# fuss-server create
Avvia il processo di configurazione dei
servizi a partire dal file di configurazione
/etc/fuss-server/fuss-server.conf
Se il file di configurazione non è presente
o non contiene le informazioni richieste,
viene avviato wizard di configurazione
20/10/2016 Fuss Server
Fuss Client
● Obiettivo: ridurre al minimo complessità,
tempo e difficoltà di installazione di una
postazione client GNU/Linux, per inserirla
nel contesto di una rete gestita da un Fuss
Server
● Installa tutti i componenti software
necessari
● Esegue la configurazione della macchina a
partire dalle informazioni fornite dal server
FUSS
20/10/2016 Fuss Server
FUSS Client - Configurazione
● Autenticazione degli utenti tramite server
LDAP
● Download e installazione dei certificati SSL
necessari
● Mount delle directory HOME tramite NFS
● Installazione chiavi di autenticazione SSH
● Sincronizzazione NSCD
● Inserimento in configurazione cluster
● Creazione di utente locale di amministrazione
20/10/2016 Fuss Server
FUSS Client - Configurazione
● Configurazione minimale ambiente
desktop
● Registrazione su server DHCP/DNS
● Rimozione di utenze locali di
test/installazione
Tutte le operazioni possono essere
annullate, riportando la macchina allo
stato iniziale.
20/10/2016 Fuss Server
FUSS Client - Opzioni
● -n Non utilizzo di HOME condivise, ma
creazione di directory locali
● -a Configurazione della postazione
● -r Annulla la configurazione della
postazione
● -g Specifica cluster/gruppo di client di
appartenenza
20/10/2016 Fuss Server
Cluster?
● Cluster: indica un gruppo di macchine
presenti sulla Lan. Questa configurazione, in
parte automatizzata, permette l'utilizzo di
strumenti (già installati) per facilitare
l'amministrazione di gruppi di macchine. Ad
esempio, posso creare un cluster di macchine
per ogni aula presente nella scuola.
● Oltre agli strumenti integrati, possono essere
gestiti tramite tool di terze parti (es.
cluster-ssh)
20/10/2016 Fuss Server
2006: Octofuss Suite
● Suite di applicazioni di gestione e raccolta
dati
● Componenti client: octofuss, octofuss-
ctl, octofuss-client (, octonet)
● Componente server: octofussd
● Struttura client/server su API HTTP simil-
REST
● Strutturato per plugin
● Autorizzazioni per singolo plugin
20/10/2016 Fuss Server
octofussd
● Installato su FUSS Server, responsabile
della gestione e distribuzione dei dati, e
di eseguire task di amministrazione
● Tutti i plugin vengono inseriti in un albero
dati coerente
● Operazioni simil-REST (xmlrpc + json):
– Navigazione: cd, list, ls
– Gestione: create, delete, get, has, set
– Varie: doc, has, quit
20/10/2016 Fuss Server
Octofuss Tree
$ octofussctl http://192.168.84.9:13400/conf/
Username: root
Password:
Welcome to the octofussd client. Queries are sent to http://192.168.84.9:13400/conf/
/> ls
contentfilter
samba
users
netperms
firewall
computers
auth
serverinfo
cluster
hostqueue
userlog
upgrades
services
scripts
avahicomputers
/> ls /users/users/
admin
nobody
/> ls /computers
:actions:
workstation1
server
ubuntu
20/10/2016 Fuss Server
Octofuss Tree
/> get /users/users/admin
{'uid': 'admin', 'loginShell': '/bin/false', 'enabled': False,
'gidNumber': '0', 'sambaPrimaryGroupSID': 'S-1-5-21-1529128530-807834107-
4714568-512', 'sambaSID': 'S-1-5-21-1529128530-807834107-4714568-500',
'gecos': 'Netbios Domain Administrator', 'controllerGroup': None,
'homeDirectory': '/home/admin', 'uidNumber': '0', 'ou': None}
/> set /users/users/admin/loginShell /bin/bash
/> get /users/users/admin
{'uid': 'admin', 'loginShell': '/bin/bash', 'enabled': True, 'gidNumber':
'0', 'sambaPrimaryGroupSID': 'S-1-5-21-1529128530-807834107-4714568-512',
'sambaSID': 'S-1-5-21-1529128530-807834107-4714568-500', 'gecos':
'Netbios Domain Administrator', 'controllerGroup': None, 'homeDirectory':
'/home/admin', 'uidNumber': '0', 'ou': None}
/> cd /users/users/admin
/users/users/admin> get loginShell
/bin/bash
20/10/2016 Fuss Server
octofuss-client
● Componente installato su tutti le
macchine client, per la comunicazione
verso octofussd in modo trasparente
● Trasmette dati relativi alla macchina per
aggregazione sul server, ed eventuale
trasmissione successiva
● Riceve istruzioni e comandi da
octofussd
20/10/2016 Fuss Server
octofuss
● Accesso a octofussd tramite interfaccia
grafica Gtk/X-Window
● Utilizzabile tramite tunnel di rete
● Componenti attivati sulla base di quanto
offerto dal server e dalle autorizzazioni
per l'utente
● Permette facilmente la delega alla
gestione di aspetti della rete
20/10/2016 Fuss Server
octofussctl
● Accesso a octofussd tramite CLI
● Permette esecuzione di operazioni
complesse in batch, tramite scripts
● Utilizzabile da remoto con minor utilizzo
di banda
● OCTOFUSS_USER / OCTOFUSS_PASSWORD
nell'enviroment per automatizzare il
processo di autenticazione.
20/10/2016 Fuss Server
Grazie
Grazie per l'attenzione!
Q & A

More Related Content

Viewers also liked

Viewers also liked (16)

01. el siglo xviii
01. el siglo xviii01. el siglo xviii
01. el siglo xviii
 
Harah cherish
Harah cherishHarah cherish
Harah cherish
 
gerry_castellino_2016_BI
gerry_castellino_2016_BIgerry_castellino_2016_BI
gerry_castellino_2016_BI
 
1440126335 247 _codigo_genetico
1440126335 247 _codigo_genetico1440126335 247 _codigo_genetico
1440126335 247 _codigo_genetico
 
Ovi
OviOvi
Ovi
 
Zwischen Realität & Visionen... Quo vadis, Großregion?
Zwischen Realität & Visionen... Quo vadis, Großregion?Zwischen Realität & Visionen... Quo vadis, Großregion?
Zwischen Realität & Visionen... Quo vadis, Großregion?
 
Book review on kautilya’s arthashastra
Book review on kautilya’s arthashastraBook review on kautilya’s arthashastra
Book review on kautilya’s arthashastra
 
Práctica introductoria mapa topográfico
Práctica introductoria mapa topográficoPráctica introductoria mapa topográfico
Práctica introductoria mapa topográfico
 
Rock the Technical Interview
Rock the Technical InterviewRock the Technical Interview
Rock the Technical Interview
 
Proposta de aula
Proposta de aulaProposta de aula
Proposta de aula
 
Problemas medioambientales
Problemas medioambientalesProblemas medioambientales
Problemas medioambientales
 
TIC dans l'industrie automobile
TIC dans l'industrie  automobileTIC dans l'industrie  automobile
TIC dans l'industrie automobile
 
Bloque 2 - Práctica: Mapa A4
Bloque 2 - Práctica: Mapa A4Bloque 2 - Práctica: Mapa A4
Bloque 2 - Práctica: Mapa A4
 
Bloque 1. La Geografía y el estudio del espacio geográfico. (TEXTO)
Bloque 1. La Geografía y el estudio del espacio geográfico. (TEXTO)Bloque 1. La Geografía y el estudio del espacio geográfico. (TEXTO)
Bloque 1. La Geografía y el estudio del espacio geográfico. (TEXTO)
 
I Guerra Mundial
I Guerra MundialI Guerra Mundial
I Guerra Mundial
 
Tratamiento aneurisma
Tratamiento aneurismaTratamiento aneurisma
Tratamiento aneurisma
 

Similar to Workshop – Il server FUSS: struttura, filosofia progettuale e casi d’uso

OCP-Architettura e caratteristiche della PaaS
OCP-Architettura e caratteristiche della PaaSOCP-Architettura e caratteristiche della PaaS
OCP-Architettura e caratteristiche della PaaSopencityplatform
 
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012Fabio Grasso
 
Linux Embedded per l'automazione
Linux Embedded per l'automazioneLinux Embedded per l'automazione
Linux Embedded per l'automazioneDaniele Costarella
 
Da Zero all'open per PA e PMI
Da Zero all'open per PA e PMIDa Zero all'open per PA e PMI
Da Zero all'open per PA e PMINaLUG
 
Drupal 10: un framework PHP di sviluppo Cloud Native moderno
Drupal 10: un framework PHP di sviluppo Cloud Native modernoDrupal 10: un framework PHP di sviluppo Cloud Native moderno
Drupal 10: un framework PHP di sviluppo Cloud Native modernosparkfabrik
 
Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Andrea Marchetti
 
Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Andrea Marchetti
 
Omnis italianmeeting 2016-10-20
Omnis italianmeeting 2016-10-20Omnis italianmeeting 2016-10-20
Omnis italianmeeting 2016-10-20Romualdo Gobbo
 
JAMP DAY 2010 - ROMA (1)
JAMP DAY 2010 - ROMA (1)JAMP DAY 2010 - ROMA (1)
JAMP DAY 2010 - ROMA (1)jampslide
 
Babel presenta: Opsview
Babel presenta: OpsviewBabel presenta: Opsview
Babel presenta: OpsviewBabel
 
Open Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studioOpen Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studioPar-Tec S.p.A.
 
.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il Mobile.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il MobilePietro Libro
 
ASP.NET Core Services e Linux per il Mobile - Pietro Libro - Codemotion Rome...
ASP.NET Core Services e Linux per il Mobile  - Pietro Libro - Codemotion Rome...ASP.NET Core Services e Linux per il Mobile  - Pietro Libro - Codemotion Rome...
ASP.NET Core Services e Linux per il Mobile - Pietro Libro - Codemotion Rome...Codemotion
 
Oltre il Worker Role, da Serverless computing a VM Scale Set
Oltre il Worker Role, da Serverless computing a VM Scale SetOltre il Worker Role, da Serverless computing a VM Scale Set
Oltre il Worker Role, da Serverless computing a VM Scale SetVito Flavio Lorusso
 
Cloudup, cloud server al minuto
Cloudup, cloud server al minutoCloudup, cloud server al minuto
Cloudup, cloud server al minutoENTER S.r.l.
 
Il cielo è sempre più azure
Il cielo è sempre più azureIl cielo è sempre più azure
Il cielo è sempre più azureKlab
 

Similar to Workshop – Il server FUSS: struttura, filosofia progettuale e casi d’uso (20)

OCP Paas_ultima
OCP Paas_ultimaOCP Paas_ultima
OCP Paas_ultima
 
OCP-Architettura e caratteristiche della PaaS
OCP-Architettura e caratteristiche della PaaSOCP-Architettura e caratteristiche della PaaS
OCP-Architettura e caratteristiche della PaaS
 
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012
Monitorare Lotus Domino con Nagios e Centreon - Dominopoint Days 2012
 
Linux Embedded per l'automazione
Linux Embedded per l'automazioneLinux Embedded per l'automazione
Linux Embedded per l'automazione
 
Da Zero all'open per PA e PMI
Da Zero all'open per PA e PMIDa Zero all'open per PA e PMI
Da Zero all'open per PA e PMI
 
Da 0 all'open per PA e PMI
Da 0 all'open per PA e PMIDa 0 all'open per PA e PMI
Da 0 all'open per PA e PMI
 
Drupal 10: un framework PHP di sviluppo Cloud Native moderno
Drupal 10: un framework PHP di sviluppo Cloud Native modernoDrupal 10: un framework PHP di sviluppo Cloud Native moderno
Drupal 10: un framework PHP di sviluppo Cloud Native moderno
 
Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.
 
Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.Set up and management of an integrated information system on Linux.
Set up and management of an integrated information system on Linux.
 
Omnis italianmeeting 2016-10-20
Omnis italianmeeting 2016-10-20Omnis italianmeeting 2016-10-20
Omnis italianmeeting 2016-10-20
 
JAMP DAY 2010 - ROMA (1)
JAMP DAY 2010 - ROMA (1)JAMP DAY 2010 - ROMA (1)
JAMP DAY 2010 - ROMA (1)
 
#dd12 monitorare lotus domino con nagios e centreon
#dd12 monitorare lotus domino con nagios e centreon#dd12 monitorare lotus domino con nagios e centreon
#dd12 monitorare lotus domino con nagios e centreon
 
Babel presenta: Opsview
Babel presenta: OpsviewBabel presenta: Opsview
Babel presenta: Opsview
 
Open Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studioOpen Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studio
 
.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il Mobile.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il Mobile
 
ASP.NET Core Services e Linux per il Mobile - Pietro Libro - Codemotion Rome...
ASP.NET Core Services e Linux per il Mobile  - Pietro Libro - Codemotion Rome...ASP.NET Core Services e Linux per il Mobile  - Pietro Libro - Codemotion Rome...
ASP.NET Core Services e Linux per il Mobile - Pietro Libro - Codemotion Rome...
 
Oltre il Worker Role, da Serverless computing a VM Scale Set
Oltre il Worker Role, da Serverless computing a VM Scale SetOltre il Worker Role, da Serverless computing a VM Scale Set
Oltre il Worker Role, da Serverless computing a VM Scale Set
 
Cloudup, cloud server al minuto
Cloudup, cloud server al minutoCloudup, cloud server al minuto
Cloudup, cloud server al minuto
 
10 Linuxday2002
10 Linuxday200210 Linuxday2002
10 Linuxday2002
 
Il cielo è sempre più azure
Il cielo è sempre più azureIl cielo è sempre più azure
Il cielo è sempre più azure
 

More from Truelite

Systemd - Como Lug
Systemd - Como LugSystemd - Como Lug
Systemd - Como LugTruelite
 
Systemd - Firenze LUG
Systemd - Firenze LUGSystemd - Firenze LUG
Systemd - Firenze LUGTruelite
 
Sistemi di virtualizzazione in ambiente Linux
Sistemi di virtualizzazione in ambiente LinuxSistemi di virtualizzazione in ambiente Linux
Sistemi di virtualizzazione in ambiente LinuxTruelite
 
LDAP: caratteristiche e funzionalità
LDAP: caratteristiche e funzionalitàLDAP: caratteristiche e funzionalità
LDAP: caratteristiche e funzionalitàTruelite
 
Server aziendali con Linux
Server aziendali con LinuxServer aziendali con Linux
Server aziendali con LinuxTruelite
 
Il software libero nella scuola, esperienze e soluzioni
Il software libero nella scuola, esperienze e soluzioniIl software libero nella scuola, esperienze e soluzioni
Il software libero nella scuola, esperienze e soluzioniTruelite
 
Il software libero: una risorsa per lo sviluppo e l'economia locale
Il software libero: una risorsa per lo sviluppo e l'economia localeIl software libero: una risorsa per lo sviluppo e l'economia locale
Il software libero: una risorsa per lo sviluppo e l'economia localeTruelite
 
Sistemi di virtualizzazione con Linux
Sistemi di virtualizzazione con LinuxSistemi di virtualizzazione con Linux
Sistemi di virtualizzazione con LinuxTruelite
 
Esperienze di migrazione a software libero
Esperienze di migrazione a software liberoEsperienze di migrazione a software libero
Esperienze di migrazione a software liberoTruelite
 
Il testo unico sulla privacy
Il testo unico sulla privacyIl testo unico sulla privacy
Il testo unico sulla privacyTruelite
 
Il software libero come scelta strategica d'impresa
Il software libero come scelta strategica d'impresaIl software libero come scelta strategica d'impresa
Il software libero come scelta strategica d'impresaTruelite
 
Lo sviluppo del Software Libero per le PMI e la PA"
Lo sviluppo del Software Libero per le PMI e la PA"Lo sviluppo del Software Libero per le PMI e la PA"
Lo sviluppo del Software Libero per le PMI e la PA"Truelite
 
Un server aziendale conforme alla normativa sulla privacy con Linux e Samba
Un server aziendale conforme alla normativa sulla privacy con Linux e SambaUn server aziendale conforme alla normativa sulla privacy con Linux e Samba
Un server aziendale conforme alla normativa sulla privacy con Linux e SambaTruelite
 
Tecnologie di virtualizzazione per il consolidamento dei server
Tecnologie di virtualizzazione per il consolidamento dei serverTecnologie di virtualizzazione per il consolidamento dei server
Tecnologie di virtualizzazione per il consolidamento dei serverTruelite
 

More from Truelite (14)

Systemd - Como Lug
Systemd - Como LugSystemd - Como Lug
Systemd - Como Lug
 
Systemd - Firenze LUG
Systemd - Firenze LUGSystemd - Firenze LUG
Systemd - Firenze LUG
 
Sistemi di virtualizzazione in ambiente Linux
Sistemi di virtualizzazione in ambiente LinuxSistemi di virtualizzazione in ambiente Linux
Sistemi di virtualizzazione in ambiente Linux
 
LDAP: caratteristiche e funzionalità
LDAP: caratteristiche e funzionalitàLDAP: caratteristiche e funzionalità
LDAP: caratteristiche e funzionalità
 
Server aziendali con Linux
Server aziendali con LinuxServer aziendali con Linux
Server aziendali con Linux
 
Il software libero nella scuola, esperienze e soluzioni
Il software libero nella scuola, esperienze e soluzioniIl software libero nella scuola, esperienze e soluzioni
Il software libero nella scuola, esperienze e soluzioni
 
Il software libero: una risorsa per lo sviluppo e l'economia locale
Il software libero: una risorsa per lo sviluppo e l'economia localeIl software libero: una risorsa per lo sviluppo e l'economia locale
Il software libero: una risorsa per lo sviluppo e l'economia locale
 
Sistemi di virtualizzazione con Linux
Sistemi di virtualizzazione con LinuxSistemi di virtualizzazione con Linux
Sistemi di virtualizzazione con Linux
 
Esperienze di migrazione a software libero
Esperienze di migrazione a software liberoEsperienze di migrazione a software libero
Esperienze di migrazione a software libero
 
Il testo unico sulla privacy
Il testo unico sulla privacyIl testo unico sulla privacy
Il testo unico sulla privacy
 
Il software libero come scelta strategica d'impresa
Il software libero come scelta strategica d'impresaIl software libero come scelta strategica d'impresa
Il software libero come scelta strategica d'impresa
 
Lo sviluppo del Software Libero per le PMI e la PA"
Lo sviluppo del Software Libero per le PMI e la PA"Lo sviluppo del Software Libero per le PMI e la PA"
Lo sviluppo del Software Libero per le PMI e la PA"
 
Un server aziendale conforme alla normativa sulla privacy con Linux e Samba
Un server aziendale conforme alla normativa sulla privacy con Linux e SambaUn server aziendale conforme alla normativa sulla privacy con Linux e Samba
Un server aziendale conforme alla normativa sulla privacy con Linux e Samba
 
Tecnologie di virtualizzazione per il consolidamento dei server
Tecnologie di virtualizzazione per il consolidamento dei serverTecnologie di virtualizzazione per il consolidamento dei server
Tecnologie di virtualizzazione per il consolidamento dei server
 

Workshop – Il server FUSS: struttura, filosofia progettuale e casi d’uso

  • 1. 20/10/2016 Fuss Server FUSS Server 20 Ottobre 2016 LugBz workshop @ CTS Einaudi Christopher R. Gabriel Truelite © 2016 Truelite Srl - La copia letterale e la distribuzione del materiale qui raccolto nella sua integrità sono permesse con qualsiasi mezzo, a condizione che questa nota sia riprodotta.
  • 2. 20/10/2016 Fuss Server Agenda ● Perchè ● Requisiti ● La soluzione software ● Componenti e architettura tecnica ● Futuro?
  • 3. 20/10/2016 Fuss Server Perchè ● Luglio/Agosto 2005: migrazione completa a software libero di tutte le scuole in lingua italiana dell'Alto Adige. ● Schema standard presente all'interno della rete delle singole scuole, da replicare e estendere usando solo software libero ● Realizzare un modello standard che soddisfi i requisiti richiesto dalla Intendenza Scolastica
  • 4. 20/10/2016 Fuss Server Requisiti ● La soluzione software è stata realizzata a partire dai requisiti relativi a: – Attuazione della migrazione – Trasferimento di competenze e formazione – Rapidità di deploy e ripristino – Mantenimento degli standard e delle policy della distribuzione GNU/Linux adottata (Debian 3.1) – Redistribuzione delle soluzioni tecniche e aggiornamento continuo dei requisiti tecnici
  • 5. 20/10/2016 Fuss Server Migrazione ● Installazione di tutti i servizi necessari ● Applicazione delle configurazioni prestabilite ● Migrazione dati utenti/gruppi/ruoli etc da AD ● Adeguamento continuo sulle problematiche riscontrate e non individuate in fase di analisi/sopralluogo.
  • 6. 20/10/2016 Fuss Server Formazione ● Per ridurre al minimo l'effort formativo necessario, la soluzione deve automatizzare al massimo tutte le procedure di installazione e configurazione ● Formazione e trasferimento di competenze verso referenti tecnici del progetto, per approfondimenti sulla struttura e la configurazione specifica a partire dal modello base.
  • 7. 20/10/2016 Fuss Server Rapidità di installazione e ripristino ● 83 server in circa un mese (oltre ai ~2300 client). ● Ultima spiaggia per risoluzione dei problemi, ripetere l'installazione. ● Ridurre downtime al massimo, HA in ogni caso (nel 2005) non necessario. ● Minimizzare la quantità di lavoro del referente tecnico della scuola.
  • 8. 20/10/2016 Fuss Server Standard e policy ● Utilizzare soluzioni standard ● Rispettare criteri e policy della distribuzione ● Integrazione totale ● Nessuna ingerenza e/o introduzione di vincoli o forzature rispetto alla flessibilità di configurazione ( SuSE Yast, anyone? <g> ) ● Un punto di partenza e non di arrivo
  • 9. 20/10/2016 Fuss Server Redistribuzione ● Necessario automatizzare la redistribuzione dei cambiamenti successivi in termini di: – Politiche di configurazione – Nuove integrazioni software – Tools – Documentazione
  • 10. 20/10/2016 Fuss Server Soluzione software ● Pacchetto debian fuss-server: – Software necessari per l'ambiente server espressi tramite dipendenze – Template di file di configurazione – “Wizard” con 8 domande totali per personalizzazione di base – Script di automazione – Applicazione fuss-server per attuazione della configurazione
  • 11. 20/10/2016 Fuss Server Soluzione software ● Dati richiesti all'operatore: – Interfaccia di rete LAN e WAN – Rete locale – Range indirizzi dinamici DHCP – Domanio locale – Workgroup – Denominazione struttura – Master password
  • 12. 20/10/2016 Fuss Server Modello rete ● Il modello è standardizzato per ogni singola scuola FUSS SERVER Rete esterna LANRouter WIFI NETWORK
  • 13. 20/10/2016 Fuss Server Requisiti Rete ● La macchina server deve prevedere un minimo di 2 interfacce di rete fisica (LAN/green, WAN/red) con l'opzione di una terza per la gestione dell'ambito WIFI/blue. ● WAN può usare DHCP o indirizzamento statico: la sua configurazione specifica è demandata agli strumenti della distribuzione. ● LAN è decisa autonomamente rispetto al contesto locale, sia per indirizzamento che per dimensioni
  • 14. 20/10/2016 Fuss Server Servizi ● FUSS Server si preoccupa di configurare uno stack standard di servizi, partendo dai template forniti dal pacchetto stesso. ● I template sono elaborati dall'applicazione fuss-server utilizzando i dati di configurazione forniti tramite il Wizard ● Fornisce, tramite le dipendenze, tutto i pacchetti software necessari.
  • 15. 20/10/2016 Fuss Server Servizi ● LDAP - Autenticazione centralizzata ● DNS - Gestione host rete locale e cache per rete pubblica ● DHCP - Range configurabile per indirizzamento dinamico, con auto-update del DNS. ● Network File System - Condivisione sulla rete LAN delle directory home degli utenti ● Windows Primary Domain Controller
  • 16. 20/10/2016 Fuss Server Servizi ● Apache HTTPD Web server ● IP stateful firewall e router ● HTTP Proxy Cache ● HTTP Proxy Content Filter ● Proxy Secure Shell Tutti i servizi sono implementati con componenti standard disponibili sul sistema, l'automazione riguarda la configurazione di questi. Ogni personalizzazione successiva è permessa per adattarsi al contesto specifico.
  • 17. 20/10/2016 Fuss Server Fuss Server # fuss-server create Avvia il processo di configurazione dei servizi a partire dal file di configurazione /etc/fuss-server/fuss-server.conf Se il file di configurazione non è presente o non contiene le informazioni richieste, viene avviato wizard di configurazione
  • 18. 20/10/2016 Fuss Server Fuss Client ● Obiettivo: ridurre al minimo complessità, tempo e difficoltà di installazione di una postazione client GNU/Linux, per inserirla nel contesto di una rete gestita da un Fuss Server ● Installa tutti i componenti software necessari ● Esegue la configurazione della macchina a partire dalle informazioni fornite dal server FUSS
  • 19. 20/10/2016 Fuss Server FUSS Client - Configurazione ● Autenticazione degli utenti tramite server LDAP ● Download e installazione dei certificati SSL necessari ● Mount delle directory HOME tramite NFS ● Installazione chiavi di autenticazione SSH ● Sincronizzazione NSCD ● Inserimento in configurazione cluster ● Creazione di utente locale di amministrazione
  • 20. 20/10/2016 Fuss Server FUSS Client - Configurazione ● Configurazione minimale ambiente desktop ● Registrazione su server DHCP/DNS ● Rimozione di utenze locali di test/installazione Tutte le operazioni possono essere annullate, riportando la macchina allo stato iniziale.
  • 21. 20/10/2016 Fuss Server FUSS Client - Opzioni ● -n Non utilizzo di HOME condivise, ma creazione di directory locali ● -a Configurazione della postazione ● -r Annulla la configurazione della postazione ● -g Specifica cluster/gruppo di client di appartenenza
  • 22. 20/10/2016 Fuss Server Cluster? ● Cluster: indica un gruppo di macchine presenti sulla Lan. Questa configurazione, in parte automatizzata, permette l'utilizzo di strumenti (già installati) per facilitare l'amministrazione di gruppi di macchine. Ad esempio, posso creare un cluster di macchine per ogni aula presente nella scuola. ● Oltre agli strumenti integrati, possono essere gestiti tramite tool di terze parti (es. cluster-ssh)
  • 23. 20/10/2016 Fuss Server 2006: Octofuss Suite ● Suite di applicazioni di gestione e raccolta dati ● Componenti client: octofuss, octofuss- ctl, octofuss-client (, octonet) ● Componente server: octofussd ● Struttura client/server su API HTTP simil- REST ● Strutturato per plugin ● Autorizzazioni per singolo plugin
  • 24. 20/10/2016 Fuss Server octofussd ● Installato su FUSS Server, responsabile della gestione e distribuzione dei dati, e di eseguire task di amministrazione ● Tutti i plugin vengono inseriti in un albero dati coerente ● Operazioni simil-REST (xmlrpc + json): – Navigazione: cd, list, ls – Gestione: create, delete, get, has, set – Varie: doc, has, quit
  • 25. 20/10/2016 Fuss Server Octofuss Tree $ octofussctl http://192.168.84.9:13400/conf/ Username: root Password: Welcome to the octofussd client. Queries are sent to http://192.168.84.9:13400/conf/ /> ls contentfilter samba users netperms firewall computers auth serverinfo cluster hostqueue userlog upgrades services scripts avahicomputers /> ls /users/users/ admin nobody /> ls /computers :actions: workstation1 server ubuntu
  • 26. 20/10/2016 Fuss Server Octofuss Tree /> get /users/users/admin {'uid': 'admin', 'loginShell': '/bin/false', 'enabled': False, 'gidNumber': '0', 'sambaPrimaryGroupSID': 'S-1-5-21-1529128530-807834107- 4714568-512', 'sambaSID': 'S-1-5-21-1529128530-807834107-4714568-500', 'gecos': 'Netbios Domain Administrator', 'controllerGroup': None, 'homeDirectory': '/home/admin', 'uidNumber': '0', 'ou': None} /> set /users/users/admin/loginShell /bin/bash /> get /users/users/admin {'uid': 'admin', 'loginShell': '/bin/bash', 'enabled': True, 'gidNumber': '0', 'sambaPrimaryGroupSID': 'S-1-5-21-1529128530-807834107-4714568-512', 'sambaSID': 'S-1-5-21-1529128530-807834107-4714568-500', 'gecos': 'Netbios Domain Administrator', 'controllerGroup': None, 'homeDirectory': '/home/admin', 'uidNumber': '0', 'ou': None} /> cd /users/users/admin /users/users/admin> get loginShell /bin/bash
  • 27. 20/10/2016 Fuss Server octofuss-client ● Componente installato su tutti le macchine client, per la comunicazione verso octofussd in modo trasparente ● Trasmette dati relativi alla macchina per aggregazione sul server, ed eventuale trasmissione successiva ● Riceve istruzioni e comandi da octofussd
  • 28. 20/10/2016 Fuss Server octofuss ● Accesso a octofussd tramite interfaccia grafica Gtk/X-Window ● Utilizzabile tramite tunnel di rete ● Componenti attivati sulla base di quanto offerto dal server e dalle autorizzazioni per l'utente ● Permette facilmente la delega alla gestione di aspetti della rete
  • 29. 20/10/2016 Fuss Server octofussctl ● Accesso a octofussd tramite CLI ● Permette esecuzione di operazioni complesse in batch, tramite scripts ● Utilizzabile da remoto con minor utilizzo di banda ● OCTOFUSS_USER / OCTOFUSS_PASSWORD nell'enviroment per automatizzare il processo di autenticazione.
  • 30. 20/10/2016 Fuss Server Grazie Grazie per l'attenzione! Q & A