Connexion en SSH au serveur hebergeant mysql
Bonjour,
Dans le cadre d'un devoir, on me demande de me connecter en ssh au serveur hébergeant mon serveur MySQL. J'utilise une VM ubuntu server sur laquelle est installé
... mais cela ne fonctionne pas, car quand je tente de me connecter par la suite au serveur MySQLd en tapant
Quelqu'un aurait des éléments de réponses à m'apporter ?
Merci beaucoup à tous !
Dans le cadre d'un devoir, on me demande de me connecter en ssh au serveur hébergeant mon serveur MySQL. J'utilise une VM ubuntu server sur laquelle est installé
mysql-server. J'ai donc pensé que le serveur hébergeant le service MySQL était mon
localhostet j'ai donc tapé la commande :
ssh nom_utilisateur@127.0.0.1
... mais cela ne fonctionne pas, car quand je tente de me connecter par la suite au serveur MySQLd en tapant
mysqlou
sudo mysql, je n'ai pas les droits.
Quelqu'un aurait des éléments de réponses à m'apporter ?
Merci beaucoup à tous !
A voir également:
- Connexion en SSH au serveur hebergeant mysql
- Gmail connexion - Guide
- Changer serveur dns - Guide
- Connexion chromecast - Guide
- Gmail connexion autre compte - Guide
- Ssh download - Télécharger - Divers Web & Internet
1 réponse
Bonjour,
Pré-requis
Cas d'usage typique
Supposons que ton serveur mysql soit hébergé sur le serveur distant dont l'IP est
Supposons que sur ce serveur, l'utilisateur
Bonne chance
Pré-requis
- Pas besoin de
sudo
pour lancermysql
. - Pour te connecter à un serveur
mysqld
, il faut généralement préciser au clientmysql
avec quel utilisateur (option-u
) tu souhaites te connecter. Il est important de prciser que les utilisateurs mysql et linux sont deux considérations indépendantes. En effet, les profils mysql sont définis dans la tablemysql.user
par le couple (login, ip du client). Le profil administrateur correspond àroot@127.0.0.1
. Typiquement, si tu veux te connecter en administrateur sur le serveur mysql de ton propre PC, tu lanceras dans un shell :
mysql -u root -p
- Une fois identifié, tu peux retrouver la liste des utilisateurs mysql en tapant dans ton client
mysql
les commandes suivantes :
use mysql select user, host from user;
- Un serveur mysql bien configuré ne devrait autoriser que des connexions locales. Cela évite qu'il se fasse attaquer de l'extérieur. Cela se manifeste à deux niveaux :
- L'interface sur laquelle écoute le serveur
mysqld
(elle est définie dans/etc/mysql/my.cnf
, par défaut127.0.0.1
) ; - La liste des profils mysql définis dans la table
mysql.user
. Par exemple si seultoto@127.0.0.1
, l'utilisateur mysqltoto
ne peut se connecter au serveurmysqld
que si le clientmysql
est lancé depuis la même machine.
- L'interface sur laquelle écoute le serveur
-
ssh
permet de lancer un shell sur une machine distante. Cela permet d'accéder à une base MySQL hébergée sur un autre ordinateur alors que ce serveur MySQL n'autorise que des connexions locales (ce qui, je le rappelle est fortement recommandé). - Se connecter en ssh à sa propre machine n'a donc pas d'intérêt pratique. Si tu veux malgré tout le faire, tu peux parfaitement écrire
ssh login@localhost
au lieu dessh login@127.0.0.1
, le résultat sera le même (voir/etc/hosts
).
Cas d'usage typique
Supposons que ton serveur mysql soit hébergé sur le serveur distant dont l'IP est
11.22.33.44, sur laquelle tu peux te connecter avec l'utilisateur
toto. La commande
sshsera alors :
ssh user@11.22.33.44
Supposons que sur ce serveur, l'utilisateur
totopuisse se connecter localement à
mysqld. La commande
mysqlsera alors :
mysql -u toto -p
Bonne chance