ADIOS Project

-- Live Linux ADIOS CD home


hot Welcome to ADIOS

Welcome to ADIOS

    Version 6.0
    Neville Richter
    Faculty of Business and Informatics
    Central Queensland University
    n.richter@cqu.edu.au

Welcome to a short talk about the ADIOS project.

I am Neville Richter from the Faculty of Business and Informatics at Central Queensland University (CQU), Australia.

This talk is aimed at people who have started using Linux, and to those who have some experience with Linux and would like to learn more about virtual machines, linux services, linux security and trusted operating systems. Or people that have an interest in distributing the ADIOS live Linux boot CD to others users. Or even those of you who are building your own boot CD.


Outline of Talk

Here is an outline of what I'll talk about today:

What is ADIOS?
  • Is it just another live Linux Bootable CD ROM ?
  • Or a software package to install operating systems in a laboratory ?
  • Or a teaching environment for routing, firewall design and trusted systems ?
  • Well, it is all this and a lot more.
  • During this talk I will explain what you can do with the ADIOS Boot CD.

So now I’ll explain, “What is ADIOS?”


PART 1:  What is ADIOS?

  • Automated Download and Installation of Operating Systems Project
  • ADIOS Live Linux Boot CD
  • Setup menu in Laboratory
  • Web Server install scripts and images
  • Portable Linux Teaching Environment
  • Includes UML Virtual Machines

The ADIOS project started in 1997 when I was looking for a simple way to download operating system images, which allowed the user to be the administrator in a laboratory environment. To be able to teach networking skills, students typically need administrator privileges on the operating systems they are using so they can install software and configure settings.  At the time, the solution was to build an operating system image on a laboratory PC then pack it up and store it on a web server. Then using simple install scripts, students downloaded these OS images to their laboratory PC.   The alternative was to use non free software such as Ghost or Rembo

But the problem has always been a lack of resources, be it bandwidth or just the number of PCs in the laboratory (not enough for all of the students). So at the end of 2001, I started working on a bootable Linux CD.  With the help of Mark Huth, ADIOS version 0.82 was built using RedHat 7.2 and released in February 2002.  This was the beginning of the ADIOS Live Linux Boot CD.

Current Release 
  • The current stable release ADIOS version 6.0 is based on Fedora Core 5.0.
  • The two previous versions are still maintained
    • ADIOS version 5 is based on Fedora Core 4.0
    • ADIOS version 4 is based on Fedora Core 3.0
  • Older versions are no longer updated
    • ADIOS version 3 was based on Fedora Core 1.0
    • ADIOS version 2 was based on RedHat 9.0.
    • ADIOS version 1 was based on RedHat 8.0.

Why was a bootable CD important?:

I have been involved with teachng subjects at University in the areas of network administration, network security, network management and network services (client/server programming).  These are practical hands-on type courses/subjects in which students typically install and configure network services on Linux servers.  When laboratories for the students become scarce or students prefer to work from home a solution.  In 2002 the number of students wanting to enrol in these Networking subjects was high this emphasised the need for using off site PCs.

Subsequently, students have installed Linux at home so they can work on the practical exercises.  But most students don't have the hardware at home to support what they are doing in the laboratories on campus (an intranet with multiple Linux servers to complete networking and security exercises).  So, the three primary requirements for the ADIOS boot CD were:

  1. To create an environment to enable students to use multiple virtual machines and networks from a CD image which is the same environment as used in the laboratories on campus. 
  2. To enable users to run Linux from CD, or ISO image on disk, or directly from disk, or from RAM, and allow users to save changes to floppy, USB device or disk.
  3. To reduce the risk of users acciendently destroying their MS Windows installation when installing Linux. 

What ADIOS is used for at University?:

What others are using ADIOS for?:

ADIOS currently supports three languages (English, Spanish and Portuguese) . It comes with a complete Development Kit (ADK) to help you customise your own CD.

Some More History:

When RedHat 8.0 was released, we were able to produce a higher quality product. The result was ADIOS version 1.01 which was released in February 2003.   We rebuilt a 2.4.19 kernel to support a compressed loopback filesystem, IPsec and the 486 processor.  With a little searching on the internet for appropriate tools such as Busybox and uclibc, the setup boot floppy was redesigned. We implemented a compressed loopback filesystem so the CD could hold 2 GBytes of files.  The space allowed us to add many applications and documents. The User Mode Linux (UML) virtual machine software that we had been using in the practical classes also fitted nicely onto the CD.  So now we have a complete network environment for teaching routing, security, firewalls, network management as well as web services.   

In March 2004 version 3.02 was released, built using Fedora Core 1. This was the first of several upgrades.  On V3.02 we introduced improved run options.  It was also at this time we started experimenting with SELinux. 

By December 2004 ADIOS version 3.16 was using Linux kernel 2.4.28 and was a test bed for improvements implemented in ADIOS version 4.00.  ADIOS version 4.00, built using Fedora Core 2, has had many problems due to kernel problems with UML and was released at the same time as version 4.10.


Why build a boot CD – well why not?

  • Fast way to get Linux on desktop
    • ADIOS Version 4.16 = Fedora Core 3.0, kernel 2.6.12
    • ADIOS Version 5.0 = Fedora Core 4.0, kernel 2.6.16
    • ADIOS Version 6.0 = Fedora Core 5.0, kernel 2.6.17
  • Desktops - KDE, ICE
  • Office - Openoffice, mozilla, firefox, gvim, xine
  • Diagnostics - Xtraceroute, ethereal, nmap, lsof, nc
  • Multiple Virtual Machines and networks
  • Security - Iptables, ACLs, IPsec, Snort, autopsy, nessus

As I said before, many students want to install Linux at home.  But most students have MS Windows installed already on their home computers, so they would defer installing Linux for several weeks or months because they typically had to change the partitions on the MS Windows machine. Every semester a student would tell me a sad story of how they managed to damage their existing files while installing Linux. They also thought this was a good reason for losing assignments and applying forextensions. Ofcourse all students and some staff know that everything needs to be backed up on a regular basis. So creating a Linux that runs entirely in RAM and from CD was an attractive solution. It’s easy to use, so students can start using Linux at home in the first week.

What You'll Find on the CD:

Desktop Environment

ADIOS version 6.0 was built with Fedora Core 5 and linux kernel 2.6.17 to support 586 processors.   We selected a subset of applications and services to provide the end user with plenty of scope to learn about Linux.  The default desktop environment is KDE for all distributions.  Unfortunately software grows in size over time as more features are added.  This results in less applications being able to fit on the CDROM. 

Applications

The OpenOffice suite, web browser, email client, media players and other tools provide the user with a nice set of linux applications as well as diagnostic tools used in learning about networks. There are excellent free security tools included for firewalls, secure tunnels, network intrusion detection systems and computer forensics.

Virtual Machines

