The Perfect Setup - Debian Woody (3.0)
Version 1.6
Author: Falko Timme
This is a detailed description about the steps to be taken to setup a Debian based server (Debian Woody alias Debian 3.0) that offers all services needed by ISPs and hosters (web server (SSL-capable), mail server (with SMTP-AUTH and TLS!), DNS server, FTP server, MySQL server, POP3/IMAP, Quota, Firewall, etc.).
I will use the following software:
- Web Server: Apache 1.3.x
- Mail Server: Postfix (easier to configure than sendmail; has a shorter history of security holes than sendmail)
- DNS Server: BIND9
- FTP Server: proftpd (you could also use vsftpd)
- POP3/IMAP: in this example you can choose between the traditional UNIX mailbox format (we then use qpopper/uw-imapd) or the Maildir format (in this case we will use Courier-POP3/Courier-IMAP).
- Webalizer for web site statistics
In the end you should have a system that works reliably and is ready for the free webhosting control panel ISPConfig (i.e., ISPConfig runs on it out of the box).
I want to say first that this is not the only way of setting up such a system. There are many ways of achieving this goal but this is the way I take. I do not issue any guarantee that this will work for you!
Requirements
To install such a system you will need the following:
- CD 1 of the Debian Woody (Debian 3.0) release (available from http://www.debian.org)
- CD 1 of the latest release of Mandrake Linux (9.2 at the time of this writing) (available from http://www.mandrake-linux.com) (you do not need it if you do not need to create partitions on your hard drive)
- an internet connection since I will describe a network installation in this document
1 The Base System
If you have an unused hard drive you first will have to create partitions on it (you can skip this step if you already have partitions on your hard drive). You can use the Debian installer to do this but I think it is hard to use (especially for newbies). This is where I cheat a little bit: I insert the Mandrake CD into my CD-ROM and run the Mandrake installer (just until after my partitions have been created unsing Mandrake's partitioning tool which I think is the best in the Linux world).
I create two partitions: /dev/hda1 (with /boot as mount point) and /dev/hda6 (with / as mount point). Additionally, I create a swap partition (ususally on /dev/hda5). I think, 50 MB -100 MB is a good size for /dev/hda1; 500 MB should be enough for the swap partition; the rest is for /dev/hda6 (where the users' web sites etc. will be).
After the partitions have been created I stop the Mandrake installation, insert my Debian CD and reboot the system.
At the boot prompt, enter bf24 to install Debian with a 2.4 Linux kernel:
Then select your language:
Afterwards, you will enter the main menu of the Debian installer. Configure your keyboard:
Initialize and activate a swap partition:
When asked Scan for Bad Blocks?, choose No.
Then initialize a Linux partition:
Select the file system you want. I take ext3 here.
Select /dev/hda1 as the partition to be initialized:
When asked Scan for Bad Blocks?, enter No.
Select /boot as the mount point for /dev/hda1:
Now you have to initialize your second Linux partition:
Select your preferred filesystem (again, I take ext3 here). Then select /dev/hda6 as the partition to be initialized:
When asked Scan for Bad Blocks?, enter No.
Select / as the mount point for /dev/hda6: