I (think I) have this cracked.
There is a relatively painless way of making a budget Linux general purpose and thin client network for teaching computer science.
You can have a single server which acts as an internet gateway, login and file manager. Seperate servers in each classroom which provide an ltsp thin client network for students who are working in that room.
For the internet / login / file server you need a computer. I happened to get hold of an old legacy HP Proliant server but you could probably press any old PC into use for this.
You need to install a second network card in this “server”. One network card plugs into your school network and provides internet. The other network card creates your own “computing.lan” network.
Install something called
“Zentyal Community” on this. Zentyal is the open source equivalent of Windows Server and it’s been made to be easy to configure in the same way as Windows server is.
Setup the gateway, DNS, DHCP and “office” (it’s not office as in office apps (Word etc.) but office as in an office network)
Configure Users and Groups, make sure you select “PAM” and default shell as “Bash”
Make your classroom(‘s)
Edubuntu LTSP servers It’s best if you have 2 network cards in this too, one for your wider “computing.lan” and one to make a seperate sub-net for the thin clients in the classroom.
Follow this
guide to set up the Edubuntu LTSP server to authenticate and use home directorys that are on the “Zentyal” gateway / login / file server.
BUT!!!
When you come to configuring the PAM_Mount config file /etc/security/pam_mount.conf.xml
You need to add
two new instructions (not one as the guide states)
Code: Select all
<!-- Volume definitions -->
<volume user="*" fstype="cifs" server="x.x.x.x" path="%(DOMAIN_USER)" mountpoint="/home/%(DOMAIN_USER)" options="sec=ntlm,nodev,nosuid" />
<volume user="*" fstype="cifs" server="x.x.x.x" path="temp" mountpoint="/home/%(DOMAIN_USER)/SRV/temp" options="sec=ntlm,nodev,nosuid" />
Change x.x.x.x for the ip of your zentyal gateway / sso server.
NB.
This isn't
exactly how I have my network setup. DNS and DHCP is provided by dnsmasq running on a raspberry pi and my gateway/firewall is a separate box running something called "clearos". I'm only using Zentyal for "users and groups".
However theoretically you should be able to do all these jobs on zentyal.