Linux nel laboratorio didattico dell'Università Cattolica di Brescia

Maurizio Paolini, Università Cattolica di Brescia.
Questa presentazione: http://dmf.unicatt.it/~paolini/linuxday/laboratorio.html

Schema della presentazione


Introduzione e descrizione del laboratorio

Il nostro laboratorio (Facoltà di scienze matematiche fisiche e naturali) è composto da 40 postazioni utilizzabili dagli studenti dislocate su due locali diversi (vedi istantanea). Le quaranta postazioni sono controllate da un server linux. (bpserv.bplab.bs.unicatt.it)

Il server è visibile da internet e rimane sempre acceso. Tra le sue funzioni c'è anche quella di pubblicare le pagine web relative al laboratorio.

Ciascuna postazione è invece pensata per il lavoro individuale svolto alla console dallo studente, dovrebbe essere spenta quando non viene utilizzata da nessuno, in particolare durante l'orario di chiusura del laboratorio (come adesso). Ha un indirizzo IP (l'indirizzo di rete) privato, cioè non visibile da internet. Si è scelto di non utilizzare la tecnica DHCP, ma di assegnare un indirizzo fisso ad ogni postazione (spiegare perché).


Configurazione delle postazioni di lavoro

Ogni postazione (un PC IBM-compatibile) permette un cosiddetto dual boot, cioè può essere accesa in due modalità completamente differenti e indipendenti, riferite a partizioni distinte sul disco fisso della macchina. All'accensione lo schermo presenta questa videata, dove è richiesta la selezione della modalità di lavoro. In particolare: Ciascuna postazione permette quindi di scegliere se operare in ambiente Windows di Microsoft o in ambiente Linux.

Condivisioni tra le postazioni


Gli utenti del laboratorio e internet

Navigazione internet. Ogni utente può navigare in internet dalla propria postazione. Deve però utilizzare il proxy attivo sul server linux (squid); questo permette di ottimizzare i trasferimenti di dati da internet ed eventualmente di attivare dei filtri di accesso. Non è invece possibile utilizzare internet direttamente dalle postazioni per servizi particolari, come chat, cvs, irc, telnet, ssh. E' però possibile per un utente effettuare una connessione sul server, che invece è connesso in internet senza limitazioni.

Pubblicazione su internet. Ciascun utente può pubblicare proprie pagine web. Si sfrutta la possibilità (automatica per apache) di pubblicare su internet il materiale che un utente mette in una propria cartella particolare (public_html). Ad esempio: questo è il contenuto della mia cartella "public_html" nella mia area dati personale del laboratorio.

Accesso da casa. Essendo la propria area dati posizionata sul server, che è visibile da internet, è possibile accedervi da casa con una connessione "ssh". In particolare è possibile effettuare trasferimento di dati

Posta elettronica. Ogni utente ha un proprio indirizzo di posta elettronica. Può leggere e spedire posta dalle postazioni, e da casa (webmail). Può anche redirigere tutta la posta in arrivo ad un'altro indirizzo di email.


Accounting delle stampe e quote disco

La condivisione della stampante (tramite samba) tra gli ambienti windows e Linux permette di conteggiare le stampe fatte da ciascun utente e predisporre uno stampato mensile con il risultato.

Ogni utente ha a disposizione una quota di utilizzo del disco sul server, in modo da evitare che qualcuno occupi tutto lo spazio disponibile.


Gestione e manutenzione del laboratorio

Il numero di postazioni (40) rende estremamente delicato il combito di gestire e mantenere aggiornato il parco software delle macchine, con la complicazione aggiuntiva del doppio ambiente di lavoro.

Qui però l'uso di linux viene in aiuto in modo notevole, in quanto è estremamente naturale in ambiente unix effettuare manutenzione remota delle macchine.

Prima abbiamo visto come accendere le postazioni da remoto. Quando non è presente nessuno alla console che effettui la scelta dell'ambiente di lavoro, la postazione si accende in ambiente linux. Permette quindi l'accesso da remoto con "ssh" (provare!).

Potenza della shell per il controllo remoto. Esempio:


$ ssh-add
$ nums=`seq -w 1 21`
$ echo $nums
$ for n in $nums
$ do
$ ssh bplab$n 'echo sono la macchina `hostname`'
$ done

Autenticazione con chiave pubblica/chiave privata. Permette di ottenere il massimo della flessibilità senza perdere nel livello di sicurezza. Il comando "ssh-add" che precede serviva a rendere noto al sistema la mia chiave privata personale, così da rendere possibile l'autenticazione per i comandi remoti con "ssh", ed anche la possibilità di richiedere comandi remoti come utente "root". Manutenzione dell'ambiente Windows. Tramite clonaggio della partizione windows (far partire lo script dowinpropagate).

Note:

Altri esempi:


$ ssh root@bplab01 cat /dev/vcs
$ ssh root@bplab01 /sbin/poweroff
$ ssh root@bplab01 bootwindmf

Installazione nuove postazioni

E' possibile in modo relativamente semplice con gli stessi strumenti utilizzati per il clonaggio della partizione windows.


Costi

Escludendo il costo dell'hardware (postazioni, server e apparati di rete), ed escludendo i costi di licenza del software per windows, il costo complessivo della soluzione descritta è pari a zero!