NB: This page mostly applies to legacy Ansible package of the product as an installation method. In current Debian package, afterlogic
user is used instead of root, and a random password is generated and supplied.
In MailSuite Pro, root password for MySQL is predefined and is set to mailbundle
. Database server is configured to explicitly disallow external connections, so even if third party knows the password they cannot use it.
However, it's still a good idea to change root MySQL password from a default value. And since it's stored in multiple locations and configuration files, it's important to go through all of them.
Below, I will use My_New_Password
as a sample password - you should use your actual password there instead.
NB: Avoid using semicolon (":") character in passwords, it's known to cause issues for Exim configuration.
MySQL root password change
mysql -uroot -pmailbundle
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'My_New_Password';
FLUSH PRIVILEGES;
Press Ctrl-D to leave the console. From that moment forward, you already have a new root MySQL password, now make sure it's updated in the product configuration.
If you wish to confirm the password has actually been changed, try to log into MySQL console with:
mysql -uroot -pMy_New_Password
Admin interface
Log into /adminpanel/
of your MailSuite Pro installation. Under "Database settings" tab, supply a new password. Be sure to press Save button to apply changes.
Alternately, you can edit "DBPassword" value in /opt/afterlogic/html/data/settings/config.json
file.
Dovecot configuration
/etc/dovecot/dovecot-sql.conf
file:
connect = host=/var/run/mysqld/mysqld.sock dbname=afterlogic user=root password=mailbundle
Modify as follows:
connect = host=/var/run/mysqld/mysqld.sock dbname=afterlogic user=root password=My_New_Password
/etc/dovecot/dovecot-user-quota-dict.conf
file:
connect = host=/var/run/mysqld/mysqld.sock dbname=afterlogic user=root password=mailbundle
Modify as follows:
connect = host=/var/run/mysqld/mysqld.sock dbname=afterlogic user=root password=My_New_Password
Exim configuration
/etc/exim4/exim4.conf
file:
hide mysql_servers = localhost::(/var/run/mysqld/mysqld.sock)/afterlogic/root/mailbundle
Modify as follows:
hide mysql_servers = localhost::(/var/run/mysqld/mysqld.sock)/afterlogic/root/My_New_Password
Applying changes
service dovecot restart
service exim4 restart