Red Hat · 4 min read · Nov 12, 2025

Comment construire des RPM IPA Red Hat Enterprise pour CentOS 5

Comment construire des RPM IPA Red Hat Enterprise pour CentOS 5

FreeIPA existe depuis un certain temps en tant que RHE IPA pour Red Hat Linux et a été ajouté à Fedora. Cependant, comme il s’agit d’un module complémentaire à RHEL, CentOS ne l’a pas encore reconstruit. C’est dommage car FreeIPA est une solution de gestion des informations de sécurité facile à configurer et à gérer. Si, comme moi, vous souhaitez utiliser IPA avec CentOS, ce tutoriel est fait pour vous.

Hypothèses

  • Vous avez installé Centos 5.2 avec au moins l’ensemble de packages minimal (tout décoché lors de l’installation) et que vous l’avez entièrement mis à jour avec les dépôts de CentOS. - J’ai construit ces RPM sur un système 32 bits i386 mais j’imagine que les construire sur x86_64 ou d’autres serait très similaire
  • Vous avez une connaissance de base des commandes Linux (déplacement de fichiers, etc)
  • Vous exécutez ce qui suit en tant que root
  • Red Hat, CentOS et EPEL n’ont pas déplacé tous ces packages vers un endroit nouveau et obscur excitant. Si c’est le cas, vous devrez peut-être faire un peu de recherche sur Google pour les trouver tous.

Télécharger et installer le rpm centos-ds

  1. CentOS et EPEL ont déjà compilé certains des packages nécessaires. Pourquoi reconstruire des packages si quelqu’un d’autre a déjà fait le travail pour vous ? De cette façon, ils seront également mis à jour à l’avenir si des mises à jour sont ajoutées dans les dépôts !
  2. Créez un fichier à /etc/yum.repos.d/CentOS-testing.repo avec le contenu suivant : [testing] name=CentOS-$releasever - Testing baseurl=http://dev.centos.org/centos/$releasever/testing/$basearch/ gpgcheck=1 enabled=1 gpgkey=http://dev.centos.org/centos/RPM-GPG-KEY-CentOS-testing
  3. Exécutez les commandes suivantes pour télécharger et installer certains des RPM existants : rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm yum install centos-ds-base-devel centos-ds centos-ds-admin-console python-psycopg2 rm /etc/yum.repos.d/CentOS-testing.repo yum clean all

Télécharger les packages source depuis RedHat

  1. Exécutez les commandes suivantes pour télécharger les SRPMS nécessaires : mkdir ~/srcbuild; cd ~/srcbuild/ wget -r -l 1 http://ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/RHEIPA/SRPMS/ mv ftp.redhat.com/pub/redhat/linux/enterprise/5Server/en/RHEIPA/SRPMS/*.rpm .
  2. Supprimez les RPM dont nous n’aurons pas besoin - Supprimez les anciennes versions de rpms (ex : s’il y a 3 versions d’ipa, ne gardez que la plus récente)
  • Supprimez également redhat-ds* puisque nous avons déjà installé centos-ds
  • Supprimez python-psycopg2 puisque nous l’avons installé depuis EPEL

Utilisez yum pour obtenir certains packages de développement nécessaires

  1. Exécutez la commande suivante pour télécharger les packages requis : yum install gcc gcc-c++ automake autoconf rpm-build mozldap-devel openssl-devel openldap-devel krb5-devel nss-devel libcap-devel python-devel libtool selinux-policy-devel python-setuptools-devel bison flex ncurses-devel texinfo tetex-latex pam-devel httpd-devel apr-devel apr-util-devel postgresql-devel sqlite-devel

Construire d’abord TurboGears et les packages krb5

  1. Exécutez les commandes suivantes : rpmbuild --rebuild TurboGears*.rpm krb5-server-ldap*.rpm python-kerberos python-tgexpandingformwidget*.rpm mod_nss*.rpm - Il y aura pas mal de sorties dans la console pendant que vous faites cela - ne laissez pas cela vous effrayer. S’il y a une erreur, rpmbuild s’arrêtera et vous informera qu’il manque quelque chose.
  2. Si rpmbuild échoue à construire le package parce qu’il vous manque un package, effectuez une “yum search” pour le package, installez-le et essayez à nouveau la commande ci-dessus.
  3. Lorsque rpmbuild se termine sans erreurs, il affichera “exit 0” à l’écran puis cessera d’afficher des informations
  4. Lorsque rpmbuild est terminé, vous pouvez installer TurboGears avec la commande suivante : yum install /usr/src/redhat/RPMS/*/*.rpm

Construire IPA

  1. Nous allons également construire IPA à part car cela nécessite une petite modification. Pour commencer, exécutez ces commandes : rpm -Uvh ipa-*.src.rpm rm ipa-*.src.rpm cd /usr/src/redhat/SPECS/ mv ipa.spec ipa.spec.save sed -e "s/redhat-ds/centos-ds/g" ipa.spec.save > ipa.spec rpmbuild -bb ipa.spec
  2. S’il y a des erreurs lors de la construction, essayez d’installer les packages manquants avec yum et exécutez à nouveau la commande rpmbuild. Une fois terminé, installez tous les packages que nous avons construits jusqu’à présent avec la commande suivante : yum install /usr/src/redhat/RPMS/*/*.rpm

Construire le reste des rpms

  1. À ce stade, nous sommes enfin prêts à construire le reste des RPM nécessaires au bon fonctionnement d’IPA. Construisez-les avec les commandes suivantes : cd ~/srcbuild/ rpmbuild --rebuild *.rpm
  2. Cela peut échouer plusieurs fois comme les autres fois. Répétez au besoin.

Trouver les rpms

  1. Les RPM finis se trouvent tous dans /usr/src/redhat/RPMS/. Pour obtenir une liste de tous, vous pouvez exécuter la commande suivante : find /usr/src/redhat/|grep "rpm$"
  2. Déplacez ou copiez les RPM quelque part où vous pouvez les trouver. Vous aurez besoin de certains d’entre eux pour les machines clientes IPA et de tous si vous souhaitez installer plusieurs serveurs IPA, donc gardez-les tous.
  3. N’oubliez pas que vous avez téléchargé les centos-ds et d’autres RPM depuis testing et EPEL. Vous devrez les télécharger ou ajouter les dépôts testing et EPEL pour les clients afin qu’ils puissent obtenir tous les packages.
  4. Si vous avez un serveur spacewalk, vous pouvez maintenant rhnpush les RPM dans celui-ci et utiliser yum pour tous les futurs clients et serveurs !

Configurer le serveur et les clients en utilisant la documentation de Red Hat

  1. Je ne vais pas documenter le processus de configuration car cela a déjà été très bien fait par Red Hat. Leur documentation se trouve à http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_IPA/
  2. D’une importance particulière, il y a le Guide d’installation et de déploiement et le Guide de configuration du client
Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.