The Experimental ISPConfig Server – Debian Stretch (Apache, MySQL, PHP 7, Pure-FTPD and ISPConfig 3.1)
This tutorial explains how to install ISPConfig 3 latest development version using a Debian stretch repository with its respective Debian packages.
The objective of this tutorial is more for experimental and testing purposes than for productive environments.
This experimental feature is provided by ncomputers.org as an attempt for contributing to the continuously improvement of ISPConfig.
If this feature succeeds, there might be chances of extending its support and eventually ISPConfig could have strong bases to request the distribution of ISPConfig through debian official repositories.
In case you would like to install more features than the ones provided by this tutorial, please consult official ISPConfig documentation.
It is recommended to use a fresh install of debian stretch, because of these advices:
- ispconfig-git package installs the contents of ISPConfig git master branch inside /root/ispconfig3 folder.
- ispconfig-apache package disables all configuration files and modules inside /etc/apache2.
This tutorial should provide a fully productive implementation of ISPConfig with: HTTP apache server, FTP pure-ftpd server, SSL Let’s encrypt certificates, PHP 7 with Fast-CGI server, NTP services, MySQL database server, WebDAV services and ISPConfig interface.
1 Prepare the system
1.1 Install your favorite editor
If it is already installed, you may skip this step.
apt-get install editor
1.2 Configure the hostname
The hostname is composed by two parts: a subdomain and a domain. On the below example, 1a corresponds to the subdomain part and ncomputers.org to the domain part. Reeplace them accordingly in /etc/hosts file and commands below.
::1 1a.ncomputers.org 1a localhost
127.0.0.1 1a.ncomputers.org 1a localhost
Update the hostname
echo 1a > /etc/hostname; hostname 1a
1.3 Install GNU wget
In case your system already has wget, you may skip this step.
apt-get install wget --no-install-recommends
1.4 Install keyring
This debian package includes the public key of the ncomputers.org debian stretch repository.
dpkg -i keyring.deb
1.5 Install sources list
This debian package includes the sources list of the ncomputers.org debian stretch repository.
Note: It is also possible to write the commented line below in /etc/apt/sources.list, instead of installing the following debian package, but if these sources list change in the future, then you would need to update them manually.
#deb http://ncomputers.org/debian stretch main
dpkg -i stretch.deb
1.6 Update sources list
Once the keyring and sources list are installed.
2 Install ISPConfig features
2.1 Install MySQL server and its dependencies
This metapackage installs all ISPConfig dependencies for MySQL server and performs some configuration tasks.
Note: MySQL server will be restarted and it will then listen on all network interfaces.
apt-get install ispconfig-mariadb --no-install-recommends
Enter current password for root (enter for none): <- enter
Set root password? [Y/n] <- y
Re-enter new password:
Remove anonymous users? [Y/n] <- y
Disallow root login remotely? [Y/n] <- y
Remove test database and access to it? [Y/n] <- y
Reload privilege tables now? [Y/n] <- y
2.2 Install Apache server and its dependencies
Note: All apache configurations and modules will be disabled, except the ones required by ISPConfig.
apt-get install ispconfig-apache --no-install-recommends
2.3 Install ISPConfig git master branch files
This package installs all ISPConfig git master branch files in /root/ispconfig3
Note: If you are using the above folder, you are advised to rename it before running the following command.
apt-get install ispconfig-git --no-install-recommends
2.4 Install ISPConfig
Note: If you would like to add more features to your ISPConfig implementation, such as Security, Storage, Virtualization, DNS, HTTP, IMAP, POP and SMTP roles, then you should install them before running this command. More details in ISPConfig official documentation.
apt-get install ispconfig --no-install-recommends
_____ ___________ _____ __ _ ____
|_ _/ ___| ___ \ / __ \ / _(_) /__ \
| | \ `--.| |_/ / | / \/ ___ _ __ | |_ _ __ _ _/ /
| | `--. \ __/ | | / _ \| '_ \| _| |/ _` | |_ |
_| |_/\__/ / | | \__/\ (_) | | | | | | | (_| | ___\ \
\___/\____/\_| \____/\___/|_| |_|_| |_|\__, | \____/
>> Initial configuration
Operating System: Debian or compatible, unknown version.
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]: <- enter
Installation mode (standard,expert) [standard]: <- enter
Full qualified hostname (FQDN) of the server, eg server1.domain.tld [1a.ncomputers.org]: <- enter
MySQL server hostname [localhost]: <- enter
MySQL server port : <- enter
MySQL root username [root]: <- enter
MySQL root password : <- enter
MySQL database to create [dbispconfig]: <- enter
MySQL charset [utf8]: <- enter
[INFO] service Postgrey not detected
[INFO] service Postfix not detected
[ERROR] Postfix not installed - skipping Mail
[INFO] service Jailkit not detected
[INFO] service BIND not detected
[INFO] service MyDNS not detected
[INFO] service OpenVZ not detected
[INFO] service Ubuntu Firewall not detected
[INFO] service Bastille Firewall not detected
[INFO] service Metronome XMPP Server not detected
[INFO] service Fail2ban not detected
Configuring Apps vhost
ISPConfig Port : <- enter
Admin password [admin]: <- enter
Do you want a secure (SSL) connection to the ISPConfig web interface (y,n) [y]: <- n
Installing ISPConfig crontab
Installing ISPConfig crontab
no crontab for root
Detect IP addresses
Restarting services ...
Restarting Apache httpd web server: apache2.
Restarting ftp server: Running: /usr/sbin/pure-ftpd-mysql-virtualchroot -l mysql:/etc/pure-ftpd/db/mysql.conf -O clf:/var/log/pure-ftpd/transfer.log -b -8 UTF-8 -J ECDHE:AES256-SHA:AES128-SHA:DES-CBC3-SHA:!RC4 -H -C 64 -c 1024 -A -E -F /etc/pure-ftpd/welcome.msg -D -B
3 Propel the growing of ISPConfig
Any feedback and contributions of any type will propel the growing of ISPConfig. We hope this experimental feature is useful for you and we will try to add more debian packages with its corresponding dependencies.