Main Page

From Wikislax
Jump to: navigation, search

Linux server

This guide is intended as a set of recipes installing and configuring essential Linux server software. The goal is to save your time ... and mine :) (re)installing a truly functional home server, learning on the way. Home server means the set of services or software listed below. Professional features such as backups, raid, lvm, clusters, automation, etc... are not covered here.

The recipes are based on slackware (64 bits - currently installing 14.2). My reasons for preferring Slackware are simplicity and stability of this distribution. Also, Slackware does not hide what you need to know, and goes straight to the point. Last, Slackware gives good control on package installation. Sometimes we will however prefer to install server software not from packages, but from source.

Installing software from source is not more difficult than using a graphical package manager that will hide most of what you need to know – specially regarding compilation options and – to some extent, location and content of configuration files. This guide will instead strive to show you what really happens under the hood. The knowledge in this guide should be reusable on any other Linux distribution appropriate for your needs.

Installing Linux

Topic Goal
Choosing a System reasons for choosing Linux and Slackware for server usage
Managing partitions manage systems coexistence and get systems to boot
DVDless install Slackware setup to install from Network
Installing Slackware brief overview of the installation process
Maintaining Slackware how to keep Slackware current security-wise
Linux basics key information using a Linux system
Configuration files key slackware configuration files locations
IPTables firewall - filtering Internet communications
X11 configuration configuration of the X11 graphical system
X11 over the network using the X11 graphical system over the network
Compiling the Kernel customizing and optimizing your kernel
Compiling from Source installing sofware from source

Xen virtualization

Topic Goal
Compiling Xen what is Xen and how to compile
Using Grub2 using Grub2 as the bootloader
Creating VMs creating and using virtual machines

Internet software

Most of the server software can be installed directly from the distribution release to save time and effort. However, Server software must include only these compile options required and be updated quickly in case of security advisory, so we will compile it from source. The installation order below must be respected :

Software Usage
OpenSSL the standard encryption library from
OpenLDAP the standard Lightweight Directory Access Protocol Directory from
Cyrus-SASL the RFC 2222 Secure Authentication Security Layer software from the Carnegie Mellon University
Sendmail the legacy MTA software from, reknown as complex to configure, but still widely used and released with many Linux distributions
Cyrus-IMAP the industrial-grade POP/IMAP Server from the Carnegie Mellon University. Store the messages in a DB4 database, includes support for hierarchical folders, shared folders, and mail quotas
SpamAssassin the well-known heuristic AntiSpam software, and other useful PERL scripts and programs
ClamAV a Mail Antivirus for Sendmail and other MTAs
Milter a Sendmail subsystem to allow mail filtering by third-party software as part of the Sendmail MTA mail processing
MIMEDefang a third-party mail filtering software, affords using SpamAssassin and Clamav to filter mail as part of the Sendmail MTA mail processing
MySQL the traditional companion to Apache and PHP. apr and apr-util, used by apache, refer to mysql so the latter must be installed first
Apache the most widespread and Open Source HTTP server
PHP a C-like scripting language well suited for Web development
phpMyAdmin a PHP application to administrate MySQL databases
MediaWiki a PHP application to manage Wikipedia Wikis
RoundCube a PHP Webmail application
INN Newsgroups server
Sucknews Sucknews affords getting the newsfeeds over a regular NNTP connection with your Internet Service Provider when you have no agreements with peer Newsgroup servers
Asterisk VoiP telephony server

Desktop software

We use :

Software Usage
Firefox web browser
Flashplayer animation plugin
Stellarium planetarium software
Thunderbird mail client
VirtualBox virtualizer
Wallpapers just wallpapers
Wireshark protocol analyzer

Choosing a System