MySQL - Connexion impossible

Mon serveur YunoHost

Matériel: Serveur Dédié Kimsufi KS-4 (OVH)
Version de YunoHost: 3.6.5.3
J’ai accès à mon serveur : En SSH et Par la webadmin
Êtes-vous dans un contexte particulier ou avez-vous effectué des modificiations particulières sur votre instance ? : Oui
Modifications effectuées: Modification du port SSH, désactivation de l’accès SSH pour l’utilisateur admin, modification de fail2ban pour surveiller le nouveau port SSH.

Description du problème

Bonjour à tous,

Je suis nouveau sur YunoHost (moins d’une semaine). Jusqu’ici j’utilisais ISPConfig qui est bien trop lourd pour mon utilisation. La solution ma séduite, alors j’ai passé le cap.

J’héberge plusieurs site internet et j’aimerais réimporter mes bases de données sur ce nouveau serveur.

Le problème c’est que j’éprouve quelques difficultés avec MySQL.

J’ai récupéré le mot de passe se trouvant dans /etc/tunohost/mysql.

Lorsque que je tente de me connecter, j’ai l’erreur suivante:

ERROR 1698 (28000): Access denied for user 'root'@'localhost'

J’ai cette erreur lorsque je tente de me connecter directement avec la command mysql ou lorsque j’utilise un Database Manager en utilisant un pont SSH (port forwarding).

Après investigation j’ai remarqué que si j’utilisais le compte root avec un sudo -i, j’arrive à me connecter à MySQL sans mot de passe.

J’ai alors décidé à travers l’interpréteur MySQL de créer un nouvel utilisateur sans délimitation pour la provenance de la connexion ('truc'@'%'), puis je lui ai attribué des droits.

Malheureusement j’ai toujours le même problème. Impossible de me connecter à travers l’interpréteur MySQL ou depuis un manager avec un pont SSH.

Comment puis-je accéder à MySQL pour mes sites WEB ?

Pour des raisons de sécurité, j’aimerais si possible éviter l’utilisation du compte root et PhpMyAdmin et compagnie.

Merci pour votre aide.

Bonjour

En principe c’est le compte root qui est prohibé ?

Salut,

Effectivement. Mais yunohost étant assez connu maintenant, je préfère empêcher l’accès ssh au compte admin tout comme le compte root.

On n’est jamais trop prudent.

En ce qui me concerne, pour un usage basique d’hébergement de site, j’installe Custom Webapp avec option bdd et je travaille avec. Mais il est vrai que je ne suis jamais allé beaucoup plus loin.
Je crois que Custom Webapp est, aussi, multi-instances.
Sinon, chez moi en root, je tape mysql et il ne me demande jamais de mdp.

Honte à moi,

J’utilise Multi Custom WebApp et je n’avais pas vu la coche base de donnée.
Je vais créer une app bidon pour voir si les accès fonctionne.

Ça fonctionne !
Pas exactement comme je le voulais mais ça devrait faire l’affaire.

J’ai pu créer une base de donnée depuis une webapp bidon. Suite à ça, je me suis remis sur l’interpréteur MySQL depuis le compte root (ssh).
J’ai recréer un compte MySQL puis je lui est attribué tous les droits.

J’arrive maintenant à me connecter depuis un Database Manager avec un pont ssh.

Je peux créer des utilisateurs avec des droits précis et des bases de donnée. C’est l’essentiel pour moi.

Bizarrement impossible d’avoir un accès sur la base mysql. Et il a fallu qu’une première base de donnée existe (autre que performance_schema) pour que l’utilisateur daigne se connecter. Vraiment très étrange.

Si ca peut aider, voila les suites de commandes que j’ai effectué:

  • sudo -i | accès au compte root depuis SSH
  • mysql | ouverture de l’interpréteur MySQL (avec le compte root aucun mot de passe n’est normalement demandé

Une fois connecté:

CREATE USER 'nom_utilisateur'@'localhost' IDENTIFIED BY 'mon_super_mot_de_passe';
# je garde l'utilisateur en local car pas de connexion depuis l'extérieure
GRANT ALL PRIVILEGES ON *.* TO 'nom_utilisateur'@'localhost' WITH GRANT OPTION;

Pour des raisons de sécurité, j’utilise ce nom d’utilisateur seulement pour la gestion. Pour les différents accès applicatifs, je créer un nouvel utilisateur qui aura des droits sur une seule table et avec des privilèges très précis. Dans la grande majorité des cas INSERT, DELETE, UPDATE et SELECT.

En tout cas merci @anonyme23 pour ton aide.

2 Likes

This topic was automatically closed 15 days after the last reply. New replies are no longer allowed.