bei cpanel lauscht mysql standardmässig auch auf dem externen interface und der zugriff wird über die sql benutzer geregelt.
Wir machen das hier mit vpns. Wer direkt Zugriff auf die Datenbank will muss sich in ein VPN einloggen. Falls das einer nicht will gibts halt ein managed virtual server wo man das individuell lösen kann...
in der datei gui/client/sql_user_add.php:
Code:
$query = 'grant all on ' . quoteIdentifier($new_db_name) . '.* to ?@\'localhost\' identified by ?';
$rs = exec_query($sql, $query, array($db_user, $user_pass));
$query = 'grant all on ' . quoteIdentifier($new_db_name) . '.* to ?@\'%\' identified by ?';
$rs = exec_query($sql, $query, array($db_user, $user_pass));
wie du siehst werden zwei einträge erstellt. entferne den zweiten eintrag... (auch in der löschfunktion ansonsten gibts beim löschen einen fehler). Dann kannst du in der my.cnf bind_address auf eine öffentliche adresse binden und manuell einen user mit der entsprechenden ip erstellen...
ob du das willst und ob das sinnvoll ist, ist eine andere frage...