The user mode linux virtual machine software allows the user to start multiple child virtual machines which can be networked relatively easily. The virtual machines can start an X windows session using ICE windows manager, so that each virtual machine appears to have its own X windows console. The virtual machines can start with a trusted operating systems such as LIDS or SELinux.

How Do We Fit So Much on the one CD?

ADIOS version 6.0 released in July 2006 was built using Fedora Core 5 and uses Linux kernel 2.6.17.  The latest version of squashfs is used so that the CD can hold more than 2 GBytes of files. 

In the laboratory extra squashfs files (optional components) are used to enable software such as tomcat, jdk, ns (network simulator), and mono (C#).   Some of these optional components are available for download from the same site as the ISO images and if placed in the subdirectory /opt on your system, will be mounted automatically.  The ADIOS DVD version will include several of these optional components.

Reasons to use the ADIOS boot CD

There are many bootable Linux CDs available via the Internet.  However the ADIOS boot CD has some advantages that may be of interest to you.  

  1. The ADIOS version 6.0 boot CD has been built using Fedora Core Linux 5.0, which supports the popular KDE desktop environment for X windows and ICEwm; 
  2. The boot CD will try to automatically detect your hardware configuration and start X windows for you.   However you can also start without running X windows, that is start with a command prompt (in Linux this is called run level 3).  This is useful if you have limited RAM or if you want to configure X windows differently; 
  3. The ADIOS CD has many applications and services preinstalled from the standard Fedora Core distribution and several additional software tools such as snort, openswan and nessus;
  4. The Linux kernel 2.6.17 has been built with support for the squashfs filesystem loopback interface to allow the operating system to mount a squashed filesystem containing more than 2 Giga bytes of files;
  5. The CD comes with User Mode Linux (UML) which allows you to run several virtual machines, which can be networked via virtual ethernet switches and hubs.  Each of the virtual machines can also be accessed via X windows; 
  6. You can also install the boot CD onto a loopback filesystem which resides on a DOS FAT or Linux EXT filesystem.  This is almost as good as installing Fedora Core on its own partition;
  7. There is an ADIOS development kit (ADK) available for those people who wish to tailor the software and create their own bootable CD.  The ADK Makefile requires you to have at least 10 Giga bytes of free space;
  8. The original ADIOS project goal was to download operating systems for laboratory environments.  This software is included as part of the development kit environment;
  9. The Linux Intrusion Detection System (LIDS) is available to both the boot CD and the UML virtual machines.  SELinux virtual machines are also available;
  10. There are many boot and run options.  Options to install ADIOS to disk, to backup and restore files to floppy, USB storage devices, and disc.

How to run ADIOS

  • Run options allow you select how to run
    • Run from CDROM ? Try this first
    • Login with username adios and password 12qwaszx
  • Where to place read-write files
    • RAM, Disc file, Disc partition, floppy, USB, …
  • For performance copy CD image to hard disc and boot from CD or USB
  • Create and use a VFAT partition for CD image,
    read-write files and swap space ? max performance
  • Fully install by creating Linux disc partition to install operating system
    and create multi-boot system
  • Run within Virtual PC, VMWare, …

The first time you use the ADIOS CD you should try run option “1” just to make sure that the kernel recognises your hardware in particular your graphics card and screen. Once the system starts login with username adios and password 12qwaszx. You can then experiment with all of the software, the more RAM you have the more tasks you can do simultaneously.

The number of run options allow the user to set the display size, run level, language, size of RAM or disc to use before you login to the system.  Scan through the menus and change these values to suit yourself.  Before using the guru options you should familiarise yourself with the ADIOS documentation.

If you wish to save and restore read-write files then you need to write information to media such as floppy, USB, disc, or even a network drive. This can be done manually once the system is up and running or via a run option.  

You can boot ADIOS from CDROM, USB or from disc (and floppy before version 4). To improve performance the ISO image can be copied or installed to disc. One option tries to maximise performance by creating a VFAT partition containing the ISO image, the read-write files and swap space.  This also has the advantage that your changes will be there the next time you restart ADIOS.

Better still you can fully install ADIOS on its own Linux disc partition, this has the advantage of allowing you to write to the whole filesystem plus if you choose to create a development partition you can build your own boot CD. 

You can also run the ADIOS boot CD within Virtual PC or VMWare.

In the Laboratory the read-write files in /var are placed on there own disc partition.  This partition is recreated each time the ADIOS system is started.


Synopsis for ADIOS

  • Run ADIOS Linux CD without using hard disc
  • Fully functional Linux with all of the necessary applications with all read-write files in /var
  • Save and restore all files changed in /var directory tree to floppy or USB or disc
  • Same environment on CD as in Laboratories
  • Virtual Machines and networks allow users to experiment with network software such as web servers, routers, name servers, firewalls, certificate servers, security scanners, etc

Basically the ADIOS Linux CD is a subset of Fedora Core Linux with lots of extras software related to security and network management. The CD does not need to write to your hard drive so it is independent of your existing Operating System.   By default it usually mounts all hard disc filesystems read-only.  It allows users to use Linux compilers, office tools, networking utilities, virtual machines and entertainment software.

All of the configuration files, log files and user files, which are read-write files have been moved into the /var directory tree. You need to save all files that have been changed so that they can be restored the next time the system is started. This changed information can be placed in a compressed archive and written to floppy or USB device or disk files. This has been automated as a run option.

The objective of the ADIOS project was to create an environment that is the same in the laboratory and at home. The image has optional components that did not fit on the boot CD but also work at home if you download the “sqfs” files onto your hard disk and placed them in the directory /opt.  The laboratory images downloads extra files that require the end user to login via a central authenitication server.

The ability to run virtual machines within virtual networks allows users to experiment with the network services and applications, security and management of networks.  Read the ADIOS UML documentation to see how networks are automatically setup on startup of each virtual machine.  Virtual machines are also able to start with trusted kernels such as LIDS and SELinux.

Note: Writing to NTFS filesystems is not recommended as the driver module is experimental.


Flexible Learning Environment

  • Student’s view
    • Class exercises can be done at home
    • Same environment as in Laboratory
    • No need to use multiple networked computers
  • Teacher’s view
    • Students can start working in week one
    • Software can be tailored to course requirements
  • Laboratory Administrator’s view
    • Easy to setup environment at other Campuses
    • Requires boot to start from CD or network card
    • Requires a web server to download OS images
  • Researcher’s view
    • New models can be tested in virtual machines and networks

The ADIOS boot CD allows a flexible learning environment in the following ways:

  1. From the students point of view class exercises can be completed on the student's home or office computer, or even on their laptops with exactly the same environment as encountered in the on-campus laboratories.  Students can start learning about Linux without having to risk modifying the disc partition of their computer.   The ADIOS CD can also be run within Virtual PC or VMWare.
  2. From the student/staff point of view ADIOS makes use of virtual networks whereby all class exercises can be completed on one machine.  On-campus laboratory resources are an expensive overhead. Now students only need one computer rather than a row of workstations to accomplish even advanced networking exercises such as dynamic routing, firewall configuration, email gateways, web servers, proxy servers, distributed name server, authentication server and certificate authority server implementations.  Optional components can be copied onto the users home computer to provide new services and updates when required.
  3. From the laboratory administrators point of view, classes requiring Linux and networking can be offered with minimal technical support.  Classes requiring Linux can be offered in places besides the main campus (e.g. at regional campuses or overseas sites).  Previously we were dependent on the specialised laboratories.  Now classes can be offered anywhere there are computers which can boot from CD or network card.  Alternatively a specialised laboratory can be setup up quickly by using the ADIOS setup software, this provides the workstation user with the additional benefit of downloading other preconfigured operating systems such as a Linux development environment, FreeBSD, Solaris or MS Windows.
  4. From a researcher's point of view new technologies can be designed, installed and tested.  For example, researchers can investigate client/server software, routing, firewall technologies and trusted systems without having to setup a large number of computers, which can prove costly.  Developers can write and test new network software within a virtual network.

One-Stop Teaching Tool

The CD contains all of the software and documentation that the students will need to complete their studies of the Linux operating system.  For example, the use of the CD allows the users to configure network services (such as web, email, file sharing and printing),  setup virtual networks, analyze network traffic, test dynamic routing protocols, and implement security and firewalls.  The CD contains it own website with a search engine to make it easier for users to find information both on CD and on the Internet.  This web site on the ADIOS distribution is a subset of the Adminstrator's Resource Kit (ARK) located at http://os.cqu.edu.au.  Access to monitoring software such as usage statistics and control of system resources via management tools such as webmin can be done via a web interface.  Extra notes and exercises can be placed into a compressed component file and copied to users home computer then when ADIOS is started it will automatically connect to the optional component and access can be setup via a secure web site.

To help students complete the practical exercises they are advised to setup their user environment as follows.
  1. Start a Web browser window to view the practical exercises;
  2. Start another Web browser window to read the manual entries or online documentation;
  3. Start an X terminal session to type in commands and display results;
  4. Start an Editor such as vi or Wordprocessor to write workbook notes;
  5. Use cut and paste from one window to the next to save typing;
  6. Use the mcopy command to save files to diskette
    or drag and drop files to a mounted device and remember to unmount the device;
  7. Remember to use "su -" to become superuser;
  8. Remember to change all passwords.

Note: cut and paste is explained in the xterm manual entry.  To cut text, press the left mouse button at the start of the selection, hold down the button and move the mouse to the end of the selection, release the left mouse button, and the text should be highlighted on the screen.  To paste, move to the appropriate window and press the middle mouse button (if no middle button, press the left and right buttons at the same time).  If using vi remember to enter insert mode first.


Flexible Learning Environment

  • You can Use it Anywhere
    • Class exercises can be done at home
    • Same environment as in Laboratory
  • It's Easy to Use
    • Students can start working in week one
    • Software can be tailored to course requirements
  • It Doesn't Require Specialised H/W for Networking
    • No need to use multiple networked computers
    • Comes with network, security and management tools
  • It's Easy to Setup at Other Campuses
    • Requires boot to start from CD or network card
    • Requires a web server to download OS images
  • Provides Cost Effective Testing and Research
    • New models can be tested in virtual machines and networks

The ADIOS boot CD allows a flexible learning environment in the following ways:

  1. You can Use it Anywhere: Students are no longer required to complete all exercises in the on-campus laboratories.  Instead, class exercises can be completed anywhere, using a desktop or laptop computer.  The ADIOS Boot CD provides students with exactly the same environment on their PC as encountered in PCs in the on-campus laboratories.  No need to use several PCs in a laboratory or at home as ADIOS comes with virtual machines.
  2. It's Easy to Use:  While students are developing their OS skills, they can run the ADIOS environment from RAM without installing Linux on their desktop or laptop.  This way they can start learning immediately about Linux and don't have to risk corrupting the partitions of their computer.  After all students need to become familar with the environment before they will want to change Operating Systems on their desktop.  Once they feel comforatble they can use the ADIOS CD to setup a multiboot system at home.  The ADIOS CD can also be run within Virtual PC or VMWare.
  3. It Doesn't Require Specialised Hardware for Networking Tasks: Because ADIOS utilises virtual networks, students don't need to have an elaborate network of hardware at home to complete complex networking tasks.  The class exercises can all be completed on their one PC running ADIOS.   Now students only need one computer rather than a row of workstations to accomplish even advanced networking exercises such as dynamic routing, firewall configuration, email gateways, web servers, proxy servers, distributed name server, authentication server and certificate authority server implementations.  Any components not supplied on the ADIOS Boot CD can be copied onto the user's home computer to provide new services and updates.
  4. It's Easy to Setup at Other Campuses: Classes requiring Linux and networking can be offered with minimal technical support.  Previously we were dependent on the specialised laboratories.  But now classes requiring Linux can be offered in places besides the main campus (e.g. at regional campuses or overseas sites).   All you require are computers that can boot from CD or network card.  (Alternatively a specialised laboratory can be setup up quickly by using the ADIOS setup software.  This provides the workstation user with the additional benefit of downloading other preconfigured operating systems such as a Linux development environment, FreeBSD, Solaris or MS Windows.)
  5. Provides Cost Effective Testing and Research: New technologies can be easily designed, installed and tested in a cost effective way.  For example, researchers can investigate routing, firewall technologies and trusted systems without having to setup a large number of (physical) computers.

PART 2:  Menu Run Options

  • 1 Run from CD with /var (read-write files) in RAM
    • Try this first to see if software recognises your hardware
  • 2 Run /var (read-write files) on FAT/EXT (512MB)
  • 4 Run from CD with /var on USB device
  • 7 Run from ADIOS ISO image on hard disk
    • Copy the ISO to your NTFS using windows software
  • 9 Create swap file space on FAT/EXT (512MB)
  • 10 Run using options 2, 7 and 9 (Create 2GB FAT32)
  • h help
  • i information
  • m more menu options

There are many run options:

Option 1 - run entirely in RAM – A 16 MB RAM disc contains the / directory. The /var directory contains all of the read-write files, that includes /etc (configuration files), /home (users files), /var/log (log files), … The kernel module devfs allows for the devices to be allocated as required, as well as allocating half of the remaining RAM to /var.

Each of the UML virtual machines (VMs) uses Copy-On-Write technology to the directory /tmp/uml and the 500MB filesystem of the UML machines only has a footprint of 24MB of RAM disc. Each child VM has only been allocated 32MB of RAM for processing, so doing the maths - 4 virtual machines will run on a 256MB machine as long as you don’t try to write large files.

Option 2 - is one of the preferred ways to run. Here you are allocated a single loopback file on a spare FAT or EXT3 filesystem to the /var directory. This means that /var is not using RAM and files are kept between reboots.

Option 20 - is a quick way to install Linux into a set of FAT or EXT3 files, this allows the user to remove the CDROM after booting.

Option 4 - run with /var on USB - this can be slow

Option 7 - run from an ISO image stored on disk

Option f - looks for an existing FAT32 filesystem otherwise create a FAT32 filesystem and copies the ISO image and creates var.img and swap.img files

Option h – display information to help get you started.

Option i – display information reminding you that this is freeware under the GNU General Public License, there is no warranty, memory and processor info


More Run Options

  • r set run level (3 text, 5 X-windows)
    • 1 = single user
    • 3 = text mode multiple user
      • Use Alt F2 to login to virtual console
    • 5 = X windows uses system-config-display
      • KDE Display manager restricts login to users adios
      • Either enter “su –” to become root user or
      • use Ctrl Alt F2 to login to a text console or
      • edit kdmrc to change X windows login preferences or
      • change the display manager in /etc/sysconfig/desktop

Option r - allows you to select the run level, useful if the hardware detection is not working properly or you only have 64MB of RAM

Starting in run level 3 is particularly useful if your video card won’t work with the RedHat Fedora Core configuration software. You then search the NET and manually create the configuration for X windows. In the worst case you should be able to configure any graphics adaptor and screen to work with 1MB or RAM and use 800x600 screen resolution with 16 colours.

The Login X windows screen does not allow root to login, if you really want to login as root either “su –” to root or login via a virtual console using the key sequence Ctrl Alt F2. You can edit /etc/X11/xdm/kdmrc if you want to change the X windows login preferences.


ADIOS version 2+ run options

  • How do I install ADIOS on my Windows system?
  • How can I save my files to floppy or USB device?
    • option 11 to save changes to savesate.tgz on floppy diskette
    • option 3 to save changes to savestate.tgz on USB device
    • option x to remove previous X and Hardware configuration
  • How do I experiment with trusted systems?
    • At boot prompt enter lids that is start Linux Intrusion Detection System on parent http://www.lids.org
    • Alternatively modify /etc/uml/uml.conf to start LIDS or SELinux kernel on UML virtual machines

More run options - The number one criticism of previous releases of ADIOS was, How do I install the ADIOS boot CD on my MS Windows NTFS disk system? For a simply configured MS Windows machine with only one NTFS partition it was relatively straight forward to automate the process see run option 5. If you have multiple partitions or drives please read http://os.cqu.edu.au/adios/ntfsresizing.html.

The other major criticism was Why can’t I save my files to floppy or USB storage devices? For people who prefer to run the ADIOS boot CD without writing to hard drives then this was the solution: Option 11 saves all files changed in /var to a compressed file savestate.tgz to a floppy diskette. Option 3 does the same thing but to a USB storage device. Option 4 places the var.img on the USB storage device.

How can I experiment with trusted systems? - At the boot prompt you now only have 10 seconds to decide how the system will start. Enter lids to activate the Linux Intrusion Detection System software. More help on lids is available at http://www.lids.org and help on the implementation of LIDS on the Boot CD can be found from the ADIOS home page.

In addition to the parent system the UML virtual machines can also be started with or without LIDS or SELinux (Security Enhanced Linux) from the NSA.   IN ADIOS version 1 we used RSBAC (Rule Security Based Access Control).instead of SELinux.

Compressed loopback cloop was replaced with squashfs because we required support for multiple squashed mounted filesystems.


ADIOS version 3+

  • Can I remove the ADIOS CD while it is running?
    • option 6 copy ISO image to RAM & run /var from RAM (requires 1 GByte of RAM)
    • option 7 run ISO from hard disk & run /var from RAM
      (copy adios-version.iso to hard disk first)
    • option 27 run ISO from hard disk & run /var from FAT/EXT disk
  • How do I set the display resolution?
    • option d set display resolution (default 1024x768)
  • How do I select a language?
    • option l set language (Spanish, Portuguese and English)
  • How do I protect my files from being read?
    • option e encrypt /var loopback (only for options 2 & 4)

How do I remove the ADIOS boot CD while it is running? If you have at least 1GB of RAM then you can copy the CD into a RAM disk. Alternatively if you already have Linux installed and you have at Least 700 MB of free disk space you can copy the CD image to disk. Alternatively copy the CD iso image onto the Windows NTFS filesystem using the Windows version of dd, or similar program.  Run option 17 to run ISO from hard disk & save changes to floppy

How can I set the display resolution on startup? To simplify the startup of the boot CD the default resolution has been set to 1024x768, this can be changed with run option d

How do I select a language?

How do I protect my files from being read? An option to encrypt the /var loopback image has been implemented. Further encryption methods are still being investigated.


Problems and Solutions – FAQ

  • How do I run ADIOS read-write files on disk?
    • option f to resize partitions and create FAT32 disk partition to store read-write files and swap space as well as read-only ISO image (requires 2 GBytes)
  • How do I run ADIOS faster?
    • option 6 to run from ISO image stored in RAM
  • How can I use the CD drive for music or video?
    • option 7 to run from ISO image stored on disk
  • How do I execute extra commands on startup?
    • option + to run any unix commands before Linux starts
  • How do I use extended attributes in RAM
    • option k to create an EXT3 filesystem for /var)

