Jak udelat bezdiskovou UN*Xovou ucebnu

Martin Mares mj na k332.feld.cvut.cz
Úterý Prosinec 3 17:20:03 CET 1996


Dobreho dne preji,

> Prave ted se snazime vymyslet co nejrozumnejsi koncepci pocitacove
> ucebny, kde by byl novell, bylo by mozno bootovat linux a tento linux
> by nebyly pouhe X-terminaly, ale pracovni stanice. Problem pracovnich
> stanic je, ze bychom na ne radi exportovali svym uzivatelum home
> adresare. Nyni vznika otazka, jak zabranit tomu, ze si nekdo
> namountuje tyto home na stroj, na kterem si (z DO$u) nabootoval
> vlastni linux a je na nem root.
> 
> Pokud mate nejake namety na vyreseni teto konfigurace pri zajisteni co
> nejvyssiho stupne bezpecnosti, ocenil bych je. Posilejte je prosim

   I ja jsem se s podobnym problemem v historicky nedavne dobe potykal
a vysledkem bylo, ze jsem se nakonec odhodlal napsat neco vlastnich
programu, ktere se to snazi resit:

   (1) Daemon pro dalkovou autorizaci: slouzi k overovani jmen a hesel
pres sit, aniz by se prenasela hesla v otevrenem tvaru (exportovat
/etc/shadow po nfs take neni prilis bezpecne).

   (2) Modifikovany nfs-server, ktery z danych stroju akceptuje pouze
ty uzivatele, o kterych mu autorizacni daemon rekl, ze jsou v danem
okamziku prihlaseni (nevyhoda: zatim nelze se odlogovat a nechat na sebe bezet
nejake procesy) a ostatni povazuje za nobodyho, ktery nema vubec nikam
pristup.

   Neni to nic prilis svetoborneho -- pouze par triku vymyslenych
na odstraneni vecnych problemu UNIXu a NFS, ktere by si zaslouzily
byt reseny razantneji, ale soucasny zkusebni provoz ukazuje, ze by to
mohlo byt docela uzitecne. Pokud mate zajem, dejte mi vedet a ja bych
vygeneroval nejakou distribuovatelnou alpha-verzi.

| 3) Mit zapnuty rpc.ugidd, aby uzivatel z jineho pocitace s ID odpovidajicim
| nejakemu uzivateli ve vasem systemu nemohl zapisovat do jeho ~/ . 
| rpc.ugidd je ale taky dira - viz man, proto ho take v /etc/hosts.allow
| povolit jen pro pocitace z ucebny.

   Bezpecnost tohoto pristupu je ovsem dle meho nazoru pochybna, protoze
jsem-li na danem pocitaci rootem, mohu ugidd donutit k vice mene cemukoliv.

| Dalsi moznost je home adresare montovat jen pri prihlaseni uzivatele do systemu
| a to z novelovskeho serveru (ncpmount) - funguje, nepouzivam.

   Ano, to skutecne funguje, ale jen velice omezene -- NCP-filesystem neni
(alespon pokud vim) schopen plnohodnotne prenaset UNIXovska pristupova
prava a podobne veci.

| (neumi nekdo udelat swap prez sit?), protoze pri 16MB (nerku-li 8MB) ram si

   Existuje patch, ktery se o swaping pres NFS pokousi, ale jednak je do
pomerne starych jader a jednak se cas od casu hrouti. K dispozici je
tusim na sunsite.mff.cuni.cz:pub/OS/Linux/sunsite/kernel/patches (??).
Nicmene v praxi to asi neni prilis pouzitelne (na kernelovem mailing-listu
nekdo tvrdil, ze za soucasneho stavu implementace NFS a memory-managementu
nelze rozumne bez rizika deadlocku toto implementovat).

   Rozumnou variantou by ovsem mohlo byt zavest neco jako "virtual block
device protocol", ktery by po siti simuloval jednoduchy block device,
na ktery by se swapovalo -- konec koncu on by to mohl simulovat i pres
vlastni implementaci podmnoziny NFS protokolu. Mozna to jednoho dne
zkusim napsat.

							Martin


Další informace o konferenci Linux