Course Home | Syllabus | Assignments | Schedule | Downloads | Submissions | [print]

IT 3100: Systems Design and Administration I

Web Mail - Web Application

Due according to the class schedule.


In this assignment, you will add a web email application to the web server already installed.

Throughout the semester this application must be functioning correctly.

Prepare for the application

Create a new web virtual host for the web email application. This includes the DNS configuration, sites-available, sites-enabled, document root, etc.

Install and configure a web mail application

Find and install the latest stable version of the web mail application roundcube. This will probably require the installation of additional modules for apache or php. Find the instructions and follow them. Do not install roundcube from the apt-get repositories!

You do need to install php-mbstring

Install the system at the root of your new virtual host.

If you have roundcube in a subdirectory, yet don’t want your users to have to type in the path to that directory, you can add a line like the following in the virtual host file:

     RedirectMatch ^/$ /roundcubemail-1.2.2

This has to be inside the <VirtualHost> sections.


Customize the theme in your web mail application to make it personalized for your domain.

Create user accounts

Create at least three more user accounts on your MTA. These accounts only need to be installed on your MTA.

Use these accounts inside of roundcube to test functionality.


Use the roundcube application to verify that email can be sent and received correctly.

Check the email log files to identify errors.


If roundcube has some error 250 about unable to authenticate when sending email. Double check the following lines in the config file for roundcube. Add/or change if you don’t have them.

    $config['smtp_server'] = 'tls://';
    $config['smtp_user'] = '';

Submission File Format

The submission file is a UNIX text file, and must have this format, exactly!

The file must be named webmail_info.txt.

mta_ip:  ip address of mail server
web_ip:  ip address of web server
site:    host name of virtual host running web mail application
user1:   username:password  #new user on MTA
user2:   username:password  #new user on MTA
user3:   username:password  #new user on MTA

For example, my file would look like this:

user1:   rocky:2secret4u
user2:   chippy:2secret4u
user3:   earl:2secret4u

Submission and Passoff

Last Updated 11/02/2020