====== Master RHEL 5.x ====== Documentation de création d'un serveur GNU/Linux sous Red Hat Enterprise Linux en version 5.x. La version 5.3 a été utilisée pour cet opus et sur une machine virtuelle sous VMware ESX 3.5 et ESXi 4.1. ====== Ce qui change par rapport à l'ancien template ====== Dans l'ancien template (pour VMware ESX 3.5), le déploiement était basé sur Firstboot. C'est l'interface graphique Red Hat lancée au démarrage qui permet d'accéder à différents outils de configuration post installation. L'adresse IP du template était fixe et un script post firstboot modifiait l'adresse IP qu'on avait choisit dans la configuration de plusieurs services comme Apache, Webmin, Monit ou VNC. A partir de VMware ESXi 4.x, le déploiement de template GNU/Linux peut être facilement personnalisé directement dans VMware. Le template d'aujourd'hui est donc beaucoup plus simple à créer, à modifier et à mettre à jour. Par exemple, pour mettre à jour les paquets du système (RHN), on convertit le template en machine virtuelle et on l'allume sans se poser de question sur des éventuelles adresses du fait du DHCP. A priori, un grand bon en terme de facilité d'utilisation est arrivé avec ce nouveau template pour son utilisation au jour le jour. ====== Création machine virtuelle ====== Création de la machine virtuelle en choisissant la possibilité de personnalisation ("Custom") et entrer les valeurs suivantes. * Mémoire : 512 Mo. * vCPU : 2. * Network adapter flexible pour i386 et e1000 pour x64. * SCSI LSI Logic. * Disque dur stocké dans la machine virtuelle de 12Go. * Le disque n'est pas en indépendant pour qu'il puisse être compris dans un VCB. ====== Installation Red Hat 5.3 avec anaconda ====== Accueil DVD : Enter pour booter. Passer la vérification du CD si l'image iso a déjà bénéficiée d'une vérification md5. Cette vérification prouve que le téléchargement s'est bien déroulée et qu'on dispose de la copie exacte du fichier sans morceaux perdu. Ceci arrive plus souvent qu'on ne le croit. Il faut absolument vérifier les iso des systèmes avant des les installer. Anaconda est le gestionnaire graphique d'installation. {{:installation_rhel5:install1.png|}} {{:installation_rhel5:install2.png|}} {{:installation_rhel5:install3.png|}} {{:installation_rhel5:install4.png|}} {{:installation_rhel5:install5.png|}} Créer une nouvelle partition en tant que physical volume (LVM). {{:installation_rhel5:install6.png|}} Cf. documentation Decoupage_Disques dans les Fonctionnalités Linux pour connaître les tailles et les volumes logiques à créer. {{:installation_rhel5:install7.png|}} {{:installation_rhel5:install8.png|}} {{:installation_rhel5:install9.png|}} Les serveurs sont en DHCP au niveau IP avec possibilité ipv4 ou ipv6. {{:installation_rhel5:install10.png|}} {{:installation_rhel5:install11.png|}} {{:installation_rhel5:install12.png|}} Essayer de choisir le moins de paquetages possibles pour la bonne et simple raison que le jour où on en a besoin en une commande l'outil désiré sera installé. Il n'est donc pas nécessaire d'installer un outil partout si on s'en sert uniquement sur une seule machine. {{:installation_rhel5:install13.png|}} {{:installation_rhel5:install14.png|}} {{:installation_rhel5:install15.png|}} Enlever le DVD et redémarrer. On accède au firstboot, dernier assistant graphique avant de terminer l'installation. {{:installation_rhel5:install16.png|}} {{:installation_rhel5:install17.png|}} {{:installation_rhel5:install18.png|}} {{:installation_rhel5:install19.png|}} {{:installation_rhel5:install20.png|}} {{:installation_rhel5:install21.png|}} {{:installation_rhel5:install22.png|}} {{:installation_rhel5:install23.png|}} {{:installation_rhel5:install24.png|}} {{:installation_rhel5:install25.png|}} {{:installation_rhel5:install26.png|}} {{:installation_rhel5:install27.png|}} {{:installation_rhel5:install28.png|}} {{:installation_rhel5:install29.png|}} {{:installation_rhel5:install30.png|}} {{:installation_rhel5:install31.png|}} Redémarrer et faire les mises à jour avec l'outil graphique ou dans un terminal en root avec yum update. ====== VMware Tools ====== Clique droit sur la vm dans le VMware Infrastructure Client et Install/Upgrade VMware Tools. Cela monte un CD-ROM avec les VMware tools pour le système utilisé. Pour le système i386, c'est plus simple, il suffit d'installer le RPM. rpm -ivh VMwareTools......i386.rpm Lancer ensuite le script de configuration. vmware-config-tools.pl Répondre 3 pour 1024x768 et valider. Redémarrer par ''reboot''. Pour la version 64 bits. cp /media/VMwareTools/VMwareTools......tar.gz /tmp cd /tmp tar xzvf VmwareTools......tar.gz cd vmware-tools-distrib ./vmware-install.pl Répondre par enter à toutes les questions. Il faut laisser les options par défaut car elles sont bonnes. Finir par un reboot. ====== Outils à configurer ====== ===== IP et DNS ===== Pour certains services comme Tina, il faut avoir une adresse IP et un nom DNS déclaré. Si ce n'est pas le cas, le service Tina ne démarre pas. Édition du fichier ''/etc/sysconfig/network-scripts/ifcfg-eth0''. DEVICE=eth0 BOOTPROTO=none IPADDR=<@IP> NETMASK=255.255.0.0 HWADDR=00:50:56:85:53:F0 # Supprimer cette ligne sous VMware ESX 3.5 et inférieur, sinon problème car changement d'adresse MAC lors du déploiement (plus d'actualité avec vSphere 4.1, il faut la laisser) ONBOOT=yes TYPE=Ethernet USERCTL=no IPV6INIT=no PEERDNS=yes GATEWAY=<@IP Gateway> Édition du fichier ''/etc/sysconfig/network''. NETWORKING=yes HOSTNAME=. Édition du fichier ''/etc/hosts''. @IP . 127.0.0.1 localhost.localdomain localhost ===== Wget ===== Configurer le ''/etc/wgetrc'' des systèmes avec le compte dédié au téléchargement de paquets. http_proxy = http://:@.:/ ===== Configuration proxy et exclusion pour le gestionnaire de paquets ===== Ajouter le proxy dans le fichier ''/etc/sysconfig/rhn/up2date'' suivant. Ceci configure le proxy pour le client Red Hat Network et uniquement ce dépôt. Si on utilise un autre dépôt yum, il faut faire en sorte que le client yum sache utiliser le proxy (pour cela se reporter un peu plus loin pour la configuration de ''/etc/yum.conf''). enableProxyAuth[comment]=To use an authenticated proxy or not enableProxyAuth=0 networkRetries[comment]=Number of attempts to make at network connections before giving up networkRetries=5 hostedWhitelist[comment]=RHN Hosted URL's hostedWhitelist= enableProxy[comment]=Use a HTTP Proxy enableProxy=1 serverURL[comment]=Remote server URL serverURL=https://xmlrpc.rhn.redhat.com/XMLRPC proxyPassword[comment]=The password to use for an authenticated proxy proxyPassword= proxyUser[comment]=The username for an authenticated proxy proxyUser=. disallowConfChanges[comment]=Config options that can not be overwritten by a config update action disallowConfChanges=noReboot;sslCACert;useNoSSLForPackages;noSSLServerURL;serverURL;disallowConfChanges; sslCACert[comment]=The CA cert used to verify the ssl server sslCACert=/usr/share/rhn/RHNS-CA-CERT debug[comment]=Whether or not debugging is enabled debug=0 httpProxy[comment]=HTTP proxy in host:port format, e.g. squid.redhat.com:3128 httpProxy=.: La configuration du proxy pour yum et les autres dépôts du système se situe dans ''/etc/yum.conf''. Ajouter les lignes suivantes. proxy=http://.:/ proxy_username= proxy_password= exclude=kernel* L'exclusion du kernel permet de ne pas installer le kernel par défaut. L'installation des mises à jour par l'interface web RHN ne peut donc installer les kernels. Pour ajouter le dépôt epel cf. [[:gestionnaire_paquets_gnu_linux|Gestionnaire paquets GNU/Linux]]. ===== Mails root et relai de messagerie ===== Mettre sendmail au démarrage du système. chkconfig sendmail on Configurer le fichier ''/etc/mail/sendmail.cf'' pour relayer les mails vers le serveur .. Modifier la ligne avec DS de cette manière. DS. NE PAS MODIFIER le fichier ''/etc/aliases'' pour le compte root. Ainsi les mails root ne seront pas redirigés vers la boîte de supervision @. C'est ce qu'on veut. Laisser en commentaire comme c'est par défaut. # Person who should get root's mail #root: marc ===== Logwatch ===== Cf. [[Logwatch]]. ===== Charset du système ===== ==== Charset en ISO ==== Modifier le fichier ''/etc/sysconfig/i18n'' avec les valeurs suivantes. LANG="fr_FR" SUPPORTED="en_US.UTF-8:en_US:en:fr_FR.UTF-8:fr_FR:fr:fr_FR.ISO-8859-1:fr_FR.ISO-8859-15" SYSFONT="latarcyrheb-sun16" ==== Charset en UTF8 ==== Modifier le fichier ''/etc/sysconfig/i18n'' avec les valeurs suivantes. LANG="fr_FR.UTF-8" SYSFONT="latarcyrheb-sun16" Ce fichier sert à passer le système en ISO ou UTF-8. Le mieux est de passer les connexions putty en utilisant UTF-8 et de laisser le serveur uniquement en UTF-8. C'est mieux pour l'avenir car c'est l'UTF-8 l'avenir et non l'ISO. Par défaut c'est la configuration UTF-8 qui est configuré, il n'y a rien à toucher. ===== Alias de commandes usuelles ===== Ajouter les alias dans /etc/bashrc pour qu'ils soient pris en compte pour tout les comptes du système. alias vi='vim' alias ll='ls -l' alias l='ls' ===== Configuration XDMCP ===== Appliquer la configuration xdmcp (X Display Manager Control Protocol) à Gnome. /etc/gdm/custom.conf [xdmcp] Enable=true [security] AllowRemoteRoot=true ''gdm-restart'' pour redémarrer Gnome. Avec un serveur X sous Windows (Xming) ou encore mieux GNU/Linux, on peut prendre l'affichage à distance sans utiliser VNC. ===== Configurer son poste pour XDMCP ===== Pour lancer l'interface tina, ou un outil de configuration graphique Red Hat (system-config-*) de la machine Linux via putty en SSH, il faut utiliser un serveur X sous Windows comme Xming. Installer Xming en le téléchargeant sur le net. Le lancer : il sera dans la barre des tâches. Dans la configuration putty, il faut activer le forwarding X11 et sauvegarder la configuration associée à chaque hôte. Se connecter en SSH sur le serveur, exécuter les commandes de lancement des outils graphiques et l'outil s'affichera sur votre poste Windows. Ce principe est également valable pour un système client Linux. Ceci est très pratique à l'utilisation et remplace aisément VNC sur les serveurs. ===== VNC ===== Pas de VNC d'installé sur les templates car on peut prendre la console du système via le VMware Infrastructure Client, et via XDMCP avec un serveur X sur son poste. ===== Installation d'outils divers intéressant ===== Installer lsscsi yum install lssci ===== Enlever les services inutiles du démarrage ===== Utiliser la commande chkconfig pour enlever les processus inutiles du démarrage. Lister les services qui sont démarrés. /sbin/service –status-all Lister les services au démarrage. chkconfig --list | grep marche * Description des services : http://magazine.redhat.com/2007/03/09/understanding-your-red-hat-enterprise-linux-daemons/ Pour enlever le service du démarrage. chkconfig nomservice off (on pour le remettre) On peut spécifier les runlevels avec l'option ''--level''. Liste des services enlevés du démarrage. apmd (invoque la gestion d'énergie avancée (Advanced Power Management = APM) du BIOS) arptables_jf (control which ARP datagrams are dropped) autofs (Montage automatique des disques et partitions) bluetooth and hidd (Bluetooth Human Interface Device Daemon. It provides keyboard, mouse, and track-ball device support over Bluetooth) cups (impression) iptables (pare-feu) lm_sensors (sonde temperature) mdmonitor (software raid)) readahead_later (Lire d'avance une ou plusieurs pages en mémoire cache : accélérer le démarrage) readahead_early (idem précédent) smartd (gestion des disques durs) sendmail (serveur mail) hplip (HPLIP works CUPS by providing a backend to connect to HP devices for printing or scanning.) pscd (This is the PC/SC Smart Card Daemon. pcscd is the daemon for pcsc-lite (middleware for accessing smart cards) and the (java-based) MuscleCard framework) ===== NTP ===== Pour la documentation de paramétrage voir [[:ntp_date|NTP / date]]. ===== Tina ===== Se reporter à la documentation prévue à cet effet pour l'installation. Pour la documentation de paramétrage voir [[:tina|]]. ===== Altiris ===== Installer l'agent Altiris. Récupérer l'agent pour la version i386 et x86_64 du serveur srv-ads et copier le logiciel sur le serveur. Lancer l'installation. sh altiris-adlagent-2.6-65.i386.bin Au démarrage suivant, il sera automatiquement installé. Pour le démarer tout de suite, exécuter le script de lancement. /etc/init.d/adlagent start ===== SNMP ===== Se reporter à la documentation prévue à cet effet [[:snmp_mrtg|]]. ===== Clé SSH ===== Ajout de la clé RSA publique du serveur d'infrastructure sur le template de façon à pouvoir se connecter en SSH en provenance de ce serveur vers n’importe quel système GNU/Linux sans demande de mot de passe. Il faut copier le contenu du fichier ''/root/.ssh/id_rsa.pub'' dans un fichier nommé ''/root/.ssh/authorized_keys'' sur le serveur Linux Template. Pour faire cela, connecté sur le serveur d'infrastructure entrer la commande suivante. scp /root/.ssh/id_rsa.pub @IP_DE_LA_MACHINE:/root/.ssh/authorized_keys Directement après on peut se connecter sans mot de passe. Cette manipulation offre la possibilité de créer des scripts qui se connectent en SSH sur les serveurs GNU/Linux pour y exécuter des actions. Cela est très pratique. ===== Anti-virus ===== Pas de clamav d'installé car les serveurs qui ont besoin d'un antivirus, on installe l'agent Server Protect for Linux. Ceci dépend du nombre de licence dont nous disposons. Syslog La configuration de syslog afin qu'il envoi ces logs au serveurs syslog n'est pas configurée. Ce n'est pas le cas car le serveur syslog va être migré et un changement d'IP interviendra peut-être. Il suffit d'ajouter une ligne dans le fichier de configuration, cf. [[:syslog|]] . ===== Comparaisons paquets ===== Comparer les paquetages entre la version 32 et 64 bits de façon à ce qu'ils aient les mêmes paquets d'installés. Supprimer notamment les paquets suivants qui ne servent à rien. pcmciautils vnc-server Il faut aussi supprimer le paquetage vino si il est présent avec un ''rpm -e vino''. Ce service répond au même besoin que VNC mais il est beaucoup moins stable puisqu'on a eu plusieurs fois des blocages à 100% du CPU. ===== Samba ===== Modifier le fichier de configuration de SaMBa situé dans /etc/samba/smb.conf. Modifier la valeur du workgroup. workgroup = Ainsi, lors d'un déploiement, toutes les VM ont le même groupe de travail. ===== Mise à jour sécurité automatique ===== Se reporter à la documentation [[Mise à jour sécurité automatique]]. ===== Scripts supplémentaires ===== Par convention, tous les scripts sont placés dans ''/opt/scripts'' au même endroit que le script de mise à jour automatique. Les logs de ces scripts sont tous positionnés dans ''/opt/scripts/log''. Toujours penser aux quatre choses suivantes * Créer proprement le script et le positionner dans ''/opt/scripts''. * Générer un fichier de log lisible dans ''/opt/scripts/log''. * Gérer la rotation de ce fichier de log dans ''/etc/logrotate.d/nom_fichier_rotation''. * Programmer l'exécution du script dans le dossier ''/etc/cron.d/nom_fichier_cron''. ===== Résolution mode console ===== Lorsqu'on est en session console via la console déporté du VMware Infrastructure Client, par défaut on est en résolution basse. Pour avoir plus de données d'affichées, il faut changer la résolution. Il faut éditer le fichier ''/boot/grub/menu.lst'' qui est le fichier de configuration de GRUB, le chargeur de démarrage et ajouter à la fin de la ligne kernel l'option ''vga''. title Red Hat Enterprise Linux Server (2.6.18-128.1.16.el5) root (hd0,0) kernel /vmlinuz-2.6.18-128.1.16.el5 ro root=/dev/rootvg/rootlv rhgb quiet vga=791 initrd /initrd-2.6.18-128.1.16.el5.img Les valeurs à passer à ''vga'' sont expliquées ici : http://doc.ubuntu-fr.org/installation/definition_demarrage ou encore plus en détail sur la page wikipédia : http://en.wikipedia.org/wiki/VESA_BIOS_Extensions#VESA_video_mode_numbers Remarque : lorsqu'un nouveau noyau est installé (Mise à jour), l'option ''vga'' va automatiquement être répercutée sur le nouveau noyau.