If your PC is already running Windows XP then the question is how can I run Linux without changing my system. If you run from RAM and CD then the next question is how can I save the changes I have made to the Linux system. Saving only the changes in a compressed archive to floppy, USB or CD would seem the logical choice.

Running from CD is slow. How do I run ADIOS faster? so the next improvement is to copy the ISO to your NTFS filesystem and only use the CD to boot Linux. This will provide the same performance as if you had installed linux to its own partition.  Better still copy the ISO to RAM and run everthing from RAM.

How to I execute extra commands on startup?

How do I save and restore files to disk? If you would like to save files to disk then two methods come to mind, first find or create a partition to mount the read-write files, second save and restore only the changes to the read-write RAM drive.


More Problems

  • How do I play music CDs?
    • check sound configuration and then run grip, kscd or xmms
  • How do I watch movie DVDs?
    • mount the DVD and then run xine
  • How do I copy files to flash USB device?
    • click on USB storage icon or
    • mount –t fat /dev/sda1 /mnt/flash
    • then drag and drop files using konqueror or nautilus or
    • cp –af files /mnt/flash
  • How do I write files to CD?
    • use tools such as nautalis-cd-burner or gtoaster or cdrecord

How do I play music CDs? Check that the sound detection is working before starting your music CD using grip, kscd or xmms.

