Ce que ce mot peut faire peur au gens: "DEBIAN"... j'ai découvert le monde unix il y a plus de 15 ans, quand j'étais étudiant avec SLACKWARE... et depuis je regrette parfois de ne pas avoir le temps... depuis quelques mois, je me plonge plus fort dans DEBIAN... et le pire, c'est que jamais je ne suis déçu...
Gerer une DEBIAN, c'est moins facile qu'un Windows, mais c'est tellement plus gratifiant; on se sent comme faisant partie d'une élite... bon c'est aussi avoir de la patience car c'est 80% du temps sur internet pour trouver les réponses, 15% à poser à GOO*LE les bonnes questions, et 5% du temps à les appliquer...
mais c'est tellement Funky comme OS... qu'on lui pardonne d'être "Libre" :D
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).
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...
Clean-up de dspam et amavis
Je ne sais pas si c'est encore nécéssaire... mais dans le doute, on le fait:
Ca m'apprendra a ne pas suivre les paquets de la distribution et a vouloir faire le malin...
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:
Il suffit de remplacement "squeeze" par "wheezy" ou "jessie" dans le(s) fichier(s) suivant(s) :
Et de remplacer "6" par "7":
Oui, j'utilise aussi owncloud sur ce serveur...
Et on lance le bouzin:
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:
Par contre, j'ai choisis de conserver MES paramêtres pour:
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)
Là aussi rien de très compliqué... on check la version (surtout le type de kernel):
Dans mon cas, il s'agit d'une amd64, donc je selectionne la dernière 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):
Puis une petite mise à jour de 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...
C'est idiot, mais j'avais oublié, du coup plein de truc ne fonctionnaient plus...
Si vous êtes en virtual, n'oubliez pas de refaire l'installe des VMWareTools.
/etc/apticron/apticron.conf
/etc/fail2ban/jail.conf
Etc..
/etc/roundcube/main.inc.php
Roundcube n'est plus maintenu... pour avoir la dernière version, il faut le faire "a la main'...
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
en configuration 2.2 vous aviez
en configuration 2.4 cela devient:
Souvent, quand on a un environnement windows, on dispose aussi d'une solide base utilisateurs... quand on déploit des serveurs Debian... ben ils sont souvent authetifier "en local"... ce qui peut devenir insuportable quand vous avez beaucoup d'utilisateurs a synchronisé entre votre base debian "local" et vos domaines Controllers...
Heureusement, Linux n'est pas raciste et peut authentifier vos utilisateurs via vos domain controllers...
Je pars du principe que votre serveur est installer avec les dns et une IP fixe... sinon
Sur votre serveur DNS windows, ajoutez un 'A Record' ayant le même nom de serveur (ex: debian) et son IP.
N'oubliez pas de vérifier votre résolution réseaux
un petit ping vers vos DC sera aussi un bon moyen de controler votre configuration et la bonne résolution des dns externes.
Vérifiez aussi le réverse dns, vous pourriez avoir des surprises...
N'allez surtout pas plus loin si vous avez le moindre problème...
Il vaut mieux que tout vos serveurs soit à la même heure... Dans la pratique, c'est même un règles élémentaires pour domaine.
Comme Kerberos est un protocol sécurisé sur une base de ticket,le temps (heure) risque de vous poser pas mal de problème de synchro voir de vous refuser l'autentification si vos serveurs ne sont pas à la même heure...
Modifiez le fichier en pécisant le nom complet de votre(vos) time server(s)... Et relancez le service ntpd, puis testez vos serveurs
Vous devriez avoir vos serveurs avec des informations (sinon vous avez un probleme de dns ou de serveur cible).
Là, nous entrons dans le vif du sujet...
Si d'aventures, debconf devait vous demandez des informations, acceptez les informations par défaut, nous alons quand même tout vérifier "à la main"...
Par sécurité, nous faisons quand même une copie des fichiers de base:
Nous stoppons maintenant les services que nous allons modifier:
Nous allons maintenant configurer notre domaine dans le krb5.conf:
# The following libdefaults parameters are only for Heimdal Kerberos.
v4_instance_resolve = false
v4_name_convert = {
host = {
rcmd = host
ftp = ftp
}
plain = {
something = something-else
}
}
fcc-mit-ticketflags = true
dns_lookup_realm = false
dns_lookup_kdc = false
[realms]
EXAMPLE.LOCAL = {
kdc = domaincontroller1.example.local
kdc = server2.example.local
admin_server = domaincontroller1.example.local
default_domain = example.local
}
[domain_realm]
.example.local = EXAMPLE.LOCAL
example.local = EXAMPLE.LOCAL
[login]
krb4_convert = true
krb4_get_tickets = false
Tout ce qui est en rouge est à changer... par vos valeurs....
après cette opération, vous devriez vous loguer avec vos données 'domaine'...
Si vous désirez logguer kerberos (pourquoi pas en fait...) ajoutez cette section:
N'oubliez surtout pas de créer le dossier 'kerberos' dans votre '/var/log'
Dans ce cas, pensez aussi a créer une entrée 'logrotate' pour vos kerberos log... Sinon, votre log risque de devenir indigeste rapidement:
Voici le contenu de ce fichier (pour un archivage par jour et une conservation de 7 jours):
Le plus simple dans ce cas sera un reboot... (surtout avec toutes les configs qui ont changer) mais en théorie ce n'est pas nécéssaire...
Winbind est le service qui se chargera de faire la transition entre le local et votre domain Active Directory (via kerberos)
Votre configuration complete; il suffit de relancer les services:
Cet outil est utilisé par le système pour faire la recherche des utilisateurs et des groupes dans l'Active Directory, de base l'outil est bien plus que cela, mais nous nous contenterons de ce type d'informations pour commencer...
ajouter "winbind" aux bons endroits:
PAM : Pluggable Authentication Module
Ce module permet de changer les informations de authentification... Les fichiers de configuration se trouvent dans /etc/pam.d/
# nano /etc/pam.d/common-account
# nano /etc/pam.d/common-auth
# nano /etc/pam.d/common-session
il vaut toujour mieux acquerir un ticket kerberos, utiliser un compte domain admin comme user_admin, vous devrez aussi fournir le mot de passe de ce compte...
Bien entendu vérifiez votre ticket...
Si tout est en ordre, enfin la commande ultime...
Petite mise en garde si dans vos dépots débian, vous avez une référence a un dépot "debian-multimedia.org", il est urgent de la supprimé, en effet le domaine a été racheter par un zozo en ukraine...
cette affaire nous rappel de bien gérer les clés de cryptographie des dépots...
plus d'infos sur le site linuxfr.org
bref, vérifiez vos /etc/apt/sources.list et /etc/apt/sources.d au cas où vous utilisez ce dépot non officiel...
Voici quelques commandes que l'on peut utiliser après intégration d'un domaine :
Si vous installez souvent des Débians via network (et que vous avez un solide firewall), il vous faut installer débian avec une IP fixe... c'est simple sur le papier... un peu moins en réalité... quoi que...
dans le menu graphique... Choissisez 'Install'... et ne faites pas [ENTER] mais [TAB]...
Et là, ajoutez en fin de ligne (juste après le '... quiet') la commande (attention vous êtes en querty):
Vous pouvez valider la commande complete avec [ENTER]; le wizard d'installation normal se lancera... mais vous demandera les parametres pour le réseau (ip, masque, gateway, dns ,etc..).
pour des raisons de test, j'ai du installer un OTRS sous DEBIAN... je me suis inspiré du tutorial fournis sur le wiki d'OTRS, mais celui-ci concernait Postgresql... que je n'apprécie que moyen moyen...
voici donc ma version:
Installation des Packages
Création des comptes systeme
Installation des fichiers OTRS
Cherchez la derniere version stable...
Ces instructions vont:
Installation de la base de données
Deux choix s'offrent a vous:
Soit utiliser phpmyadmin (que l'on a installé en premier) c'est simple et intuitif...
Soit le faire a la main. Si vous optez pour la seconde techniquie, voici les commandes...
mysql va vous demander votre mot de passe root (sql) que vous avez donner lors de l'installation. On the psql command line
Dans le shell
Vérifier la configuration OTRS pour la base de données
nano Kernel/Config.pm
placer votre mot de passe otrs...
Par défaut, OTRS est prévu pour MySQL... Donc vous n'avez plus rien a faire...juste a parcourir la config pour vérifier les bon DB connecteurs...
Configurons le startup apache perl:
Vérifier ces lignes:
Installation des Cron jobs
Allez sur la page de votre nouveau systeme pour la configuration 'en ligne'
ouvrez un browser et allez sur http://localhost/otrs/index.pl (ou tout autre url qui mène a ce serveur)
Log in with root@localhost, password root
Ayant un nouveau PC, j'ai décidé de me passer de Windows et de faire le pas vers Debian...
Etant un peu frileux quand même, j'ai finalement opté pour un dual boot Windows 7 Pro et Debian 6... pour voir
Comme on peut s'y attendre aucun problème notable avec Windows, Debian, au bout de 4 jours, commence à fonctionner... je vais donc largement étoffé ma section Debian, car j'ai rencontré pas mal de problèmes (logique en fait)
Voici l'histoire, d'une installation réussie...
On commence avec la carte graphique... NVIDIA... mwouais, c'est pas gagner... GNOME est moche sur un 22" en 1024/768... oui, il ne reconnait pas la carte... logique en fait, puisque NVIDIA fournis Drivers et sources code de ceux-ci mais sous licence propriétaire, ce qui fait que DEBIAN n'intègre rien dans ses dépots "de base"...
il y a beaucoup de méthode qui circulent sur le net... j'en ai essayer pas mal, avant de me fier (avec succès) au constructeur...
Avec succès c'est un bien grand mot... voici mon histoire...
Télécharger sur le site constructeur (NVIDIA) le drivers qui va bien... dans mon cas j'ai choisi les options suivantes:
j'ai donc ensuite accepter les conditions et télécharger le fichier suivant:
Une fois le téléchargement complet, j'ai invoqué un TTY (CTRL-ALT-F1), je m'y suis loggué en tant que root.
J'ai stoppé le serveur X:
et j'ai lancé l'execution de l'installation:
Après les menus et agrement d'usage, je suis tombé sur un message hermétique
Abort now?
Si on ignore l'erreur, cela ne marche pas... j'ai pas mal galérer pour comprendre... que c'était completement idiot, voici les commandes a faire:
En gros, cela change le lien symbolique gcc de la version 4.4 (actuelle) vers la version 4.3 (ln...) puis cela execute l'installation des drivers, et enfin on restore le lien symbolique gcc vers la version actuelle 4.4
a la fin de l'installation un startx permet de controler la bonne réalisation... c'est con... mais j'y ai passé la soirée...
Petit aide mémoire pour la commande mount dans tous les sens...surtout entre serveurs
temporary mount:
ou si vous disposé d'un fichier de connection.
permanent mount:
etitez /etc/fstab, et ajouter cette ligne:
credentials file:
si vous placez le ficher .smbcredentials dans un home dir, seulement cet utilisateur (eventuellement le root) peut monter ce disque "automatique"
exemple de /root/.smbcredentials
n'oubliez pas de chmoder le fichier pour qu'il soit lisible seulement par le root...
mounting server/remote/path on /mnt/localPath/
s'assurer que "user" peut faire du ssh (voir le fichier sshd.ini) et qu'il puisse lire le dossier a monter, sinon ca marche pas
n'oubliez pas les ':' entre le host et le "remote directory"
-> ne remplissez pas de "passphrase" a moins que vous ne désirez entrer cette "passphrase" a chaque mount, c'est bien pour la sécurité d'en mettre une, moins pratique pour un mount automatique... A vous de voir.
Installer la clé sur le serveur distant (pour pouvoir s'autentifier directement)
il faut fournir le mot de passe de l'utilisateur "cible" sur le serveur "cible"
On the Server
checker la clé générée
vous devez trouver un tas de chiffres et de lettres (la clé) avec à la fin de la ligne: remote_user@remote_client (usually root@remote_client_ip_or_name).
vous pouvez aussi controller toutes les "clés" déjà ajoutées
On the Client
check ssh
Cela doit ouvrir un shell ssh SANS mot de passe
edit the fstab pour automatiser le mount
petit pense bête pour l'installation d'OpenERP 7
sur une installation clean (sans serveur apache ni rien...)
pré-requis python:
pré-requis postgresql:
recupération et installation du dernier build debian:
Comme chacun le sais, Debian c'est pour les serveurs...
Donc si vous devez déployer des distro linux sur des machines virtuelles, il est mieux d'avoir les VMWare Tools installer (pour profité des accélérations, de la bonne surveillance de votre serveur par VSphere et aussi de la bonne gestion de la souris, mais bon ça, sur un serveur CLI on s'en fout un peu).
[UPDATE]
il y a plus facile que d'installer les vmtools, il existe un paquet open-vm-tools qui fait le café en 2 lignes de commande.
Si vous voulez l'intégré aux updates du kernel et ne pas vous soucier des version gnu/kernel, n'hésitez pas, choisisez la version dkms:
Si votre VM est équipé d'un environement "desktop"...
[/UPDATE]
Si vous préférez la version barbue :
Pour pouvoir installer correctement les VMware Tools, certains packages sont nécessaires (notamment les entêtes du noyau Linux et un compilateur C avec la bonne version).
On commence par vérifier avec quel version de compilateur C votre noyau a été compilé et la version de votre Linux :
Maintenant, on installe les packages nécessaires au bon fonctionnement de VMware Tools :
La commande uname -r demande de fournir seulement le kernel-release, cette commande sera TOUJOURS conforme a votre système.
Montez le fichier ISO des VMWare Tools (via la commande classique, Guest -> Install/Upgrade VMWare Tools
Et Voila le travail...