Freeduc-cd Development Modules

This document presents different modules to develop for the freeduc-cd server edition.

The modules are organised as more or less independent unit as we want to ensure:
  1. an easier development;
  2. re-usability of the modules in other projects;
  3. integration to other projects.

In each module's description, we enclose a bibliography to help the developers make wise choices in their development model and, eventually, to reuse and to adapt or to participate with other relative projects. Great care should be taken to integrate a module's development into the free software community: reusing existing projects and fixing bugs or adding features to similar projects when it's necessary to get a working module.

Each developed module should be packaged as independent Debian packages.

1. LDAP directory architecture module

--DONE--

Other version

Prerequisite: None

Objective: On top of the standardised LDAP schema, develop additional schemas to manage thin clients and printers.

Based on a standardised LDAP schema (ie SambaEdu3 LDAP schema is a good example) define additional schemas to cope with:
  1. Thin clients;
  2. Printers.

To help in the definition of the thin client schema, consider the specification used in the LTSP project to fully define a Thin Client (file ltsp.conf).

Regarding the printer, we are looking at a system to allow automatic allocation of the default user printer depending on the workstation the user logs in on. The schema should stock the necessary information to handle such things.

Bibliography:
OpenLDAP -- httphttp://www.openldap.org/
SambaEdu3 and its LDPA -- httphttp://wawadeb.crdp.ac-caen.fr/se3doc/
Pingo and its LDAP -- httphttp://www.pingoo.org/
Slis and its LDAP -- httphttp://www.ac-grenoble.fr/carmi-internet/slis/slis-v3.html
Skolelinux LDPA -- httphttp://www.skolelinux.org/index.html.en
RFC -- httphttp://www.redfoxcenter.org/Internet/ldap.html
Documentations -- httphttp://www.cru.fr/ldap/
LTSP -- httphttp://www.ltsp.org

2. User management module

Prerequisite: LDAP directory architecture module, at least the basic ones with thin client and printer schemas

Objective: Define a webmin plug-in to manage the people and groups part of the LDAP directory.

The plug-in will allow one to edit the people and groups branches of the LDAP directory. Usability will also be a key element to the plug-in.

A three level editor is mandatory:
  • level 1: used mainly by teachers willing to add student into the LDAP directory;

  • level 2: a full editor level which let the user enter all the users and groups information

  • level 3: user data is entered from an external XML file.

Exporting user data, in the form of an XML file, is welcome.

Enclosed in the bibliography are examples of specification which can be used for the XML representation.

Bibliography:
Webmin -- httphttp://www.webmin.com/
Skolelinux LDAP Webmin plug-in -- httphttp://www.skolelinux.org
EduML -- httphttp://moria.seul.org/vernier/eduml/
EduML -- httphttp://eduml.anet.fr/
IMS -- httphttp://www.imsproject.org/enterprise/index.cfm

3. Thin client management module

Prerequisite: LDAP directory architecture module (requires thin client schema), a LTSP server

Objective: Define a thin client management module to operate on the usual stuff required with thin clients.

This module will be composed of two parts.

The first part will be autodetection. It will detect newly incorporated thin clients of the LAN. As much information as possible, concerning the thin client, should be automatically retrieved. That data will be inserted into the LDAP directory for later usage.

The second part is management. Written as a webmin

plug-in. From this plug-in, the manager will be able to:
  1. Retrieve the information from an autodetected thin client, set the details of the thin client, then update the configuration;
  2. Edit the data concerning a thin client;
  3. Remove data concerning a thin client.

Also a two levels management tool is mandatory. A first one with basic thin client attributes, a second one to manage advanced attributes.

The LTSP project is used to manage LTSP. The LTSP project usually stores the thin client data within the ltsp.conf file, therefore, this file will be regenerated each time a thin client entry within the LDAP directory changes. Also other configuration file as the DHCP one will be regenerated according to the LDPA entries.

Bibliography:
LTSP -- httphttp://www.ltsp.org
Webmin -- httphttp://www.webmin.com/
AbulEdu? LTSP management module -- httphttp://www.rycks.com/outils/projets/ltsconf/
BerliOS LTSP webmin module -- httphttp://termserv.berlios.de/ltsp-module/

4. Authentication mechanism module

Prerequisite: LDAP directory

Objective: Define an authentication gateway between the LDAP directory and thin client, GNU/Linux, Windows, and Macintosh workstations.

Bibliography:
PAM -- httphttp://www.kernel.org/pub/linux/libs/pam/
Samba --
NetTalk? --

5. Web access filter module

Prerequisite: LDAP schema to store ACLs and other relative information needed by the web filter

Objective: Define a webmin plug-in to manage a web filter. One of the features will be to allow automatic update of the filter rules.

Bibliography:
SquidGuard? -- httphttp://www.squidguard.org/
SquidGuard? Webmin plug-in -- httphttp://www.niemueller.de/webmin/modules/squidguard/


Last edited on Monday, June 23, 2003 12:37:39 pm.

Host by
SourceForge Logo Project
Ofset
Valid XHTML 1.0! Valid CSS!
Page Execution took 6.863 seconds