How do I watch movie DVDs? If you only have one CD/DVD drive then using a copy of the boot CD image from a disk image and using the Xine software.

How do I copy files to flash USB device? When saving files to disk it is a good idea to create a compressed archive first.

How do I write files to CD? To create CD image you can use the mkisofs command before using the cdrecord command.


More Run Options

  • How to undo changes?
    • -2 remove var.img from FAT/EXT filesystem
    • -20 remove adios.img
    • -4 remove var.img from USB device
    • -9 remove swap.img
  • How to tailor filesystems?
    • v set size of var.img
    • s set size of swap.img
    • p set percentage of RAM shared with disc
    • umount to force images to next partition
    • open start virtual consoles on Ctrl Alt F2

[Note: some run options such as 7 are available as boot options]

How to undo changes? You always need a way to change things, so more commands to undo and resize files.

How to tailor filesystems? You need to change default values to make it more useable.

The previously hidden commands are now viewed with the more option, these commands may require some knowledge of the ADIOS installation.

These extra commands are useful such as reboot, eject and open. Some are described in other documents. Look at the source code of linuxrc for more information.

Some of the run options such as 1, 2, and 4 are available as boot options.  Boot options s1, s2 and s4 are the secure LIDS versions of the above.


Simplify ADIOS for general use

New startup sequence if you don't select the menu

  • If find /opt squashfs optional components then mount them
  • If the ISO image is found on disk then use it is used
    • else it uses the CDROM
  • If the /var read-write partition is on disk then use it is used
    • else if find var.img loopback file on disk then use it
    • else if find savestate.tgz changes file on disk then use it
    • else if find var.img loopback file on USB then use it
    • else if find savestate.tgz changes file on USB then use it
    • else uses /var is in RAM

