Dump des bases MySQL sans Mysql... ?

Bonsoir,

J’ai un serveur Debian planté à cause d’une faille de sécurité RoundCube…

Résultat des courses : plus accès au http (port 80), ni à Mysql (problème de mot de passe root erroné etc…)

Le but de ma question n’est pas de redémarrer ce serveur car je ne m’en sent pas capable :arrow_right: je voudrais le re-installer complètement… par contre, j’y ai toujours accès en ssh et en ftp.

La question est :
Dans un premier temps, comment puis-je récupérer mes bases de donnée Mysql “à la main” du coup, sachant que le service mysql ne peut plus être lancé ?.. pour le reste des infos importantes, j’ai tout récupéré en ftp… sauf mes mails bien sur car sans http ni base de donnée :confused: impossible d’accéder à roundcube !

A moins qu’il y a d’autres idées pour “dé-planter” la machine ?.. je suis plus que novice et ne sais absolument pas comment m’y prendre…
Pour info, je ne connais que quelques commandes de base, genre cd, ls, vi, rm chown, chmod… pour le reste, c’est du chinois actuellement !

[Pour info car pas trouvé] Je suis sur Bordeaux : il n’y aurait pas par hasard une asso “Linux pour les grosses buses” par hasard ?
Doit bien y avoir un secret pour apprendre à parler le pingouin sans faire polytechnique non ? :smiley:

Voili voilou …

:smt006

Une technique simple consiste à faire une archive du répertoire correspondant de /var/lib/mysql/nom_de_ta_base
J’ai déjà fait cela et ça marche bien surtout sur tu repars sur une version identique.
Ensuite, tu peux réinstaller mysql, ça conserve les bases existantes. Je crois avoir mis dans T&A la méthode pour réinitialiser le mot de passe de root dans mysql: http://forum.debian-fr.org/viewtopic.php?f=3&t=13727, tu peux après retravailler sur ta base.

Question peut être idiote, mais comment fait-on une archive du répertoire correspondant de /var/lib/mysql/nom_de_ma_base en ligne de commande ?

Ensuite, je procède comment pour re-installer mysql ? (quelle commande ?)

Autre question :

J’ai redémarré le serveur pour faire des recherches/tests :
Apache ne semble pas lancé :

quand je tape /etc/init.d/apache2 start Starting web server (apache2)...warning: DocumentRoot [/var/ftp/ (.../...) /publichtml] does not exist [Fri Dec 11 12:24:16 2009] [warn] NameVirtualHost *:0 has no VirtualHosts failed!

J’ai vérifié, en effet, ce répertoire avait été supprimé…

Quoi faire pour relancer Apache2 ? des idées ?

:smt006

[quote=“medline2c”]Question peut être idiote, mais comment fait-on une archive du répertoire correspondant de /var/lib/mysql/nom_de_ma_base en ligne de commande ?

Ensuite, je procède comment pour re-installer mysql ? (quelle commande ?)

Autre question :

J’ai redémarré le serveur pour faire des recherches/tests :
Apache ne semble pas lancé :

quand je tape /etc/init.d/apache2 start Starting web server (apache2)...warning: DocumentRoot [/var/ftp/ (.../...) /publichtml] does not exist [Fri Dec 11 12:24:16 2009] [warn] NameVirtualHost *:0 has no VirtualHosts failed!

J’ai vérifié, en effet, ce répertoire avait été supprimé…

Quoi faire pour relancer Apache2 ? des idées ?

:smt006[/quote]

Demande à synaptic de te réinstaller le paquet de mysql et de apache2 (ça devrait résoudre tes problèmes).

tar czf /root/basededonnees.tgz /var/lib/mysql/basededonnees

apt-get install --reinstall mysql-server apache2

Ok,

J’ai fais des archives des bases à conserver,

J’ai reinstallé mysql et apache 2

Lorsque je pointe vers un fichier quelconque du serveur '.html, .php ou autre), le serveur n’interpête pas la page mais l’envoie => j’ai une fenêtre “enregistrer sous…” ou “ouvrir avec…” au lieu de voir ma page…

J’ai redémarré le serveur entier, rien changé

oups… des idées ?

Installation de php5 :

Activation du module php5 :

Suivit du redémarrage d’apache :

Bon,

Après moult manips (encore merci pour votre aide et vos suggestions), j’ai réussi à coup de “aptitude remove” et “aptitude install” à relancer et accéder à mon FTP, à lancer httpd, mysql et phpmyadmin…

J’ai du réussi à faire des dumps de mes bases mysql (YES !!)

Je suis en train de copier sur un gros disque dur les données à sauvegarder…

En résumé : la manip de fran.b a été efficace i[/i] pour mysql. :wink:

Je vous tiens informé au fur et à mesure des manœuvres… encore merci déjà !

=> :blush: question importante par contre :
Etant donné que tous mes soucis viennent d’un soucis de piratage de mon serveur, comment peut-on faire pour être certain d’être en sécurité (j’entends par là : comment fait-on pour être toujours à jour des mises à jours de sécurité ?)… ?
Quels sont les conseils “de base” à éviter pour se faire pirater ? un lien là dessus (accessible aux pingouineaux) ?

:wink:

Se faire pirater n’est pas très grave si on est immédiatement au courant et si on sait ce qui a été fait sur la machine. Il est très difficile de faire un serveur Web en béton surtout si des parties du code ne sont pas de toi. Il suffit de voir les failles récurrentes de Jomla par exemple. Une bonne idée consiste donc

  • à avoir des backups du système complet
  • à avoir un système de surveillance vérifiant l’intégrité de ta machine afin de voir une modification éventuelle
  • à recevoir chaque jour des logs
  • à peaufiner ton parefeu de toute façon

Et les outils ou méthodes à utiliser son complexes ou accessibles aux néophytes ?

En fait, ça dépend des outils.
par exemple:
fail2ban => utilitaire pour bannir les ip qui ratent un certain nombre de fois leur authentiication => on l’installe, le lance, et il est pret
iptables => parefeu => installé et lancé de base, mais très dur à configurer. ( j’utilise une alternative: ufw)
portsentry => bannit les ip qui tentent de scanner les ports => installation et prêt

va voir http://forum.debian-fr.org/viewtopic.php?f=3&t=24068&start=50

Comme j’ai dit que je vous tiendrai au courant…

J’ai re-installé une nouevlle Debian toute’neuv… par contre, avant d’essayer de remonter mes bases de données, j’essaye de remettre le système en RAID1 comme précédemment… mais je coince sur un truc :

Dans la procédure trouvée à cette adresse :
http://www.linuxpedia.fr/doku.php/expert/systeme_conversion_raid1, l’auteur donne à un endroit :
"On monte les volumes raid :

mount -t ext3 /dev/md0 /mnt/md0

Préciser le système de fichier n’est pas toujours indispensable, faites le si “mount” renvoie une erreur."

Pour mes deux disques sda1 et sda2 : la première commande mount -t ext3 /dev/md0 /mnt/md0 s’est bien passé, par contre, la seconde :

mount /dev/md1 /mnt/md1 renvoie :

et là, rien à faire : j’ai essayé

mount -t ext3 /dev/md1 /mnt/md1
mount -t auto /dev/md1 /mnt/md1
mount -t vfat /dev/md1 /mnt/md1
mount -t autofs /dev/md1 /mnt/md1
[/code] rien n'y fait, j'ai toujours :
[code]wrong fs type .../...[/code]

Tout ce que je sais, c'est que lors de l'installation de la débian , j'ai mis en type de système de fichiers "LVM" me semble-t-il.

D'ailleurs, quand je fais [code]fdisk -l
[/code]j'obtiens :[code]
Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x0003a9ad
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1          31      248976   83  Linux
/dev/sda2              32       19457   156039345   8e  Linux LVM

Sauriez-vous quel type dois-je mettre après le “mount -t…?” ?..

Par avance merci… :blush:
= pas simple tout ça…