Re: Comportement MariaDB et configuration

2017-07-13 Par sujet Hugues MORIN
Bonjour


En matiere de securite, j'ai beaucoup a apprendre

J'en prends bonne note et je vais essayer d'appliquer vos conseils
pour augmenter la securite  :D


Cordialement
Hugues

Le 13 juillet 2017 à 10:06, Daniel Caillibaud  a écrit :

> Le 12/07/17 à 18:20, Hugues MORIN  a écrit :
> HM> Salut
> HM>
> HM>
> HM> Oui biensur le root systeme peut s'octroyer tous les droits mais je les
> HM> differencie afin de ne pas donner le mdp systeme a quelqu'un si j'ai
> besoin
> HM> de lui fournir momantanement le mdp du root DB. (ce que je ne fais
> jamais
> HM> en theorie mais je prefere prevoir...)
>
> J'avais même pas imaginé ce cas ;-)
>
> (je suis sur des machines où root n'a pas de pass, il ne peut donc pas se
> connecter avec
> login/pass, et la DB n'a pas de user root)
>
> Si j'ai besoin de filer tous les droits sur la DB à Hugues, je crées un
> user hughes et lui file
> tous les droits.
>
> --
> Daniel
>
> Un gentleman est un monsieur qui sait jouer
> de la cornemuse, mais qui s'en abstient.
> Woody Allen
>
>


Re: Comportement MariaDB et configuration

2017-07-13 Par sujet Daniel Caillibaud
Le 12/07/17 à 18:20, Hugues MORIN  a écrit :
HM> Salut
HM> 
HM> 
HM> Oui biensur le root systeme peut s'octroyer tous les droits mais je les
HM> differencie afin de ne pas donner le mdp systeme a quelqu'un si j'ai besoin
HM> de lui fournir momantanement le mdp du root DB. (ce que je ne fais jamais
HM> en theorie mais je prefere prevoir...)

J'avais même pas imaginé ce cas ;-)

(je suis sur des machines où root n'a pas de pass, il ne peut donc pas se 
connecter avec
login/pass, et la DB n'a pas de user root)

Si j'ai besoin de filer tous les droits sur la DB à Hugues, je crées un user 
hughes et lui file
tous les droits.

-- 
Daniel

Un gentleman est un monsieur qui sait jouer 
de la cornemuse, mais qui s'en abstient.
Woody Allen



Re: Comportement MariaDB et configuration

2017-07-13 Par sujet Daniel Caillibaud
Le 12/07/17 à 18:13, Alain Rpnpif  a écrit :
AR> Le 12 juillet 2017, Daniel Caillibaud a écrit :
AR> 
AR> > Ça change pas grand chose, celui qui est root sur le système qui fait 
tourner la bdd peut
AR> > facilement s'octroyer tous les droits.
AR> 
AR> Oui et non. Si la sécurité de la base est compromise celle du système
AR> le serait ce qui serait plus grave, surtout si la base est accessible
AR> de l'extérieur. C'est pourquoi, je pense qu'il faut mieux mettre deux
AR> mots de passe différents.

J'avoue ne pas comprendre en quoi mettre deux mots de passe ≠ augmente la 
sécurité.

Si je suis root sur la machine (en connaissant le pass root du système ou pas, 
il n'en a pas
forcément), je peux m'octroyer tous les droits sur la base mysql/mariaDb 
facilement (j'ai la
main sur tout le filesystem).

-- 
Daniel

Every journalist has a novel in him, which is an excellent place for it.
Russel Lynes



Re: Comportement MariaDB et configuration

2017-07-12 Par sujet Hugues MORIN
Salut


Oui biensur le root systeme peut s'octroyer tous les droits mais je les
differencie afin de ne pas donner le mdp systeme a quelqu'un si j'ai besoin
de lui fournir momantanement le mdp du root DB. (ce que je ne fais jamais
en theorie mais je prefere prevoir...) ou si la securite de la DB est
compromise comme le dit Alain.

Pour "mysql -uUSER -p .", c'est bien le cas et la seule exception est le
root systeme logue.
A priori les autres users systeme peuvent se loguer en root DB comme ca:
monuser@XXX:~ su -c"mysql -uroot -p"
Mot de passe :  (root systeme)
Enter password:   (root DB)
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 47

Je n'ai pas retirer le reglage par defaut UNIX_SOCKET et si j'ai bien
compris cela est normal car monuser est sur le socket local
Par contre il est impossible de ce connecter via une interface web comme
phpmyadmin ou avec un user systeme normal sans utiliser su.

Je viens de tester en enlevant et remettant UNIX_SOCKET et ca a l'air de
bien etre ca

:D je crois que c'a y est, je commence a comprendre :D
MERCI POUR VOTRE AIDE


Cordialement
Hugues




Le 12 juillet 2017 à 17:13, Daniel Caillibaud  a écrit :

> Le 12/07/17 à 16:43, Hugues MORIN  a écrit :
> HM> Et volontairement je n'ai pas mis le meme que celui de mon root systeme
>
> Ça change pas grand chose, celui qui est root sur le système qui fait
> tourner la bdd peut
> facilement s'octroyer tous les droits.
>
>

> HM> En quelque sorte, avoir systematiquement cette syntaxe en ligne de
> HM> commande: mysql -uUSER -p .etc
>
> Je pense que c'était le cas, et que le root loggué localement était la
> seule exception.
>
> HM> @julien: je ne comprends pas bien ce que tu m'expliques
> HM> quand tu dis: "... Le compte root n'est autorisé à se logger que depuis
> HM> localhost "
> HM> Est ce que ca veux dire qu'il faut etre loguer sur le systeme en root
> pour
> HM> pouvoir se loguer en root sur la DB ?
>
> Oui, encore heureux ;-)
>
> HM> Et que si je retire UNIX_SOCKET, tous les users systeme pourront se
> loguer
> HM> en root sur la DB?
>
> S'il n'a pas de pass, tous ceux qui pourront lancer un client mysql depuis
> les hosts définis
> pour la connexion de root (en général localhost seulement).
>
> La définition des droits sous mysql / mariaDb, c'est d'abord le triplet
> host/user/pass
> (ensuite tu peux surcharger par base et même par table ou par colonne).
>
> Tu peux très bien avoir un root loggé localement qui accède sans pass (via
> le UNIX_SOCKET que
> je connaissais pas), et exiger le pass xxx pour root s'il se connecte
> depuis le host truc et le
> pass  s'il se connecte depuis le host machin, toutes les autres
> connexions au compte root
> depuis un autre host ne seront pas possible, avec ou sans pass.
>
> --
> Daniel
>
> First they ignore you, then they laugh at you,
> then they fight you, then you win
> Gandhi
>
>


Re: Comportement MariaDB et configuration

2017-07-12 Par sujet Alain Rpnpif
Le 12 juillet 2017, Daniel Caillibaud a écrit :

> Ça change pas grand chose, celui qui est root sur le système qui fait tourner 
> la bdd peut
> facilement s'octroyer tous les droits.

Oui et non. Si la sécurité de la base est compromise celle du système
le serait ce qui serait plus grave, surtout si la base est accessible
de l'extérieur. C'est pourquoi, je pense qu'il faut mieux mettre deux
mots de passe différents.

-- 
Alain Rpnpif



Re: Comportement MariaDB et configuration

2017-07-12 Par sujet Julien Pecqueur
UNIX_SOCKET impose de se connecter depuis un socket local et non depuis le
réseau.

C'est pourquoi c'est le choix par défaut pour root.

Si tu enlève UNIX_SOCKET tu pourras te connecter avec le user root en tant
qu'utilisateur unix normal depuis la machine (ou le réseau si tu écoutes
les connexions depuis le réseau dans my.cnf).

Julien


Re: Comportement MariaDB et configuration

2017-07-12 Par sujet Daniel Caillibaud
Le 12/07/17 à 16:43, Hugues MORIN  a écrit :
HM> Et volontairement je n'ai pas mis le meme que celui de mon root systeme

Ça change pas grand chose, celui qui est root sur le système qui fait tourner 
la bdd peut
facilement s'octroyer tous les droits.

HM> En quelque sorte, avoir systematiquement cette syntaxe en ligne de
HM> commande: mysql -uUSER -p .etc

Je pense que c'était le cas, et que le root loggué localement était la seule 
exception.

HM> @julien: je ne comprends pas bien ce que tu m'expliques
HM> quand tu dis: "... Le compte root n'est autorisé à se logger que depuis
HM> localhost "
HM> Est ce que ca veux dire qu'il faut etre loguer sur le systeme en root pour
HM> pouvoir se loguer en root sur la DB ?

Oui, encore heureux ;-)

HM> Et que si je retire UNIX_SOCKET, tous les users systeme pourront se loguer
HM> en root sur la DB?

S'il n'a pas de pass, tous ceux qui pourront lancer un client mysql depuis les 
hosts définis
pour la connexion de root (en général localhost seulement).

La définition des droits sous mysql / mariaDb, c'est d'abord le triplet 
host/user/pass
(ensuite tu peux surcharger par base et même par table ou par colonne).

Tu peux très bien avoir un root loggé localement qui accède sans pass (via le 
UNIX_SOCKET que
je connaissais pas), et exiger le pass xxx pour root s'il se connecte depuis le 
host truc et le
pass  s'il se connecte depuis le host machin, toutes les autres connexions 
au compte root
depuis un autre host ne seront pas possible, avec ou sans pass.

-- 
Daniel

First they ignore you, then they laugh at you, 
then they fight you, then you win
Gandhi



Re: Comportement MariaDB et configuration

2017-07-12 Par sujet Hugues MORIN
Bonjour

Merci pour vos reponses

Mettre un mdp au root de MariaDB a ete ma 1ere reaction.
J'ai utilise ce tuto:
https://memo-linux.com/reinitialiser-le-mot-de-passe-root-oublie-pour-mariadb-ou-mysql-serveur-en-5-etapes/
Et volontairement je n'ai pas mis le meme que celui de mon root systeme

En fait ce que j aimerai c est retrouve le comportement que j avais avec
mysql.
A savoir que les user de db n est pas de rapport avec les user du systeme.

Autrement dit, c est pas parce que je suis loguer en root sur le systeme
que je dois pas saisir le mdp du root de db.
Et idem pour les autres users.
J'aimerai que l'execution d'une requete soit systematiquement assujetti a
la demande du mdp.
En quelque sorte, avoir systematiquement cette syntaxe en ligne de
commande: mysql -uUSER -p .etc


@julien: je ne comprends pas bien ce que tu m'expliques
quand tu dis: "... Le compte root n'est autorisé à se logger que depuis
localhost "
Est ce que ca veux dire qu'il faut etre loguer sur le systeme en root pour
pouvoir se loguer en root sur la DB ?
Et que si je retire UNIX_SOCKET, tous les users systeme pourront se loguer
en root sur la DB?

