Debian - Mise à jour 6 -> 7 -> 8

J'ai décidé de mettre a jour mon serveur... de la version squeeze vers la version wheezy... et ensuite jessie

Cela semble facile à première vue, mais comme je préfère me méfier, j'ai fait un labo avec un "clone" de mon serveur, et tenter sur ce clone de mettre au point LA procédure...

Lors de ma première tentative, le serveur (de test) n'a JAMAIS redémarrer, ce qui me fait dire que ce n'est pas si facile... j'ai donc compilé ici mes remarques et mes notes sur ma mise à jour (et mes galères aussi).

Préparation de la plateforme

DSpam et amavis

Premier essai, l'upgrade plante à cause de dspam et de amavisd-new (J'ai fait mon malin et installé depuis les sources de sourceforge), après de looonnngues heures de recherche sur comment supprimer un paquet qui a été installer à la main (mais pas bien) et que debian a ensuite pris (mal) sous son aile....

Voilà ce qu'il convient de faire:

vu les soucis avec dspam et amavisd, on stop les service et SURTOUT on le retire du init.d...,

Mais cela ne suffit pas, il faut aussi PURGER les dpkg et les apt cache, je pense que le insserv -r n'est pas nécéssaire (car fait par le purge) mais ca fait toujours bien de le faire...

service dspam stop

dpkg -r dspam
dpkg -P dspam

mv /var/lib/dpkg/info/dspam* /tmp/
dpkg --remove --force-remove-reinstreq dspam
dpkg --purge --force-remove-reinstreq dspam
insserv -r /etc/init.d/dspam
service amavisd stop

dpkg -r amavisd-new
dpkg -P amavisd-new

mv /var/lib/dpkg/info/amavis* /tmp/
dpkg --remove --force-remove-reinstreq amavisd-new
dpkg --purge --force-remove-reinstreq amavisd-new
insserv -r /etc/init.d/amavis

Clean-up de dspam et amavis

Je ne sais pas si c'est encore nécéssaire... mais dans le doute, on le fait:

rm -r /var/log/dspam/
rm -r /var/spool/dspam/data/
rm /etc/init.d/dspam
Remove from /etc/init.d/rcx.d/

Ca m'apprendra a ne pas suivre les paquets de la distribution et a vouloir faire le malin...

Apache

Certains mod d'apache semble ne pas exister dans debian 7, ou du moins il ne passe pas: mod_dav_svn.so, on le désactive directe:

a2dismod dav_svn

Changement de version

Il suffit de remplacement "squeeze" par "wheezy" ou "jessie" dans le(s) fichier(s) suivant(s) :

nano /etc/apt/sources.list

Et de remplacer "6" par "7":

nano /etc/apt/sources.list.d/owncloud.list

Oui, j'utilise aussi owncloud sur ce serveur...

Mise à jour

Et on lance le bouzin:

apt-get update
apt-get dist-upgrade

J'ai choisis de conserver les paramêtres IPv4 et IPV6, MySQL et après un peu de travail (du serveur) premières questions, j'ai choisis là d'importer les nouveaux fichiers de base, il me faudra controler TOUT les paramètres de ces derniers:

apticron.conf: la variable SYSTEM= est remise a zero, rien de bien compliquer.
Re-installer le fichier awstats qui serait manquant dans le /etc/cron.d/
fail2ban.conf: 
jail.conf: là c'est surtout la durée de bantime qui est racourcie
/etc/roundcube/main.inc.php: pas fou

Par contre, j'ai choisis de conserver MES paramêtres pour:

/etc/sudoers: pas question de permettre a n'importe qui de su sans mot de passe...
/etc/phpmyadmin/apache.conf: j'avais juste pas envie de refaire ma config...
/etc/roundcube/debian-db.php: pas fou

Configuration particulière

linux-base : update device IDs : YES
amavisd-new: plus de fichier monolitique, ca tombe bien, j'avais quelques soucis avec amavisd-new...

Un petit reboot et hop... c'est fait (sauf que le kernel est toujours un 2.6, mais pas pour longtemps)

Mise a jour du kernel

Là aussi rien de très compliqué... on check la version (surtout le type de kernel):

cat /proc/version
Linux version 2.6.32-5-amd64 (Debian 2.6.32-48squeeze3) (dannf@debian.org) (gcc version 4.3.5 (Debian 4.3.5-4) ) #1 SMP Fri May 10 08:43:19 UTC 2013

Dans mon cas, il s'agit d'une amd64, donc je selectionne la dernière image amd64:

apt-cache show linux-image-amd64
apt-get install linux-image-amd64

Et hop, c'est fait... (ne pas oublier de rebooter pour tester), ensuite vous pouvez supprimer l'image 2.6 (ou pas, c'est votre choix):

rm /boot/initrd.img-2.6*
rm /boot/System.map-2.6*
rm /boot/config-2.6*
rm /boot/vmlinuz-2.6*

Puis une petite mise à jour de grub:

update-grub

Et on reboot pour controler, si vous vous planter là, ça ne démarrera plus.

N'oubliez pas de mettre votre debian a jour pour le nouveau kernel...

apt-get update
apt-get upgrade

C'est idiot, mais j'avais oublié, du coup plein de truc ne fonctionnaient plus...

Suivit en cas de virtualisation

Si vous êtes en virtual, n'oubliez pas de refaire l'installe des VMWareTools.

Remise des parametres au "carré"

Apticron

/etc/apticron/apticron.conf

SYSTEM="votre.system.tld"

fail2ban

/etc/fail2ban/jail.conf

[DEFAULT]
bantime = 36000
maxretry = 2

[ssh]
maxretry = 2

Etc..

Roundcube

/etc/roundcube/main.inc.php

$rcmail_config['default_host'] = 'localhost';
$rcmail_config['username_domain'] = 'votre-domaine.tld';

[UPDATE]

Roundcube n'est plus maintenu... pour avoir la dernière version, il faut le faire "a la main'...

 

Amavisd-new

Voir la page dédiée...

 Apache2

en passant a jessie, on "reçoit" aussi apache 2.4... c'est cool sauf que:

la config n'est plus la même:

pour chaque site, il faut revoir la configuration des accès:

en configuration 2.2 vous aviez

Order deny,allow
Deny from all
en configuration 2.4 cela devient:
Require all denied

en configuration 2.2 vous aviez

Order allow,deny
Allow from all

en configuration 2.4 cela devient:

Require all granted