Un termine generico per entrambi i thin-client e le workstation senza dischi è client LTSP.
A partire da Bullseye, LTSP è molto diverso dalle versioni
precedenti. Questo riguarda sia la configurazione che la manutenzione.
Come differenza principale, l'immagine SquashFS per le workstation senza disco è ora generata dal file system del server LTSP per impostazione predefinita. Questo avviene su un server combinato al primo avvio, impiegando un po' di tempo.
I thin client non fanno più parte di LTSP. Debian Edu usa X2Go per supportare ancora l'uso dei thin client.
Nel caso di un server LTSP separato o aggiuntivo, le informazioni necessarie per impostare l'ambiente client LTSP non sono complete al momento dell'installazione. La configurazione può essere fatta una volta che il sistema è stato aggiunto con GOsa².
Per informazioni su LTSP in generale, vedere la homepage di LTSP. sui sistemi con il profilo
LTSP server , man ltsp
fornisce maggiori informazioni.
Tenere presente che lo strumento ltsp da LTSP deve
essere usato con attenzione. Per esempio, ltsp image
/
non riuscirebbe a generare l'immagine SquashFS in caso di
macchine Debian (queste hanno una partizione /boot separata per default)
ltsp ipxe
non riuscirebbe a generare
correttamente il menu iPXE (a causa del supporto thin client di Debian Edu),
e ltsp initrd
potrebbe compromettere
completamente l'avvio del client LTSP.
Lo strumento debian-edu-ltsp-install è un
wrapper script per ltsp image
,
ltsp initrd
e ltsp
ipxe
. Viene usato per impostare e configurare il supporto
per workstation senza disco e thin client (sia 64-Bit che 32-Bit
PC). Consultare man debian-edu-ltsp-
install
o il contenuto dello script per analizzare come
funziona. Tutta la configurazione è contenuta nello script stesso (QUI i
documenti) per semplificare le impostazioni specifiche del sito.
Esempi di come usare il wrapper script debian-edu-ltsp-install:
debian-edu-ltsp-install --diskless_workstation
yes
aggiorna l'immagine SquashFS di workstation senza disco
(server filesystem).
debian-edu-ltsp-install --diskless_workstation yes
--thin_type bare
crea supporto a workstation senza disco e
a thin client a 64 bit.
debian-edu-ltsp-install --arch i386 --thin_type
bare
crea un ulteriore supporto thin client a 32 bit
(immagini chroot e SquashFS).
Oltre a bare (il più piccolo sistema per thin client), sono opzioni disponibili anche display e desktop. Il tipo display offre un pulsante di spegnimento, il tipo desktop esegue Firefox ESR in modalità kiosk sul client stesso (occorre più RAM locale e potenza di CPU, ma c'è un carico del server ridotto).
Lo strumento debian-edu-ltsp-ipxe è uno
script wrapper per ltsp ipxe
. Controlla che
il file /srv/tftp/ltsp/ltsp.ipxe sia specifico per Debian Edu. Il comando
deve essere eseguito dopo che le voci relative al menu iPXE (come il timeout
del menu o le impostazioni di avvio predefinite) nella sezione
/etc/ltsp/ltsp.conf [server] sono state modificate.
Lo strumento debian-edu-ltsp-initrd è uno
script wrapper per ltsp initrd
. Controlla
che un initrd specifico per il caso in uso (/srv/tftp/ltsp/ltsp.img) sia
generato e poi spostato nella directory relativa al caso in uso. Il comando
deve essere eseguito dopo che la sezione /etc/ltsp/ltsp.conf [clients] è
stata modificata.
Lo strumento debian-edu-ltsp-chroot sostituisce lo strumento ltsp-chroot fornito con LTSP5. È usato per eseguire comandi in un chroot LTSP specificato (come ad esempio installare, aggiornare e rimuovere pacchetti).
Workstation senza dischi
Una workstation senza dischi esegue tutto il software localmente. Le macchine client si avviano direttamente dal server LTSP senza un hard disk locale. Il software è amministrato e mantenuto sul server LTSP, ma è eseguito nelle workstation senza dischi. Anche le directory home e la configurazione del sistema sono archiviate sul server. Le workstation senza dischi sono un modo eccellente di riusare hardware più datato (ma più potente) con gli stessi bassi costi di manutenzione dei thin-client.
A differenza delle workstation, le workstation senza disco funzionano senza bisogno di aggiungerle con GOsa².
Thin-client
La configurazione del thin-client permette a un PC di funzionare come un terminale (X) dove tutto il software viene eseguito nel server LTSP. Questo significa che la macchina si inizializza via PXE senza usare il disco fisso locale e che il server LTSP deve essere una macchina potente.
Debian Edu supporta ancora il funzionamento dei thin client per permettere l'uso di hardware molto vecchio.
Dato che i thin client utilizzano X2Go, gli utenti dovrebbero disabilitare
il compositing per evitare problemi di visualizzazione. Nel caso predefinito
(ambiente desktop Xfce): Settings -> Window Manager Tweaks ->
Compositor.
Firmware del client LTSP
L'avvio dei client LTSP fallirà se la scheda di rete del client richiede firmware non libero. Una installazione PXE può essere usata per risolvere i problemi; se l'installazione Debian lamenta la mancanza di un file XXX.bin, allora il firmware non-free deve essere aggiunto alla initrd dei server LTSP.
Procedete così sul server LTSP:
Per prima cosa ottenere informazioni sui pacchetti del firmware, eseguire:
apt update && apt search ^firmware-
Decidere quale pacchetto deve essere installato per l'interfaccia di rete, molto probabilmente questo sarà firmware-linux, eseguire:
apt -y -q install firmware-linux
Aggiornare l'immagine SquashFS per le workstation senza disco, eseguire:
debian-edu-ltsp-install --diskless_workstation yes
Nel caso in cui vengano utilizzati i thin client X2Go, eseguire:
/usr/share/debian-edu-config/tools/ltsp-addfirmware -h
e procedere secondo le informazioni sul loro uso.
Quindi aggiornare l'immagine di SquashFS; ad esempio per /srv/ltsp/x2go-bare-amd64 chroot, eseguire:
ltsp image x2go-bare-amd64
Ogni server LTSP ha due schede di rete ethernet, una è configurata nella sottorete principale 10.0.0.0/8 (condivisa con il server principale) e l'altra che forma una sottorete locale (una sottorete separata per ogni server LTSP).
Si può scegliere sia diskless workstation o thin client dal menu iPXE. Dopo aver atteso 5 secondi, la macchina si avvierà come workstation senza disco.
Il valore predefinito del menu di avvio iPXE e il suo timeout possono essere
entrambi configurati in
/etc/ltsp/ltsp.conf
. Un valore di timeout
di -1 è usato per nascondere il
menu.debian-edu-ltsp-ipxe
per rendere
effettivi i cambiamenti.
La rete predefinita per la rete dei client LTSP è 192.168.0.0/24 se una
macchina è installata usando il profilo LTSP. Se sono usati molti client
LTSP o se diversi server LTSP dovrebbero far funzionare sia i386 che amd64
si potrebbe utilizzare l'ambiente chroot della seconda rete preconfigurata
192.168.1.0/24. Modificare il file
/etc/network/interfaces
e regolare il
settaggio di eth1 di conseguenza. Usare
ldapvi
o ogni altro editor LDAP per
ispezionare la configurazione DNS e DHCP.
Per creare le immagini chroot e SquashFS, eseguire:
debian-edu-ltsp-install --arch i386 --thin_type bare
Vedere man debian-edu-ltsp-install
per
dettagli sui tipi di thin client.
Eseguire man ltsp.conf
per dare un'occhiata
alle opzioni disponibili della configurazione. O leggerlo online: https://ltsp.org/man/ltsp.conf/
Aggiungere elementi di configurazione alla sezione /etc/ltsp/ltsp.conf [clients]. Per le modifiche abbiano effetto, eseguire:
debian-edu-ltsp-initrd
I thin client LTSP usano networked audio to pass audio from the server to the clients.
Le workstation senza dischi LTSP gestiscono l'audio localmente.
Quando gli utenti inseriscono un'unità USB o un DVD/CD-ROM in una Diskless Workstation, sul desktop viene visualizzata un'icona corrispondente, che consente di accedere al contenuto come su una workstation.
Quando gli utenti inseriscono un'unità USB in un thin client X2Go di tipo bare (installazione server combinata predefinita), il supporto viene montato non appena si fa doppio clic sull'icona della cartella esistente sul desktop Xfce. A seconda del contenuto del supporto, potrebbe essere necessario un po' di tempo prima che il contenuto venga visualizzato nel file manager.
Collegare la stampante al client LTSP (USB e porta parallela sono supportate).
Configurare client LTSP con GOsa² per utilizzare un indirizzo IP fisso.
Configurare la stampante utilizzando l'interfaccia web
https://www.intern:631
sul server
principale; scegliere tipo della stampante di rete
AppSocket/HP JetDirect
(per tutte le
stampanti indipendentemente dalla marca o dal modello) e impostare come
collegamento URI socket://<LTSP client
ip>:9100
.
PXE significa Preboot eXecution Environment. Debian Edu ora usa l'implementazione iPXE per una più facile integrazione con LTSP.
La voce di menu iPXE riguardante le installazioni di sistema è generata
utilizzando lo script
debian-edu-pxeinstall
. Alcune impostazioni
possono essere sovrascritte usando il file
/etc/debian-edu/pxeinstall.conf
con i
valori da rimpiazzare.
L'installazione di PXE erediterà la lingua, la disposizione della tastiera e
le sue impostazioni rifletteranno le impostazioni utilizzate durante
l'installazione del server principale, e le altre domande saranno poste
durante l'installazione (profilo, partecipazione a popcon, il
partizionamento e la password di root). Per evitare queste domande, il file
/etc/debian-edu/www/debian-edu-install.dat
può essere modificato per fornire risposte preselezionate ai valori di
debconf. Alcuni esempi di valori di debconf disponibili sono commentati in
/etc/debian-edu/www/debian-edu-install.dat
.
I cambiamenti fatti saranno persi appena
debian-edu-pxeinstall
verrà usato per
ricreare l'ambiente di installazione di PXE. Per aggiungere i valori di
debconf a
/etc/debian-edu/www/debian-edu-install.dat
durante la ricreazione con
debian-edu-pxeinstall
, aggiungere il file
/etc/debian-edu/www/debian-edu-install.dat.local
con i propri valori aggiuntivi per debconf.
Maggiori informazioni sulla modifica dell installazione PXE possono essere trovati nella sezione Installazione.
Per aggiungere un repository personalizzato inserire qualcosa come questo in
/etc/debian-edu/www/debian-edu-install.dat.local
:
#add the skole projects local repository d-i apt-setup/local1/repository string http://example.org/debian stable main contrib non-free d-i apt-setup/local1/comment string Example Software Repository d-i apt-setup/local1/source boolean true d-i apt-setup/local1/key string http://example.org/key.asc
ed eseguire poi
/usr/sbin/debian-edu-pxeinstall
una volta.
Il pacchetto debian-edu-config ha uno strumento che aiuta a cambiare la rete
da 10.0.0.0/8 a qualcos'altro. Dare un'occhiata a
/usr/share/debian-edu-config/tools/subnet-change
.
Il pacchetto va utilizzato subito dopo l'installazione sul server
principale, per aggiornare i file LDAP e gli alitri file che devono essere
modificati quando si cambia la sottorete.
Si noti che la modifica di una delle sottoreti già utilizzate in Debian Edu
non funzionerà. 192.168.0.0/24 e 192.168.1.0/24 sono già impostate come reti
per i thin-client. La modifica di queste sottoreti richiederà la modifica
manuale dei file di configurazione per rimuovere le voci duplicate
Non vi è un modo semplice per cambiare il nome del dominio DNS. La modifica comporterebbe cambiamenti sia alla struttura LDAP che a diversi file nel file system del server principale. Non c'è neanche un modo semplice per modificare l'host e nome DNS del server principale (tjener.intern). Anche per questo occorrerebbe farem odifiche in LDAP e a file nel server principale e dei client. In entrambi i casi anche la configurazione Kerberos dovrebbe essere modificata.
Scegliendo il profilo server LTSP o il profilo server combinato si installano anche i pacchetti xrdp e x2goserver.
Xrdp usa il protocollo Remote Desktop per presentare un login grafico per un client remoto. Gli utenti di Microsoft Windows si possono connettere al server LTSP eseguendo xrdp senza installare software aggiuntivo - possono avviare una Remote-Desktop-Connection sulla macchina Windows e connettersi.
Inoltre, xrdp può connettersi a un server VNC o a un altro server RDP.
Xrdp viene fornito senza supporto audio; per compilare i moduli necessari si potrebbe utilizzare questo script.
#!/bin/bash # Script to compile / recompile xrdp PulseAudio modules. # The caller needs to be root or a member of the sudo group. # Also, /etc/apt/sources.list must contain a valid deb-src line. set -e if [[ $UID -ne 0 ]] ; then if ! groups | egrep -q sudo ; then echo "ERROR: You need to be root or a sudo group member." exit 1 fi fi if ! egrep -q ^deb-src /etc/apt/sources.list ; then echo "ERROR: Make sure /etc/apt/sources.list contains a deb-src line." exit 1 fi TMP=$(mktemp -d) PULSE_UPSTREAM_VERSION="$(dpkg-query -W -f='${source:Upstream-Version}' pulseaudio)" XRDP_UPSTREAM_VERSION="$(dpkg-query -W -f='${source:Upstream-Version}' xrdp)" sudo apt -q update # Get sources and build dependencies: sudo apt -q install dpkg-dev cd $TMP apt -q source pulseaudio xrdp sudo apt -q build-dep pulseaudio xrdp # For pulseaudio 'configure' is all what is needed: cd pulseaudio-$PULSE_UPSTREAM_VERSION/ ./configure # Adjust pulseaudio modules Makefile (needs absolute path) # and build the pulseaudio modules. cd $TMP/xrdp-$XRDP_UPSTREAM_VERSION/sesman/chansrv/pulse/ sed -i 's/^PULSE/#PULSE/' Makefile sed -i "/#PULSE_DIR/a \ PULSE_DIR = $TMP/pulseaudio-$PULSE_UPSTREAM_VERSION" Makefile make # Copy modules to Pulseaudio modules directory, adjust rights. sudo cp *.so /usr/lib/pulse-$PULSE_UPSTREAM_VERSION/modules/ sudo chmod 644 /usr/lib/pulse-$PULSE_UPSTREAM_VERSION/modules/module-xrdp* # Restart xrdp, now with sound enabled. sudo service xrdp restart
X2Go consente di accedere a un desktop grafico sul server LTSP sia su connessioni a bassa che ad alta banda da un PC con Linux, Windows o macOS. È necessario un software aggiuntivo dal lato client, vedere X2Go wiki per maggiori informazioni.
Si prega di notare che il pacchetto killer
sarebbe meglio rimuoverlo sul server LTSP, se si utilizza X2Go, vedere
890517.
freerdp-x11
è installato in modo
predefinito ed è utilizzabile con RDP e VNC.
RDP; è il modo più facile per accedere a un server di terminale Windows. Un
pacchetto per un client alternativo è
rdesktop
.
Il clent VNC (Virtual Network Computer) dà l'accesso a Skolelinux da
remoto. Un pacchetto per un client alternativo i è
xvncviewer
.
x2goclient
è un client grafico per il
sistema X2Go (non installato di default). Si può usare per connettersi alle
sessioni in esecuzione e iniziare nuove sessioni.
Il server freeRADIUS potrebbe essere usato per fornire
connessioni di rete sicure. Per farlo funzionare, installare i pacchetti
freeradius e winbind sul server
principale ed eseguire
/usr/share/debian-edu-config/setup-freeradius-server
per generare una configurazione di base specifica del sito. In questo modo,
entrambi i metodi EAP-TTLS/PAP e PEAP-MSCHAPV2 sono abilitati. Tutta la
configurazione è contenuta nello script stesso per facilitare le regolazioni
specifiche del sito. Vedi homepage di
freeRADIUS per i dettagli.
È necessaria una configurazione aggiuntiva per
abilitare/disabilitare gli access point tramite un shared secret (/etc/freeradius/3.0/clients.conf).
consentire/negare l'accesso wireless usando i gruppi LDAP (/etc/freeradius/3.0/users).
riunire gli access point in gruppi dedicati (/etc/freeradius/3.0/huntgroups)
I dispositivi dell'utente finale devono essere configurati correttamente,
questi dispositivi devono essere protetti da PIN per l'uso dei metodi EAP
(802.1x). E soprattutto: gli utenti devono essere educati a installare il
certificato freeradius CA sui loro dispositivi per essere sicuri di
connettersi al server giusto. In questo modo la password non può essere
catturata da un server malevolo. Il certificato specifico del sito è
disponibile sulla rete interna.
https://www.intern/freeradius-ca.pem (per i dispositivi dell'utente finale che eseguono Linux)
https://www.intern/freeradius-ca.crt (Linux, Android)
https://www.intern/freeradius-ca.der (macOS, iOS, iPadOS, Windows)
Notare che la configurazione dei dispositivi dell'utente finale sarà una vera sfida a causa della varietà dei dispositivi. Per i dispositivi Windows potrebbe essere creato uno script di installazione, per i dispositivi Apple un file mobileconfig. In entrambi i casi il certificato freeRADIUS CA può essere integrato, ma sono necessari strumenti specifici del sistema operativo per creare gli script.
Per poter utilizzare pGina (o qualsiasi altra applicazione di servizio di autenticazione di terze parti) è necessario disporre di un account utente speciale utilizzato per la ricerca all'interno di LDAP.
Aggiungere un utente privilegiato, ad esempio pguser con password pwd.777, sul sito web https://www/gosa.
Scaricare e installare pGina 3.9.9.12 seguendo la procedura abituale. Prestare attenzione che il plugin LDAP sia presente nella cartella dei plugin di pGina:
C:\Program Files\pGina.fork\Plugins\pGina.Plugin.Ldap.dll
Secondo le impostazioni di Debian Edu, la connessione a LDAP utilizza la porta 636.
Le impostazioni necessarie nel plugin pGina di LDAP sono quindi le seguenti
(these are stored in HKEY_LOCAL_MACHINE\SOFTWARE\pGina3.fork\Plugins\0f52390b-c781-43ae-bd62-553c77fa4cf7).
LDAP Host(s): 10.0.2.2 (o qualsiasi altro con "spazio" come separatore)
LDAP Port: 636 (for SSL connection)
Timeout: 10
Use SSL: YES (spuntare la casella di controllo)
Start TLS: NO (non spuntare la casella di controllo)
Validate Server Certificate: NO (non spuntare la casella di controllo)
Search DN: uid=pguser,ou=people,ou=Students,dc=skole,dc=skolelinux,dc=no
("pguser" è un utente da autenticare in LDAP per cercare gli utenti in una sessione di login)
Cercare la password: pwd.777 (questa è la password di "pguser")
Bind Tab:
Allow Empty Passwords: NO
Search for DN: YES (spuntare la casella di controllo)
Search Filter: (&(uid=%u)(objectClass=person))
Default: Allow
Deny when LDAP authentication fails: YES (spuntare la casella di controllo)
Allow when server is unreachable: NO (non spuntare la casella di controllo, opzionale)
LDAP: Authentication [v], Authorization [v], Gateway[v], Change Password [_]
Local Machine: Authentication [v], Gateway [v] (spuntare solo le due caselle di controllo)
Autenticazione: LDAP, macchina locale
Gateway: LDAP, Local Machine
Sorgenti: