There is a new version of this tutorial available for Ubuntu 20.04 (Focal Fossa).

The Perfect Server - Ubuntu 18.04 (Bionic Beaver) with Apache, PHP, MySQL, PureFTPD, BIND, Postfix, Dovecot and ISPConfig 3.1 - Page 3

16. Install Roundcube Webmail

To install Roundcube Webmail, run:

apt-get -y install roundcube roundcube-core roundcube-mysql roundcube-plugins javascript-common libjs-jquery-mousewheel php-net-sieve tinymce

The installer will ask the following questions:

Configure database for roundcube with dbconfig-common? <-- Yes
MySQL application password for roundcube: <-- Press enter

Then edit the RoundCube apache configuration file.

nano /etc/apache2/conf-enabled/roundcube.conf

and remove the # in front of the Alias line, then add the second Alias line for /webmail and add the line "AddType application/x-httpd-php .php" right after the "<Directory /var/lib/roundcube>" line:

# Those aliases do not work properly with several hosts on your apache server
# Uncomment them to use it or adapt them to your configuration
Alias /roundcube /var/lib/roundcube
Alias /webmail /var/lib/roundcube [...] <Directory /var/lib/roundcube> AddType application/x-httpd-php .php [...]

And restart apache

service apache2 restart

Then edit the RoundCube config.inc.php configuration file:

nano /etc/roundcube/config.inc.php

and change the default host to localhost:

$config['default_host'] = 'localhost';

This prevents that Roundcube will show server name input field in the login form.

17. Install ISPConfig 3.1

To install ISPConfig 3 from the latest released version, do this:

cd /tmp 
wget -O ispconfig.tar.gz https://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xfz ispconfig.tar.gz
cd ispconfig3*/install/

The next step is to run

php -q install.php

This will start the ISPConfig 3 installer. The installer will configure all services like Postfix, Dovecot, etc. for you.

# php -q install.php

--------------------------------------------------------------------------------
_____ ___________ _____ __ _ ____
|_ _/ ___| ___ \ / __ \ / _(_) /__ \
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
_| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
\___/\____/\_| \____/\___/|_| |_|_| |_|\__, | \____/
__/ |
|___/
--------------------------------------------------------------------------------

>> Initial configuration
Operating System: Ubuntu 18.04 (Bionic Beaver)
Following will be a few questions for primary configuration so be careful.
Default values are in [brackets] and can be accepted with <ENTER>.
Tap in "quit" (without the quotes) to stop the installer.

Select language (en,de) [en]: <-- Hit Enter
Installation mode (standard,expert) [standard]: <-- Hit Enter
Full qualified hostname (FQDN) of the server, eg server1.domain.tld [server1.canomi.com]: <-- Hit Enter
MySQL server hostname [localhost]: <-- Hit Enter
MySQL server port [3306]: <-- Hit Enter
MySQL root username [root]: <-- Hit Enter
MySQL root password []: <-- Enter your MySQL root password
MySQL database to create [dbispconfig]: <-- Hit Enter
MySQL charset [utf8]: <-- Hit Enter
Configuring Postgrey
Configuring Postfix
Generating a 4096 bit RSA private key
.......................................................................++
........................................................................................................................................++
writing new private key to 'smtpd.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]: <-- Enter 2 letter country code
State or Province Name (full name) [Some-State]: <-- Enter the name of the  state
Locality Name (eg, city) []: <-- Enter your city
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- Enter company name or press enter
Organizational Unit Name (eg, section) []: <-- Hit Enter
Common Name (e.g. server FQDN or YOUR name) []: <-- Enter the server hostname, in my case: server1.example.com
Email Address []: <-- Hit Enter
Configuring Mailman
Configuring Dovecot
Configuring Spamassassin
Configuring Amavisd
Configuring Getmail
Configuring BIND
Configuring Jailkit
Configuring Pureftpd
Configuring Apache
Configuring vlogger
Configuring Metronome XMPP Server
writing new private key to 'localhost.key'
-----
Country Name (2 letter code) [AU]: <-- Enter 2 letter country code
Locality Name (eg, city) []: <-- Enter your city
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- Enter company name or press enter
Organizational Unit Name (eg, section) []: <-- Hit Enter
Common Name (e.g. server FQDN or YOUR name) [server1.canomi.com]: <-- Enter the server hostname, in my case: server1.example.com
Email Address []: <-- Hit Enter
Configuring Ubuntu Firewall
Configuring Fail2ban
[INFO] service OpenVZ not detected
Configuring Apps vhost
Installing ISPConfig
ISPConfig Port [8080]:
Admin password [admin]:
Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: <-- Hit Enter
Generating RSA private key, 4096 bit long modulus
.......................++
................................................................................................................................++
e is 65537 (0x10001)
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]: <-- Enter 2 letter country code
State or Province Name (full name) [Some-State]: <-- Enter the name of the  state
Locality Name (eg, city) []: <-- Enter your city
Organization Name (eg, company) [Internet Widgits Pty Ltd]: <-- Enter company name or press enter
Organizational Unit Name (eg, section) []: <-- Hit Enter
Common Name (e.g. server FQDN or YOUR name) []: <-- Enter the server hostname, in my case: server1.example.com
Email Address []: <-- Hit Enter
Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []: <-- Hit Enter
An optional company name []: <-- Hit Enter
writing RSA key

Configuring DBServer
Installing ISPConfig crontab
no crontab for root
no crontab for getmail
Detect IP addresses
Restarting services ...
Installation completed.

The installer automatically configures all underlying services, so there is no manual configuration needed.

Afterward you can access ISPConfig 3 under http(s)://server1.example.com:8080/ or http(s)://192.168.0.100:8080/ (HTTP or HTTPS depends on what you chose during installation). Log in with the username admin and the password admin (you should change the default password after your first login):

ISPConfig Login on Ubuntu 18.04 LTS

ISPConfig dashboard


The system is now ready to be used.

18. Virtual machine image download of this tutorial

This tutorial is available as ready to use virtual machine image in ovf/ova format that is compatible with VMWare and Virtualbox. The virtual machine image uses the following login details:

SSH / Shell Login

Username: administrator
Password: howtoforge

This user has sudo rights.

ISPConfig Login

Username: admin
Password: admin

MySQL Login

Username: root
Password: howtoforge

The IP of the VM is 192.168.0.100, it can be changed in the file /etc/netplan/01-netcfg.yaml. Please change all the above passwords to secure the virtual machine.

19. Links

Share this page:

23 Comment(s)

Add comment

Please register in our forum first to comment.

Comments

By: gate0keeper

Hi,

I have done this tutorial step by step and got some problems adterwards. Possibly you could help me out?

1. SSL for ispconfig doesn´t work, browser tells me: http://prntscr.com/js6t8p

2. In roundcube I cannot send mails: http://prntscr.com/js6tmt

3. Some mails in Outlook got rejected: http://prntscr.com/js6uf3

But that one is problem with Hetzner Cloud and reverse dns for ipv6, I guess I need to contact hetzner service for that.

 

Would be nice if could point me in the right direction. Thanks therefore and for the nice tutorial!

 

Cheers, Daniel

By: till

Free community support for ISPConfig is available here: https://www.howtoforge.com/community/forums/installation-configuration.27/

By: ustoopia

Thanks for the updated tutorial. Works great for me. I was just wondering if we will be able to install PHP 5.* in a similar way we did on Ubuntu 16.04. Thanks, keep up the good work! :-)

By: The_Legacy

 Hi,

Very good news, I've applied all thiese informations in order to have à box runing on a RPi and it works !!!

Now, I'm trying to instanciate it on many OS's and I can see you presnt some informations about Virtual Machines available but I can't find them. Where can I download ova/ovf of these VM's for virtualbox ?

Thanks for your answer :-)

Have a nice day :-)

By: till

See page menu on the right side near the top, there is a big red download icon. Below the icon, you can find the link to download the VM.

By: janvl

A Question, I installed ISPConfig and it is a highlight.Reading the manual I bought will take some time.

During installation I skipped quota, Mailman and Jailkit.

When I want to install them afterwards is there something I should be aware off,can it be done without ruining what I have now?

Regards,Jan

By: till

Run an ispconfig update with 'reconfigure services = yes' after you installed them.

By: Ralph Fowler

Installed from the OVA and had issues typing commands to the console. Figured out that the keyboard layout is set to German in the OVA.  Found a diagram of a German keyboard and was finally able to peck out the proper keys to get the IP address set so I could SSH in.

Interestingly enough, the SSH keyboard was in US English, and when I did the Ubunto updates it allowed me to change the actual program to US.

Pretty frustrating. Nowhere did I see a notice that the OVA would come up that way.

Otherwise things are doing OK so far.

By: jjsjjs

oh sh*t i did something stupid while i was searching for the phpmyadmin config file to add a blowfish secret. Probably i mistakenly clicked a folder in Winscp while moving the mouse (i seem to have that more often then wanted) and this moved a folder somewhere in /var/www/ causing a Internal Server error while trying to reach ISPConfig on https://server01.myserver:8080/, i did not exactly see were it was moved too. Any tip how to resolve this? And unfortunately i do not have a backup yet. Maybe a image of a folder structure of where things should reside? The rest still seems to work ok, i can reach phpmyadmin but not ispconfig. Thanks! (bumping head against table bang bang bang...)

By: jjsjjs

ooh i'm lucky i found a backup at the VPS provider, putted it back, ispconfig reachable again. added a confirmation in winscp now so i get warned...thansk!

By: lh.vandersteen

hello i have installed the iso  bute i have problem with pureftpd retrieve folrder list   do i need to update pureftpd , i have added the external ip adres in the config file

By: till

You don't need to update pure-ftpd. Most likely you did not open the FTP passive ports in a firewall. https://www.faqforge.com/linux/controlpanels/ispconfig3/how-to-set-the-passiveportrange-in-pure-ftpd-on-denian-and-ubuntu-linux/

By: lh.vandersteen

i have opend al the port range also for passive ports  but still same problem: fault retrieve folder list

By: till

Please post in the ISPConfig support forum to get support: https://www.howtoforge.com/community/forums/installation-configuration.27/

By: CreeWarrior

Hi, great tutorial as usual. The is one thing that seems off, followed the tutorial everythings install fine no errors and everything seems to work just fine. however when i log in to ispconfig and go to the monitoring tab and it shows version ispconfig3.1-dev. Does that mean that the tutorial is installing the dev version and not the stable one?

By: till

That's the stable branch from GIT (not GIT master), so you currently have stable release plus some bugfixes from next stable release.

By: ad0r

Hi, the ISPConfig dashboard is available at: https://192.168.178.100:8080. But how can I open the website from a new customer, what should the domain look like?

The local folder is already created: /var/www/clients/client1/web1/

By: till

You enter the domain name of the website that you created in a web browser. This name must exist in DNS and point to your server IP address with a DNS A-Record.

By: ad0r

Thank you for your reply. Is it also possible without a DNS entry and only with my local IP address? I only want to use it inside my local network.

By: till
By: ad0r

Ok that works. But how can I access my first website created in ISPConfig? If I go to: http://192.168.178.100/ I just get the " Apache2 Ubuntu Default Page".

By: till

You enter the domain name of the website that you created in a web browser.

By: AlexOn

On which step create a password for ispconfig GUI

I can't connect with my credentials.