The Perfect Server - OpenSUSE 12.3 x86_64 (Apache2, Dovecot, ISPConfig 3)
This is a detailed description about how to set up an OpenSUSE 12.3 64bit (x86_64) server that offers all services needed by ISPs and hosters: Apache web server (SSL-capable) with PHP, CGI and SSI support, Postfix mail server with SMTP-AUTH, TLS and virtual mail users, BIND DNS server, Pureftpd FTP server, MySQL server, Dovecot POP3/IMAP, Quota, Firewall, Mailman, etc. Since version 3.0.4, ISPConfig comes with full support for the nginx web server in addition to Apache; this tutorial covers the setup of a server that uses Apache, not nginx.
I will use the following software:
- Web Server: Apache 2.2 with PHP 5
- Database Server: MySQL
- Mail Server: Postfix with virtual users
- DNS Server: BIND
- FTP Server: pureftpd
- POP3/IMAP: Dovecot
- Webalizer and AWStats for web site statistics
In the end you should have a system that works reliably and is easily manageable with the ISPConfig 3 control panel. The following guide is for the 64bit version of OpenSUSE.
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!
Notice: This guide is for ISPConfig 3.0.1 or newer. It is not suitable for ISPConfig 2.x!
ISPConfig 3 Manual
In order to learn how to use ISPConfig 3, I strongly recommend to download the ISPConfig 3 Manual.
On about 300 pages, it covers the concept behind ISPConfig (admin, resellers, clients), explains how to install and update ISPConfig 3, includes a reference for all forms and form fields in ISPConfig together with examples of valid inputs, and provides tutorials for the most common tasks in ISPConfig 3. It also lines out how to make your server more secure and comes with a troubleshooting section at the end.
ISPConfig Monitor App For Android
With the ISPConfig Monitor App, you can check your server status and find out if all services are running as expected. You can check TCP and UDP ports and ping your servers. In addition to that you can use this app to request details from servers that have ISPConfig installed (please note that the minimum installed ISPConfig 3 version with support for the ISPConfig Monitor App is 220.127.116.11!); these details include everything you know from the Monitor module in the ISPConfig Control Panel (e.g. services, mail and system logs, mail queue, CPU and memory info, disk usage, quota, OS details, RKHunter log, etc.), and of course, as ISPConfig is multiserver-capable, you can check all servers that are controlled from your ISPConfig master server.
For download and usage instructions, please visit http://www.ispconfig.org/ispconfig-3/ispconfig-monitor-app-for-android/.
To install such a system you will need the following:
- The OpenSUSE 12.3 DVD. You can download it here: http://download.opensuse.org/distribution/12.3/iso/openSUSE-12.3-DVD-x86_64.iso
- A fast Internet connection...
2 Preliminary Note
In this tutorial I use the hostname server1.example.com with the IP address 192.168.2.249 and the gateway 192.168.2.254. These settings might differ for you, so you have to replace them where appropriate.
3 The Base System
Boot from your OpenSUSE 12.3 DVD and select Installation:
Select your language, keyboard layout and accept the license terms:
The installer analyzes your hardware and builds the software repository cache:
Select New Installation:
Select the region and timezone:
We select Other > Minimal Server Selection (Text Mode) here as we want to install a server without X-Window desktop. The X-Window system is not necessary to run the server and would slow down the system. We will do all administration tasks on the shell or through an SSH connection, e.g. via PuTTY from a remote desktop.
Click on Edit Partition Setup... to change the proposed partitions. As this is a server setup, we need a large /srv partition instead of the /home partition:
Select /dev/sda3 and click on Edit & Change the Mount Point to /srv and click on Finish:
Click on Accept:
Click on Next:
Now I create a user named administrator. You may use any username you like. Make sure that you disable the Automatic Login checkbox for this user. The password that you enter here will be used as the root password:
The installer shows an overview of the selected install options. Scroll down to the Firewall and SSH section and enable SSH...
... and then disable the firewall (ISPConfig 3 comes with its own firewall):
Click on Install to start the installation process and Confirm that you want to start the installation::
The installer formats the hard disk, installs the software packages and prepares the system configuration for the first boot:
After the basic installation is finished, the system will do an automatic reboot & the automatic configuration starts right after the system has rebooted: