The configuration of the new Debian server
A little ‘are coming to me once all components of the new server. Now only lacks a hard drive and then I can install the operating system (Debian GNU / Linux). On this occasion also arranged for a piece of my workstation since I added the last album, last year, I never had the opportunity to configure the best partitions.
The CPU I chose for the server supports Intel® VT and this is making me look into the option to virtualize some service.
This server will have to perform several tasks:
- IMAP Mail Server
- Web server for development
- Backup servers
Dovecot: IMAP mail server with Debian
To manage electronic correspondence will continue to rely on Dovecot. This is an open source IMAP and POP3 servers by high standards of security, very fast and fully compliant IMAP (source), in contrast to many other IMAP servers such as Courier-IMAP and Cyrus (both open source) or Zimbra, Gmail or MS Exchange that are not completely standard and does not fully meet my needs.
Dovecot, finally, in addition to the excellent technical features is also easy to configure.
How to install and configure Dovecot with Debian
The installation is very fast, as most of the software on Debian. Just the classic:
apt-get install dovecot-imapd
to have the program installed on your system (less than ten megabytes if I remember correctly).
The next step is to configure the IMAP server by changing a few lines in the configuration file /etc/dovecot/dovecot.conf to specify the protocol that you want to use and the path to, in my case:
protocols = imap imaps
and
mail_location = maildir:~/Maildir
At this point, if you do not need special configurations, the IMAP server will be configured.
How do I send and receive mail with Debian server?
However there are two more pieces to complete the setup of email on the server: we also need an MTA (mail transfer agent) and a service to retrieve email from various accounts I have.
I chose Postfix as MTA for many years: it is a stable, secure and efficient. The configuration in the case of a small server is pretty straightforward, although at first glance it might seem otherwise.
To download the emails using fetchmail instead (along with SpamAssassin). Here too a classic and functional solution.
Web server with Debian development
The server, in addition to managing email, also serves to build web applications, to implement and test the products without having to install software “server” on the workstation and, especially, not to be bound to a single machine for development.
Apache and MySQL are therefore the logical choice for this type of activity.
The process of installing and configuring Apache and MySQL on Debian is very easy. With apt-get the packages are installed in minutes and very few are enough to set up operations: MySQL is configured via a wizard during installation and Apache only needs some things in the configuration files.
Backup servers, Debian and Rsync.
The third and last task of the server is to make copies of data storage, document and archive projects. As far as the backups are very demanding and, thanks to the new server, the data will be even more secure thanks to an additional backup made with a small RAID.
The disks in the RAID will be used to back up the backup, although I consider the current backup of RAID as a backup system ...
To make backups using rsync. Although I chose this software because it combines ease of use with high performance. Rsync the data through the workstation and server are periodically copied to disks dedicated to backups.
Virtualize or not to virtualize?
With the new server I would get a more reliable and safer than the old one, which however is still doing its job nicely. Virtualize some services could be very useful to separate the functions related to the development of mail handling.
The host system may look to make backups and allow the execution of the two guest systems, the mail server and web server for personal development. Before making the final setup I will still make a little ‘test to monitor the performance of this configuration.
