How to add PHP support for jailed SSH users in ISPConfig 3

ISPConfig PHP Jail

Jailkit is an easy-to-use tool to create and maintain jail environments for shell users on Linux. In this guide, I will show you how to move PHP and its dependencies into the jail so that the jailed user can execute PHP scripts inside the jail on an ISPConfig server. Edit the jailkit .ini file and ... Read more

[Solved] MySQL: Too many connections error

This guide shows you how to solve the error message "Connect to MySQL server 127.0.0.1: Too many connections". The error can appear in any log file of a service that connects to the MySQL server. This may e.g. be the /var/log/mail.log file if your email system uses a MySQL database. The error means that the ... Read more

How to reset the MySQL root password

mySQL root password reset

The following steps describe the procedure to reset the MySQL root password on Linux. The same procedure works for MariaDB too. 1) Stop the MySQL server service mysql stop 2) Start the MySQL server manually without permission tables which allows us to login as root user without password: mysqld_safe --skip-grant-tables & 3) Login into MySQL ... Read more

How to redirect an HTTP connection to HTTPS in Apache webserver

HTTP to HTTPS

HTTP connections can be redirected to HTTPS using the apache mod_rewrite module. Mod_rewrite should be available in every apache installation. Apache HTTP to HTTPS Redirect Create a file with the name .htaccess in the website root directory which contains the following lines: RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} If you use ISPConfig 3, ... Read more

Redirect a subdomain in Apache and keep the URL in the address bar

Apache Redirect

This tutorial shows you how to use redirect rules in the Apache web server. If you want to redirect a subdomain like sub.domain.tld into a subdirectory of the website and keep the original URL in the browser location bar, you may use the following apache directive. RewriteEngine on RewriteCond %{HTTP_HOST} ^sub.domain.tld [NC] RewriteRule ^/(.*)$ /sub/$1 ... Read more

How to access a name based website without a DNS record

Hosts file

If you want to access a name-based website that you created e.g. in ISPConfig before the DNS records are set up, edit the hosts file on your workstation computer and add a line like this: 192.168.0.100        www.mydomain.com mydomain.com Edit hosts file on macOS X To edit the hosts file on a computer running macOS X, ... Read more

[Solved] Postfix: “queue file write error”

Postfix: Queue File Write Error

If you get an error like: Apr 15 12:41:03 webb4 postfix/sendmail[11234]: fatal: web1_user(12967): queue file write error in your mail log, then the value for message_size_limit in postfix main.cf is too low. Solve Postfix queue file write error Edit postfix main.cf: nano /etc/postfix/main.cf and set the message size limit to a higher value. E.g. message_size_limit ... Read more

Configure fail2ban to use route instead of iptables to block connections

Fail2ban route command

Fail2ban uses iptables by default to block incoming connections when they exceed the max.  login retries. The iptables rules used by fail2ban might conflict with other firewall rules, so it might be necessary to reconfigure fail2ban to use the route command for blocking incoming connections. Fail2ban ban using route command To reconfigure fail2ban for using ... Read more

How to enable verbose logging in pure-ftpd on Debian and Ubuntu

PureFTPD Verbose Log

To turn on verbose logging (e.g. to debug FTP connection or authentication problems) in pure-ftpd FTP server on Debian and Ubuntu Linux. Enable debug log in pure-ftpd Execute the following command as root user in the shell to enable verbose logging: echo 'yes' > /etc/pure-ftpd/conf/VerboseLog and then restart pure-ftpd, for init based systems: service pure-ftpd-mysql ... Read more

Manually run an ISPConfig 3 Backup on the command-line

ISPConfig Backup

This short guide shows you how to manually start the website, database, and email backup process in ISPConfig on the command-line. php /usr/local/ispconfig/server/cron_debug.php --cronjob=500-backup.inc.php Run the command as root. Of course, the whole process might take some time. It depends on the size of the web pages on the server. Here is the output in ... Read more