[Note: unionfs can be used to add files to read-only filesystems]

Simplify ADIOS for generla use

The new startup sequence


Boot Options

  • Added for convenience of advanced users
    • linux – start with LIDS off (default)
    • lids – start with LIDS on
    • s4 – start option 4 with LIDS on
    • 1r3 – start option 1 run level 3
    • 11x – start with savestate.tgz on floppy but on different machine
    • lock – start closed system /etc/rc.d/rc.lock
    • lockusb – start closed system /mnt/usb/rc.lock
    • hda5 – boot vmlinuz from partition 5
  • Guru users can even enter commands
    • vmlinuz initrd=initrd.gz root=/media/cdrom append=“run_level=5 option=7 lids=0 resolution=800x600 instance=bootcd”

The ADIOS version 3 kernel has lids built in.  The default to start the kernel with lids=0.  You have about 10 seconds before the run option menu will appear, so type F1 for help if you want to use boot options.

append

Edit isolinux.cfg to create your own boot options

Run options:


Laboratory Options

  • Setup menu – turnkey system
  • Install script copies setup to disc
  • Install ADIOS Linux image to disc
  • Install Linux Loader – lilo, grub
  • VMware, MS Windows, Solaris
  • Network traffic vs disc-to-disc copies

These are options that we can use in the on-campus School laboratories.

When the CD is booted in the laboratory or the setup is booted from hard disc, a turnkey menu appears to allow students to decide what operating system they require to be downloaded. The menu also has additional features to allow the student to burn ISO images from a specified list.

If the disc partition has become corrupted there are scripts to rebuild the laboratory machine. The operating systems images are downloaded onto another partition or disc drive initially and only if that backup copy becomes corrupt does the software need to copy the image over the network again. Thus most of the time images are copied from disc to disc.

Since the ADIOS image has about 2GBytes of read-only files, there is no need to even copy the image, just mount it read-only. The /var read-write files are then allocated to a 512MB to 6GB filesystem which is destroyed when the user reboots the PC.

The linux loader is used to allow the user to select the operating system after it is installed. Operating System images that are currently used include Linux, VMware, MS Windows, FreeBSD and Solaris.


PART 3:  UML Virtual Machines

  • 64MB RAM, 500MB disc, 64MB SWAP
  • 4 ethernet switches, 1 ethernet hub
  • Configuration depends on real RAM
  • Modify configuration files /etc/uml/uml.conf
    and /etc/uml/rc.local to change networking
    and /etc/uml/rc.uml1 to configure uml1
  • Uses Copy-On-Write (COW) files
  • Child has access to parent files via /mnt/host
  • Child can be start X client on parent

The User Mode Linux project has made the teaching of network administration and management more practical. In the teaching of network administration and management, usually students would have to setup an environment of several PCs to test a network configuration. Previously a student would take over 3 or more machines in the laboratory to perform the practical exercises. They were asked to work in groups of 3 since we didn’t have enough resources for each student to use 3 PCs exclusively. Now, students only need one machine to emulate a networked environment and that PC can be at home.

The UML shell script and the associated configuration file are my way to simplify the procedure of allocating resources to these virtual machines and networks. By connecting each virtual ethernet switch to every virtual machine, the end user can then create the network topology they require. The default values assume that your PC has at least 256MB of RAM, at least 128MB for /var and if possible another 256MB of real disc space for SWAP.

Users should modify the configuration file reducing the memory requirements if they have limited RAM, using no SWAP or allocating real disc space to SWAP files. Starting 4 virtual machines with an ICE desktop can be done by creating a single file /etc/uml/rc.local containing the line “startx”.

The copy-on-write (COW) feature can be turned off if you have 500MB of disc space for each virtual machine. A different UML image can be used in the laboratory to that used on the boot CD.


UML Configurator

  • Allocate more UML virtual machines
  • Allocate more RAM per virtual machine
  • Start UML with startx (icewm/xfce)
  • Able to use Clone of parent
  • Able to use real SWAP
  • Run trusted OS
    • LIDS
    • SELinux

 

Change values in configuration file /etc/uml/uml.conf:

UML Clone of parent is similar to parent in that /var is read-write while /usr is read-only. The clone can run KDE with uml-startkde and ICE with startx. Gnome can also be run on ADIOS version 3 clone. The ADIOS version 3 clone is limited to only 200MB of disc whereas the UML Full machine has 500MB of disc.

The Security Enhanced UML machines have been designed and tested only for UML full machines. UML clones have not been designed for trusted operating systems in mind.


X window environment

Here is view of the ADIOS boot CD parent running the KDE interface. However the ADIOS user can also select GNOME or ICE if they prefer.

The icon with the two gears is used to start the UML virtual machine. There is a command line interface with lots of options, but most of these can be put in the configuration file /etc/uml/uml.conf .

In the top right corner is an xterm for the console for the second UML child.

Just behind that is the ICE desktop for the UML child.

Within each of the UML virtual machines the Mozilla FireFox web browser is running and has made a connection to the parent web server. The web server on the parent has a search engine so that you can quickly search the 250MB of online documentation which includes The Linux Documentation Project guides, HOWTOs, manual entries and much more.

