Līber - Open Source in the Small and Medium Enterprise

edoceo: Latin "to inform fully, instruct thoroughly"

Liber is a series of documents about using Linux in the small business enterprise. Edoceo specializes in introducing companies to GNU/Linux and supporting the companies that are already using GNU/Linux. The articles are written with skilled computer professionals (>=5yrs) and moderately skilled Linux users in mind (~3-5yrs), topics are more developer/server than user/workstation in nature. For companies looking at expensive distributions by other vendors, like RedHat or Novell, there are other suitable alternatives that will truly deliver the lower TCO promises made by Linux.

All of this documentation is based on experiences with the Debian, Gentoo or Ubuntu/Kubuntu GNU/Linux distributions. The information can be applied to any GNU/Linux distribution with slight changes to paths and such. For one the apt-get or emerge commands may not available so some other package manager must be used or manual installs must be performed. Those topics are not covered here.

Readers are encouraged to leave feedback and suggest corrections by using the contact page.

Table Of Contents

  1. GNU/Linux Basics
    1. Kernel Modules - Basically the hardware drivers
    2. The Bash Shell - Issuing commands in the default shell
    3. Gentoo Specifics
      1. Gentoo Base Install - Base Install Procedures
      2. Gentoo Live USB - Boot Gentoo from a USB drive
      3. Gentoo Portage Fundamentals - Gentoo's package management tools
      4. Portage Mirror with Custom Ebuilds - How to create a mirror that contains custom ebuilds too
      5. Portage Binhost - Create a BINHOST to reduce install times on other nodes in the domain
    4. Debian/Kubuntu/Xubuntu Specifics
      1. APT - The package manager tools
      2. Base Configuration - Get the base system up and running
      3. Ubuntu Live USB - Boot Ubuntu from a USB drive
  2. Server Basics

    These are all based on Gentoo, we use Debain/Ubuntu for workstations only.

    1. Server Hardening - A good start for hardening/securing the machine.
    2. Server Firewall - Protect the exposed network interfaces.
    3. SNMP Monitoring - Using net-snmp to monitor equipment
  3. Network Servers

    Basic network services typically found in enterprise environments.

    1. CUPS - Common UNIX Printing System
    2. DHCP - Using dnsmasq or dhcpd
    3. DNS - Using dnsmasq
    4. Hylafax - Hylafax Fax Server
      1. Hylafax Delivery to Samba Share - Suitable for small organisations.
    5. OpenLDAP w/TLS - Installation, Configuration and TLS Security
    6. rsync - Setting up rsync servers and protecting with stunnel.
    7. Samba Servers - Using Samba with OpenLDAP backend.
      1. Samba and Quickbooks - Requires some tweaking of Samba
    8. SSH - Using OpenSSH, examples demonstrate key based automatic authentication.
    9. Syslog - Using syslog-ng
    10. OpenVPN - Using OpenVPN
  4. Database Servers

    Dedicated Database servers, ideally this is the servers single role.

    1. Database Server Basics - Some preliminaries.
    2. PostgreSQL - Edcoceo's choice for enterprise RDBMS.
      1. Custom Functions
      2. Benchmarking
      3. Performance
      4. Replication
    3. MySQL - This is also a very popular package.
    4. Firebird - http://firebird.sourceforge.net/
  5. Email Servers

    Maybe this should be called Communications; about email serving options. Ideally this is a servers single role.

    1. Courier - Complete
    2. Courier-IMAP - IMAP and POP3 daemons only
    3. Email Server Setup - Nuntius is a Postifx+SASL2,Courier-IMAP and PostgreSQL enabled email server.
    4. Spam Filtering - Extends above configuration by hardening Postfix and enabling SpamAssassin.
    5. Exim - SMTP
    6. Postfix - SMTP
      1. Postfix Multiple Instances - Create a filtered inbound, and quick outbound system on one host
      2. Postfix Gateway - Use Postfix to protect your backend mail systems
    7. QMail - SMTP
    8. RoundCube - Webmail Client
    9. SquirrelMail - Webmail Client
  6. Web Servers

    HTTP and HTTPS Server options. Ideally this is a servers single role.

    1. Apache with mod_php and SSL
    2. Apache Analog/Log Rotation
  7. Application Servers

    Other network type applications, many times this server will host multiple applications.

    1. Mantis Bug Tracker - Easy!
    2. Subversion - Choice
  8. Appendix
    1. GNU/Linux Distributions
      1. Debian - For Desktops/Workstations
      2. Gentoo - For Servers
      3. Kubuntu -For Desktops/Workstations
    2. Hardware Notes
      1. Marvell SATA - Needs to use their custom driver.
      2. EPIA-M 10000 - Linux on a Mini ITX - Story.

See Also