0

MyCollab displays an initial setup screen a la Wordpress, but the installer hangs, regardless of how permissive I've set its directory to be.

When I test a database connection, it said that it can't make a connection. I have specified the database name, a user with access to that database, the corresponding password, and the address. If I click "Check connection" it says "Cannot connect to database. Recheck your input."

I am not sure what it's not connecting to. I can use a mysql -ufoo -p, giving the same credentials as I gave MyCollab, and telnetting to localhost on 3306 gets binary data that includes an intelligible MariaDB prompt. I can use the database from the command line.

What else should I be doing?

Christos Hayward
  • 1,162
  • 3
  • 16
  • 35

1 Answers1

1

Wanted to comment as this is not a direct answer, but I'm lacking the reputation to do so.

Assuming you are using the proper configuration and considering that you have tested it, the issue might lie elsewhere : Are you using SELinux on your system (type getenforce to check if it is Enforcing) ? If you do, it might be blocking the communication between your services. To know if it does, look in /var/log/audit/audit.conf for lines with status=denied.

If you can afford to temporarily disable some security features, the easiest way to fix the issues you may see in audit.conf is to use setenforce 0, re-attempt to connect your service to your database (it should work at this point), then create a new permission file audit2allow -a -M mycollab and register it in your system semodule -i mycollab.pp before re-enabling selinux setenforce 1.

Note that the files generated by audit2allow contain sensitive configuration and should be audited before being applied to your system if you are in a security-sensitive context.

For some more details on audit2allow's usage: https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/6/html/security-enhanced_linux/sect-security-enhanced_linux-fixing_problems-allowing_access_audit2allow

cg_foreau
  • 113
  • 7
  • Thank you. The server is a Debian server; `getenforce` gets a command not found error. – Christos Hayward Aug 30 '21 at 19:04
  • I think you do not have selinux installed then, but I'm not very familiar with debian. I believe that MySQL limits user access per source/location. When using `mysql` you might not be identified as connecting from the same source. Try to use ALL the parameters you provided to mycollab when establishing the connection with cmd (set --bind-address and --database https://linux.die.net/man/1/mysql). Similar issue here : https://stackoverflow.com/questions/8348506/grant-remote-access-of-mysql-database-from-any-ip-address . Have you checked the MySQL server logs in case it sees the login attempt ? – cg_foreau Sep 01 '21 at 08:50
  • Thank you; advice to check the logs is always a helpful reminder. I'm awarding the bonus to you because even though I don't have what I want, you offered the most help. – Christos Hayward Sep 01 '21 at 19:17