To simplify and reduce the size of the UML operating system image, many files are in fact links back to the parent system. Edit and run the script uml_unlink if you want a more complete child. However each child can be configured to start different services and connect to different virtual networks. Simply create a /etc/uml/rc.uml1 start script, which will be run from the rc.local of the child.

The ICE windows manager is smaller than KDE or GNOME desktop environments but provides most of the functionality required by most users, and it is also very easy to configure.


Virtual Network

As you can see from the diagram it is relatively easy to configure a firewall with a perimeter network between an external packet filter and an internal packet filter, this is known as a screened subnet.

In the default configuration: only 4 UML virtual machines, with each UML child connected to 4 virtual ethernet switches and 1 virtual hub. So the user decides which network interfaces are configured on or off, thus deciding the topology of the virtual network.

If you have ample memory/disk space you can change the configuration file to allow you to run even more UML virtual machines, with more virtual ethernet switches or hubs.

iptables is an excellent tool to filter incoming and outgoing packets, as well filter packets forwarding from one network interface to another.

The tc command allows the user to perform traffic flow control.

IPsec provides Virtual Private Networking through the Internet.

Using tools such as tcpdump and ethereal, a user can see what packets need to be allowed and what should be denied.

It is simple to investigate a split screened subnet by adding another ethernet switch and reconfiguring the network interfaces


Split Screened Subnet

Now all traffic must pass through the Bastion Host. IP forwarding is turned off and the Bastion Host must proxy packets for Intranet (internal network) users.

The ADIOS linux host can be configured to masquerade the virtual network thus allowing internal virtual machines access to the Internet.

The Bastion Host can be setup to be a mail gateway, web proxy server or secure tunnel to another site.

Ideally each virtual host has webmin installed so that they can be managed via a web browser, unfortunately this left for you to setup. A direct path to each virtual machine can be activated over the tap interface on the parent system.

The Network Intrusion Detection System snort can be used and tested so that security incidents could be simulated.

Other important services such as Authentication can be setup with a OpenLDAP server. File sharing using NFS and Samba, printing CUPS, routing with zebra/quagga (a CISCO clone), DNS and DHCP.

You can install software on each of the UML virtual machines using standard Fedora RedHat RPMS. Watch out for files linked from the child to the parent, you can unlink these and reinstall your software.


Multiple Perimeter Networks

using Dual Homed hosts and Screened Subnets

In this firewall each service both incoming and outgoing is on its own perimeter network. This firewall design requires setting up the internal and external firewall packet filter rules correctly with statefull rules for one service for each dual homed host/server.

The advantage of this design for a firewall is that even if one of the bastion host machines was to be compromised it would not allow the hacker to attack other services and even in the case of a denial of service attack the external packet filter could limit the bandwidth to each of the essential services.

Intrusion detection systems or software is still required to be added to make this design even more secure.

To simulate this firewall with one internal workstation, requires 7 virtual machines and 9 virtual ethernet switches. The AUTO option should allow the uml software to automatically allocate less RAM per UML virtual machine. You can also edit the /etc/uml/uml.conf file to reduce memory requirements of each virtual machine as well.

The Maximum Transfer Unit for communication between UML virtual machines is limited to 1484 bytes. The MAC addresses need to be unique.


PART 4:  How does it work?

Step-by-step to booting the CD

  • Initial ram disc is loaded into memory
  • Load kernel which executes linuxrc
  • Bootcd or Laboratory ?
  • Options, kernel modules, network
  • Mount filesystems
  • Modify configuration files
  • Start system by reading /etc/inittab

The boot floppy is stored on the CDROM (ADIOS version 3)

The syslinux command makes this floppy bootable (alternatively use isolinux)

A 16MB initial ram disc “initrd.gz” is then uncompressed and loaded into RAM,
then the kernel file vmlinuz is uncompressed and loaded into RAM.

Next, the linuxrc script performs all of the hard work.
It needs to know if this is a bootCD or is this running in the laboratory?

If running from bootCD, then prompt for user’s requirements with the run options menu.
Else if in the laboratory, connect to the web server and download install scripts.

It also mounts filesystems to see if there is any space for storing files on disc.
Modifies configuration files before starting the system by reading inittab file.

The next task is to discover the hardware and create a configuration file so that X windows will run.
Kudzu software creates the hardware configuration file /etc/sysconfig/hwconf, while redhat-config-xfree86 (system-config-display) creates the X windows configuration file /etc/X11/XF86Config.

Next you should see a login windows with user name adios for you to login.
You then select the windows environment that suits you.


The ADIOS filesystem

  • Is not a standard Unix filesystem
    • You can now install RPMs using copy-on-write unions
  • The “/” filesystem is a RAM disc
  • Read-only (ro) files are in /adios, /usr, & /opt
    • /bin, /sbin, /lib are in /adios
  • Read-write (rw) files are located in /var
    • /boot, /etc, /root, /home, /tmp are in /var
  • There are many soft-links used from the ro files to the rw files and visa-versa
    • For example /usr/local is linked to /var/local
  • SQFS Components are mounted at /opt
    • Such as openoffice, www, uml

To make Linux run from CD requires a redesign of the layout of the files within the filesystem.  All of the read-write files have been placed in the directory /var.  All of the read-only files are placed in compressed filesystems.   The addition of copy-on-write unions (unionfs) it is possible to mix read-only and read-write filesystems.

/ is 16 MB RAM disc
/adios mount adios.sqfs (squashfs read-only compressed filesystem)
/usr mount usr.sqfs (squashfs read-only compressed filesystem)
/var is an extracted archive of the read-write files from var.tgz or from /adios/var
/opt/uml mount point for /opt/uml.sqfs

/ file structure
Directories for - adios, dev, initrd, mnt, proc, usr, var
SoftLinks to /adios for - bin, lib, sbin
SoftLinks to /var for - boot, etc, home, root, tmp

/adios file structure (squashfs)
Directories for - bin, lib, sbin
SoftLinks for - boot, etc, home, mnt, proc, tmp, var, usr

/var file structure (ramdisc or loopback ext3 via option k)
SoftLinks for - bin, sbin, usr, lib/rpm, lib/slocate, …

savestate.tgz is a copy of the changes in /etc, /root and /home

Note: squashfs filesystems discs do not have the right attributes to be exported filesystems using NFS, but can be shared using samba software.

The default is setting is to use copy-on-write (COW) unionfs, this means that all changes to read-only filesystems are stored in a set of COW files within /var/tmp.


The UML filesystem

  • Is similar to a standard Unix filesystem
  • Except that it is a copy-on-write filesystem
    • To save space some files reside on the parent
    • /mnt/host is a link the parent filesystem
    • /usr/X11R6 is link to /mnt/host/usr/X11R6
    • There are many links from /usr/share to parent
    • You can copy files from the parent, first remove the links to the parent, see script /opt/uml/bin/make-uml_unlink
  • You can install RPMs on the child machine
    • Mount CD on parent, then access /mnt/host/mnt/cdrom
  • The clone UML is similar to /adios filesystem
    • /usr is link to /mnt/host/usr (read-only)

Although this UML filesystem is similar to a standard Unix filesystem to support X windows and some of the larger applications and to keep the size of the UML filesystem small many files are soft links back the parent machine.

/opt/uml/root_fs – a complete linux filesystem, but to make it fit into a small space several large files have been linked back to the parent machine via /mnt/host. To find these files enter the command: less /opt/uml/bin/uml_unlink

Do not run uml_unlink with run option 1 unless you have a spare 400MB of RAM per virtual machine. It is also preferable to use non COW files before running uml_unlink. Edit the UML configuration file uml.conf first.

The copy-on-write (COW) filesystem allows the CD to use virtual machines in RAM disc space as long as you don’t start filling up too much disc space within the virtual machine.

If you have trouble installing an RPMs check the error messages it usually just a matter of either ignoring the error and installing with –nodeps or removing a soft link and copying files from the parent


ADIOS Software

  • rpm –qa - to list installed packages
  • Additional software http://os.cqu.edu.au/adios/software.html
    • autopsy – forensic sleuthkit http://localhost:9999/autopsy
    • ipvsadm – Linux Virtual Server administration
    • mrtg – multi router traffic grapher
    • nagios – service and network monitoring - not included on ADIOS 5/6
    • nessus – security scanner
    • netcat – initiate or listen for connection
    • snort – network intrusion detection systems
    • webmin – web based administration - not included on ADIOS 5/6

List of installed packages

Additional Software


PART 5:  LIDS - Trusted OS

  • Linux Intrusion Detection System
    • mandatory access controls (MAC),
    • a port scan detector,
    • file protection (even from root), and
    • process protection.
  • LIDS configuration files
    • /etc/lids/lids.conf - LIDS access control list (ACL) configuration file
    • /etc/lids/lids.cap - LIDS capabilities file
    • /etc/lids/lids.pw - LIDS password file
    • /etc/lids/lids.net - LIDS mail alert configuration file
  • http://www.lids.org

Linux Intrusion Detection System

A malicious intruder who gains root access can access the whole system.

A LIDS kernel can be configured to support: a portscan detector to alert of a possible intruder; two kinds of ACLs; restrict actions that can be performed on files such as read/write/append; and restrict capabilities a process may possess such as changing network interface addresses or changing user IDs. This provides file protection even from root and process protection.

You have a whole 10 seconds at the boot option to enter lids or one of the preconfigured options s1, s2, s4, s7 to start the kernel with LIDS enabled. 

Note: not all of the LIDS capabilities are enabled check /etc/lids/lids.cap file.

You only need configuration entries for those capabilities that you have selected as enabled in the capability file lids.cap.  Look at the ADIOS the configuration file lids.conf and UML configuration file uml-lids.conf as a starting point.  For more information about LIDS go to the home page at http://www.lids.org and read the documentation there.


LIDS example

  • lidsadm -S -- -LIDS_GLOBAL    switch LIDS off
    lidsconf grant applications access to files http://os.cqu.edu.au/adios/lids
  • lidsconf –P    change password
  • lidsconf -A -o /bin -j READONLY
  • lidsconf -A -s /bin/login -o /etc/shadow -j READONLY
  • lidsconf -A -s /usr/local/bin/apache –o \ CAP_NET_BIND_SERVICE 80 -j GRANT
  • lidsadm -S -- +RELOAD_CONF
  • lidsadm -S -- +LIDS_GLOBAL  switch LIDS on

Once the systems starts with LIDS enabled you will have to use the lidsadm and lidsconf commands to change the access control.

To change the LIDS configuration first turn LIDS off

lidsadm -S -- -LIDS_GLOBAL       Turn off LIDS entirely and behave like a standard Linux kernel.

make your changes using lidsconf commands then turn LIDS on again

lidsconf –P     Change the default password.

lidsconf -A -s /bin/login -o /etc/shadow -j READONLY

lidsadm -S -- +RELOAD_CONF    Reload the LIDS configuration.

lidsadm -S -- +LIDS_GLOBAL     Turn LIDS back on.

The lidsconf command often requires you to set the file readonly first before you can grant access for example. 


SELinux Trusted OS

  • Domain applies to a process while Type applies to objects such as files, directories, sockets, etc
  • Role determines what domains can be used
  • Policies are a set of rules governing:
    • Roles a user has access to
    • Which roles can enter which domains
    • Which domains can access which types
  • /etc/security/selinux/src/policy
    • context=adios:user_r:user_t
    • identity adios has role and domain
  • http://www.nsa.gov/selinux/
  • unofficial site http://www.crypt.gen.nz/selinux  

Starting a UML virtual machine with SELinux permissive allows you configure the child machine. Then halt child and start with SELinux conforming. To run X windows requires sysadm rights.

Please read documents at http://www.nsa.gov/selinux/ and at the unofficial site http://www.crypt.gen.nz/selinux


SELinux example

  • permissive     SELinux off
  • conforming     SELinux on
  • http://os.cqu.edu.au/adios/selinux.html
    • newrole –r sysadm_r    change role to system admin
    • avc_toggle permissive  OR  conforming
  • In order to allow a user from the user_t domain to execute the passwd command
    • role user_r types user_passwd_t
    • make load
    • make relabel
  • Login as user cso Chief Security Officer
  • Login as user super to halt system

The newrole command allows you change the role in permissive mode

SELinux can be setup to allow you to toggle between permissive and conforming using  the access vector cache (AVC)

The Chief Security Officer is responsible for security of the system, whereas root is responsible for systems administration such as backing up files.

The super user was created with both root and cso privileges


PART 6:  ADIOS Development Kit

  • ADK helps others to make changes to the adios.sqfs & usr.sqfs - read-only section
  • Allow users to modify the UML image
  • make devel - unpacks the CD into its own partition, update packages or whatever
  • rpm --root /mnt/devel -Uv mozilla…
  • make files - rebuilds the files, make iso will produce the iso image, make burn to record
  • Enable other sites to implement the Laboratory download facility

ADK - How can you not release a development kit?

After all, you need to remember how to recreate the CD for the next release of RedHat/Fedora. Unfortunately when making a large number of changes, documentation is often left to the last.

The released development kit is a Makefile. It assumes you have already installed RedHat with squashfs support first.

This Makefile does not contain all of the busybox and kernel rebuild information, some of which can be downloaded from the http://os.cqu.edu.au/adios site.

The Makefile allows you to unpack the CD when you type make devel. You then delete and add new packages before rebuilding with make files, and then rebuild the iso with make iso, and burn the CD with make burn.

For simple modifications, the rpm command can be used to erase and install different packages on a different “root” system. Entering make adios.sqfs will rebuild the read-only files into a compressed image.

