Archives par étiquette : rhel

Convertir les dates dans les journeaux de QMail

Dans le domaine de l’hébergement web, les questions les plus fréquentes sont souvent reliées aux courriels.  « Pourquoi je n’ai pas reçu ce courriel? », « Pourquoi il y a un délais dans la livraison de mon courriel? », « Pourquoi mon courriel est traité comme un pourriel? ».  Peu importe la question, la réponse se trouve plus souvent qu’autrement dans la configuration du logiciel du client ou dans les journeaux (logs) des serveurs.

Un jour, j’ai dù vérifier des journeaux sur un serveur roulant QMail.  Le logiciel QMail fonctionne très bien mais les logs que j’y ai trouvé contenaient une date en format hexadécimal, ce qui est très difficile à lire rapidement pour un humain…  J’ai cherché un peu et trouvé cette commande qui est très utile.

Il faut tout d’abord aller dans le dossier qui contient les journeaux (dans mon cas, c’était /var/log/* où * veut dire soit send, smtp, smpt2, pop3, pop3-ssl, imap4, imap4-ssl, sur un serveur RHEL6 ou CentOS 6 roulant Interworx 4.x).  Ensuite, il faut rouler cette commande pour convertir les journaux courants :

# cat ./current | tai64nlocal > current-merged-log

Ou celle-ci pour convertir tous les fichiers journaux ayant subi une rotation de QMail :

# sort -m \@* | tai64nlocal > old-merged-log

Et voilà, les dates sont maintenant façilement lisibles par des humains normalement constitués!  🙂

Trouver la date d’installation de Linux

Un jour j’avais besoin de réviser quels serveurs arrivaient à leur fin de vie physique au travail avant qu’un événement malheureux arrive.  Je n’étais pas là lors de l’installation de certains de ces serveurs et l’ancien technicien n’avait pas noté les dates d’installation de ces serveurs nulle part…

Après quelques recherches, j’ai trouvé quelques response.  La première concerne les distributions de Linux basées sur les RPM telles que RHEL et CentOS :

# rpm -qi basesystem

Note: Sur certains types de serveurs virtuels (V-Server), cette commande affiche la date d’installation du « basesystem » de la machine hôte et non pas de la machine virtuelle donc faites attention et vérifiez l’autre commande ci-dessous.

La deuxième réponse que j’ai trouvé est plus générique mais dépend du fait que le fichier en question aurait pu être modifié ou recréé même si ceci est peu probable.  Presque toutes les distributions de Linux vont créer une clé d’hôte ssh lors du premier démarrage suivant l’installation, on peut donc vérifier sa date de création très simplement :

# ls -l /etc/ssh/

J’espère que ceci vous aura aidé un peu!  Du moins, ça a fonctionné dans tous les cas où je l’ai essayé jusqu’à présent…

Configurer une adresse IP statique sur CentOS

Notes

1. Ceci devrait fonctionner de façon similaire sur RHEL (Red Hat Enterprise Linux) et Fedora Core

Les étapes

1. Configurer le script de la carte réseau
2. Configurer les paramètres réseau globaux
3. Configurer les serveurs DNS

Étape 1: Le script de la carte réseau

Tout d’abord, les scripts de carte réseau sont situés dans /etc/sysconfig/network-scripts/ et sont nommés sous « ifcfg-ethX » où X est le numéro de la carte réseau.  Si vous avez plus d’une carte et voulez savoir quelle carte correspond à quel numéro, vous pouvez parcourir ces fichiers et vous devriez voir une description sur la première ligne de chaque script ressemblant à celle-ci : « # D-Link System Inc RTL8139 Ethernet » et juste un peu plus loin, vous devriez avoir une ligne contenant l’adresse MAC de votre carte réseau sous « HWADDR=… ».  Ces lignes devraient vous aider à trouver la carte réseau recherchée.

Lorsque vous avez trouvé le script voulu, vous devez insérer l’adresse IP que vous souhaitez donner à cette carte réseau et au moins les lignes suivantes (ceci est un exemple, s’il vous plaît remplacez ces valeurs par les vôtres sur votre serveur) :

DEVICE=eth0
BOOTPROTO=static
BROADCAST=192.168.0.255
HWADDR=AA:BB:CC:DD:EE:FF
IPADDR=192.168.0.111
NETMASK=255.255.255.0
NETWORK=192.168.0.0
ONBOOT=yes

Étape 2: Configurer les paramètres réseau globaux

Les paramètres réseau globaux sont situés dans le fichier /etc/sysconfig/network et devraient ressembler à ceci (à nouveau, modifiez ces valeurs pour les vôtres):

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=charlie.mathieupeloquin.com
GATEWAY=192.168.0.254

Les noms des paramètres parlent d’eux-mêmes.

Étape 3: Configurer les serveurs DNS

C’est bien d’avoir configuré l’adresse IP, le réseau, le masque de sous-réseau et la passerelle mais sans serveurs DNS, nous ne résoudrons pas les noms de domaine.  Les serveurs DNS sont spécifiés dans le fichier /etc/resolv.conf.  Mon fichier d’exemple ressemble à ce qui suit puisque je l’ai pris sur mon serveur de fichiers local derrière un routeur résidentiel mais les serveurs de production sur Internet ont généralement deux ou plusieurs serveurs DNS (de vrais serveurs DNS) et peuvent même pointer vers eux-mêmes (127.0.0.1 ) si la machine roule elle-même BIND/named.  Voici mon fichier exemple pour mon serveur de fichiers local :

search mathieupeloquin.com
nameserver 192.168.0.254

Dernière Étape

L’étape finale pour prendre toutes ces modifications en compte en est de redémarrer votre réseau.  Ce que je fais habituellement quand je suis connecté en tant que root est :

# service network restart
ou
# /etc/init.d/network restart