C'est ca ou j'ai compris de travers? (dsl j'ai quelques lacunes et des
heures de sommeil en moins depuis hier :( )


Cordialement
Hugues





Le 12 juil. 2017 10:47, "Julien Pecqueur"  a écrit :

> Bonjour,
>
> > J'ai un comportement de MariaDB qui me semble etrange et c'est la raison
> > pour laquelle je me tourne vers vous.
> > Quand je suis en shell et que je tape mysql, il semblerai que je sois
> > directement connecte a MariaDB sans demande de mot de passe ou de quoique
> > ce soit !!!
> >
> > root@:~# mysql
> > Welcome to the MariaDB monitor.  Commands end with ; or \g.
> > Your MariaDB connection id is 18
> > Server version: 10.1.23-MariaDB-9+deb9u1 Debian 9.0
> >
> > Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
> >
> > Type 'help;' or '\h' for help. Type '\c' to clear the current input
> > statement.
> >
> > MariaDB [(none)]>
> >
> >
> > Est-ce normal?
>
> Oui c'est le fonctionnement par défaut de mariadb. Le compte root n'est
> autorisé à se logger que depuis localhost en utilisant le plugin de
> connexion UNIX_SOCKET.
>
> Si tu veux ddésactiver ce comportement, il faut faire setter à NULL le
> champ plugin pour l'utilisateur root :
>
> UPDATE mysql.user SET plugin = NULL WHERE user = 'root' AND plugin =
> 'unix_socket';
> FLUSH PRIVILEGES;
>
> Mais c'est une mauvaise idée, il est logique que seul l'utilisateur root
> local puisse se connecter avec tous les droits sur l'instance.
>
> Julien
>
>


Re: Comportement MariaDB et configuration

2017-07-12 Par sujet Julien Pecqueur
Bonjour,

> J'ai un comportement de MariaDB qui me semble etrange et c'est la raison
> pour laquelle je me tourne vers vous.
> Quand je suis en shell et que je tape mysql, il semblerai que je sois
> directement connecte a MariaDB sans demande de mot de passe ou de quoique
> ce soit !!!
> 
> root@:~# mysql
> Welcome to the MariaDB monitor.  Commands end with ; or \g.
> Your MariaDB connection id is 18
> Server version: 10.1.23-MariaDB-9+deb9u1 Debian 9.0
> 
> Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
> 
> Type 'help;' or '\h' for help. Type '\c' to clear the current input
> statement.
> 
> MariaDB [(none)]>
> 
> 
> Est-ce normal?

Oui c'est le fonctionnement par défaut de mariadb. Le compte root n'est 
autorisé à se logger que depuis localhost en utilisant le plugin de connexion 
UNIX_SOCKET.

Si tu veux ddésactiver ce comportement, il faut faire setter à NULL le champ 
plugin pour l'utilisateur root :

UPDATE mysql.user SET plugin = NULL WHERE user = 'root' AND plugin = 
'unix_socket';
FLUSH PRIVILEGES;

Mais c'est une mauvaise idée, il est logique que seul l'utilisateur root local 
puisse se connecter avec tous les droits sur l'instance.

Julien



Re: Comportement MariaDB et configuration

2017-07-12 Par sujet Alain Rpnpif
Le 12 juillet 2017, Hugues MORIN a écrit :

> Bonjour
> 
> 
> J'ai tente hier d'updater mon dedie de Jessie a Stretch.
> Cela s'est solde par un echec (la machine ne pinguait plus)
> Apres redemarrage en mode rescue, j'ai pu avoir acces au log mais apres 2 a
> 3h de recherche, n'ayant rien trouve j'ai renonce et reinstaller le serveur
> avec Strectch.
> 
> En Jessie, j'utilisais MySQL 5.55 et j'accedais souvent a mes DB en
> utilisant phpmyadmin pour les operations courantes et en ligne de commande
> pour les operations d'archivage, sauvegarde, etc..
> 
> En Stretch je suis passe sur MariaDB.
> Auriez-vous un bon tuto pour la configuration?
> 
> J'ai un comportement de MariaDB qui me semble etrange et c'est la raison
> pour laquelle je me tourne vers vous.
> Quand je suis en shell et que je tape mysql, il semblerai que je sois
> directement connecte a MariaDB sans demande de mot de passe ou de quoique
> ce soit !!!
> 
> root@:~# mysql
> Welcome to the MariaDB monitor.  Commands end with ; or \g.
> Your MariaDB connection id is 18
> Server version: 10.1.23-MariaDB-9+deb9u1 Debian 9.0
> 
> Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
> 
> Type 'help;' or '\h' for help. Type '\c' to clear the current input
> statement.
> 
> MariaDB [(none)]>
> 
> 
> Est-ce normal?

Bonjour,
Je ne répond pas directement à la question mais il est déconseillé de
se connecter en root.

Il est préférable de faire sous un utilisateur normal :
mysql -u root -p
(sans le -p s'il n'y a pas de mot de passe).

En ce qui concerne la question, je dirais que ce serait un problème de
configuration car je n'ai pas ce problème.

-- 
Alain Rpnpif



Re: Comportement MariaDB et configuration

2017-07-12 Par sujet Thierry Bugier Pineau
Bonjour

A propos du comportement étrange, j'ai remarqué cela aussi il y a
plusieurs mois.

De ce que j'ai compris, MariaDB utilise l'authentification PAM. il n'y
a qu'un compte "root" dont le mot de passe correspond au compte root du
système d'exploitation. Si on lance le client MariaDB en tant que root,
on est automatiquement authentifié.

Du coup il faut créer à la main un ou plusieurs comptes utilsiateur
dans MariaDB depuis le client MariaDB.

Un exemple de commande pour créer user avec tous les privilèges sur
toutes les tables de toutes les bases de données. (Ressorti de mémoire,
une vérification dans le manuel de MariaDB ne fera pas de mal).

grant all privileges on *.* to 'user'@'localhost' identified by
'password';

Le mercredi 12 juillet 2017 à 08:33 +0200, Hugues MORIN a écrit :
> Bonjour
> 
> 
> J'ai tente hier d'updater mon dedie de Jessie a Stretch.
> Cela s'est solde par un echec (la machine ne pinguait plus)
> Apres redemarrage en mode rescue, j'ai pu avoir acces au log mais
> apres 2 a 3h de recherche, n'ayant rien trouve j'ai renonce et
> reinstaller le serveur avec Strectch.
> 
> En Jessie, j'utilisais MySQL 5.55 et j'accedais souvent a mes DB en
> utilisant phpmyadmin pour les operations courantes et en ligne de
> commande pour les operations d'archivage, sauvegarde, etc..
> 
> En Stretch je suis passe sur MariaDB.
> Auriez-vous un bon tuto pour la configuration?
> 
> J'ai un comportement de MariaDB qui me semble etrange et c'est la
> raison pour laquelle je me tourne vers vous.
> Quand je suis en shell et que je tape mysql, il semblerai que je sois
> directement connecte a MariaDB sans demande de mot de passe ou de
> quoique ce soit !!!
> 
> root@:~# mysql
> Welcome to the MariaDB monitor.  Commands end with ; or \g.
> Your MariaDB connection id is 18
> Server version: 10.1.23-MariaDB-9+deb9u1 Debian 9.0
> 
> Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
> 
> Type 'help;' or '\h' for help. Type '\c' to clear the current input
> statement.
> 
> MariaDB [(none)]>
> 
> 
> 
> Est-ce normal?
> 
> 
> Cordialement
> Hugues
> 
> 



Re: Comportement MariaDB et configuration

2017-07-12 Par sujet Daniel Caillibaud
Le 12/07/17 à 08:33, Hugues MORIN  a écrit :

HM> Bonjour
HM> 
HM> 
HM> J'ai tente hier d'updater mon dedie de Jessie a Stretch.
HM> Cela s'est solde par un echec (la machine ne pinguait plus)
HM> Apres redemarrage en mode rescue, j'ai pu avoir acces au log mais apres 2 a
HM> 3h de recherche, n'ayant rien trouve j'ai renonce et reinstaller le serveur
HM> avec Strectch.
HM> 
HM> En Jessie, j'utilisais MySQL 5.55 et j'accedais souvent a mes DB en
HM> utilisant phpmyadmin pour les operations courantes et en ligne de commande
HM> pour les operations d'archivage, sauvegarde, etc..
HM> 
HM> En Stretch je suis passe sur MariaDB.
HM> Auriez-vous un bon tuto pour la configuration?
HM> 
HM> J'ai un comportement de MariaDB qui me semble etrange et c'est la raison
HM> pour laquelle je me tourne vers vous.
HM> Quand je suis en shell et que je tape mysql, il semblerai que je sois
HM> directement connecte a MariaDB sans demande de mot de passe ou de quoique
HM> ce soit !!!
HM> 
HM> root@:~# mysql
HM> Welcome to the MariaDB monitor.  Commands end with ; or \g.
HM> Your MariaDB connection id is 18
HM> Server version: 10.1.23-MariaDB-9+deb9u1 Debian 9.0
HM> 
HM> Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
HM> 
HM> Type 'help;' or '\h' for help. Type '\c' to clear the current input
HM> statement.
HM> 
HM> MariaDB [(none)]>
HM> 
HM> 
HM> Est-ce normal?

Ça doit être la configuration par défaut, étrange au premier abord mais pas 
vraiment dangereux
(si tu es root sur la machine locale tu peux de toutes façon tout faire), mais 
ça ne veut pas
dire qu'il y a un pb.

Pour supprimer ce comportement (qui te servira peut-être de plan B si tu foire 
la config des
droits), configure d'abord phpMyAdmin pour pouvoir gérer les droits, l'accès 
pour un user
standard en ligne de commande pouvant tout faire, puis supprimer le user root 
(ou lui coller un
pass).

-- 
Daniel

La seule vraie bête de somme, c'est la mouche tsé-tsé
Pierre Dac