Modifications to the system configuration is relatively straight forward as these read-write files are stored in the archive var.tgz or in adios.sqfs in directory var on the CDROM

Startup option modifications require editing of the linuxrc file inside the initial ram disc “initrd” which is in the boot floppy at /boot/adios.img

A list of the installed RPMS can be generated by entering:

rpm –root /mnt/devel –qa | sort > rpms.txt

Assuming /mnt/devel partition contains the adios development kit.

Kernel modifications require saving the modules on the adios.sqfs file and saving the kernel in the boot floppy at /boot/adios.img


New Features

  • ADK
    • Fedora for kernel 2.6.17
    • Live system testing
  • ADIOS Lab Server
    • Automated Download and Installation of OS
    • Uses DHCP, DNS, PXE, HTTP, SMB, CUPS
  • Locked staged system
    • USB device, rc.lock, runlevel 7 or 8
  • squashfs components
    • openoffice.sqfs, rfc.sqfs, rpms.sqfs, java.sqfs

ADK

Boot ADIOS then remount your Fedora RedHat Linux partition read-write.

Next copy kernel vmlinuz and initial ramdisk initrd.gz from /mnt/cdrom/boot to your boot directory, rename kernel to vmlinuz-adios and copy /adios/lib/modules to your lib/modules directory. Next edit your lilo of grub configuration to be able to boot ADIOS kernel. See example http://os.cqu.edu.au/adios/adk/grub.conf.example

Live system testing use “make rwon”, then boot live system, make changes, remember to run “make rwoff” after returning to the development mode.

ADIOS Lab Server

Dynamic allocation of IP addresses, automated download of setup and ADIOS image onto each PC in laboratory.

Locked staged systems

If system detects USB device and file rc.lock, then start linux at runlevel 7 with no login consoles, no CTRL ALT DEL shutdown and run script rc.lock. See example rc.lock in http://os.cqu.edu.au/adios/adk/rc.lock.example. The BIOS of some systems has to timeout before the bootCD is read.

Squashfs

Squash filesystems are autoloaded. This allows the image in the laboratory to be larger than the CD maximum limit of 700MBs. It also means that the same software can be used on the DVD version. The rpms.sqfs file contains all of the RedHat RPMS. Other built squashfs files are jdk.sqfs, ns.sqfs, and rfc.sqfs.


PART 7:  Future of ADIOS

  • Implementation of secure Linux environments LIDS, SELinux, GRsecurity, RSBAC …
  • Investigate management software such as Cfengine, OpenNMS, …
  • Experiment with Xen virtual machines with Kernel 2.6 and add more built in security
  • Investigate other compression and encryption
  • Production of a full DVD version 4.7Gbytes
  • Automate the process for other Linux/Unix distributions such as Mandrake, FreeBSD, …

Here are some plans for future implementations:

Security of Parent system and UML virtual machines using one of the key players such as Linux Intrusion Detection System (LIDS) and SELinux has been implemented, but security using Rule Security Base Access Control (RSBAC), or GRsecurity, are being investigated.

Currently investigating management software such as Cfengine, which is popular in Europe, and other Integrated Network Management Systems available for Linux. Also looking at web based management systems, web search engines, web analysers, and support for web graphical output.

Always need to include more documentation such as all of the Request for Comments (RFCs) on DVD version.

ADIOS version 6.0 already has Linux kernel 2.6.17 with some support User Mode Linux and with more security access control features.  A complete rebuild of the kernel and its modules to experiment with Xen virtual machines.

Using the latest busybox and uclibc libraries to build a boot environment to start the bootCD.  Use of the latest syslinux/isolinux startup.

Currently using squashfs from version 1.25 onwards, (previous used cloop in version 1.01), there is of course other compressed iso software such as mkzisofs.   Look at modifying source code of squashfs to support read/write compressed filesystems and extended attributes to support SELinux.  Currently have to build an ext3 filesystem within a squashfs filesystem, this requires a double mount and a loss in the number of files that can be stored on the CD.

Why bother compressing when DVD provides 4.7Gbytes, the obvious next step is to create a full Fedora/RedHat system with a larger UML filesystem.

The ADIOS Development Kit is the first step in an attempt to automate the process for any distribution of Linux.


Closing Remarks

  • ADIOS Linux boot CD is freeware
  • Developed by Neville Richter, Mark Huth, & Lynda Thater
  • Uses Fedora Core, LIDS, UML and ICEwm
  • ADIOS can install on a Linux Partition
  • ADIOS can run on a FAT Partition
  • ADK is located at ADIOS home site URL http://os.cqu.edu.au/adios
  • Laboratory setup with authentication

That’s it

The ADIOS CD was made OpenSource that is freeware using the GNU Public License from the beginning in an attempt to further the spread of Linux. It has taken a larger number of hours to and seral late nights to arrive at its current form. As the project leader I would like to thank my co-worker Mark Huth, who has built many kernels and solved more problems than even I am able to create. I would also like to thank Lynda Thater for testing, proof reading and writing web documentation.  You can thank Lynda Thater for editing and rewriting large sections of the documentation so that it easy for you to read.   I want to also thank all of the users who have given valuable feedback which has lead to several improvements and fixes.

The home page has the most recent copies of the ADIOS boot CD and documentation.  Go to http://os.cqu.edu.au/adios to read more on install scripts and where to obtain the latest copy of the ISO images.   Built from a customised Fedora RedHat installation, plus Linux Intrusion Detection System (LIDS), plus User Mode Linux virtual machines plus ICE windows manager, plus OpenSWAN, plus SNORT, plus Nessus and lots more.

Many universities and educational institutions now have a single-sign-on system, which authenticates staff and students.  It is typically used with access control and auditing features. My preference is for an OpenLDAP (Lightweight Directory Access Protocol) server with TLS (Transport Layer Security) as this can be selected with the authconfig command, which then modifies the appropriate files. However some tailoring of PAM (Pluggable Authentication Modules) may be still required.

ADIOS is now used throughout the world, it has been used by many eductional instutuions, government bodies, computer societies and in industry.  I plan to release the DVD version with support for all of the languages that the Fedora Core distribution now supports. This will enable ADIOS to be used even more widely.


References

Thank you for your attention.  For more information and references visit the home site.

Please feel free to contact me at n.richter@cqu.edu.au if you have any suggestions for improving this Linux live boot CD.

Footnotes:

I am looking for developers who would be willing to help maintain the ADIOS project and maintain a chat / email group with the aim to create different boot CDs. The current bootcd has a security and documentation theme for teaching network administration. Alternate themes could be based on databases, wine or even games.

I am starting a project to create other language versions of the boot CD and would be happy to hear from anyone willing to participate.

The ADIOS distribution requires more mirror sites to help with the limited bandwidth from CQU.


Written and maintained by Neville Richter and Lynda Thater, Copyright 2002-2006 GNU General Public License.