Maniatux's Blog

Welcome to the internet

Sysadmin

Le réseau "bridged" facilement sur KVM depuis Fedora 17

Rédigé par Xavier - - Aucun commentaire

Si il y a une chose qui a toujours été compliquée sur la virtualisation KVM, c'est de faire un pont-réseau (Bridge) c'est à dire faire comme si votre machine virtuelle était branchée physiquement au réseau (on peut ainsi mettre une IP sur le même réseau que les autres et se passer de NAT ou routage). Il fallait faire des manipulations sur l'hôte pour mettre en place le pont, cela changeait selon les OS, bref c'était un peu fastidieux.

Depuis Fedora 17, une nouvelle fonctionnalité, "macvtap" qui permet d'automatiser toute cette opération un peu comme sur VirtualBox. Il suffit de sélectionner, en périphérique source, Périphérique hôte p4p1 : macvtap en remplaçant p4p1 par le nom de votre carte réseau.

Une excellente chose qui va faciliter la vie de beaucoup de gens !

Un serveur Jabber couplé à Active Directory avec Openfire

Rédigé par Xavier - - Aucun commentaire

Si votre entreprise a besoin d'un outil de discussion par messagerie instantanée, ne cherchez plus. Openfire est un serveur Jabber facile à administrer (en web) permettant d'utiliser des comptes Active Directory, le tout en quelques clics.

Il est facile à mettre en place et à administrer grâce à son interface web complète et intuitive. Les avantages d'une messagerie Jabber sont multiples : les salons, la multitude de clients, le serveur en interne de l'entreprise, etc.

Présentation

Openfire fonctionne en Java, de quoi grimacer à première vue, mais il fonctionne bien et son exploitation est aisée, on peut donc lui pardonner. Pour un serveur sans interface graphique, il faut disposer d'une version de java headless. C'est le cas sur Debian et Ubuntu, mais pas sur CentOS. Heureusement pour nous, l'équipe de Openfire met à disposition un rpm contenant cette version :)

Dans le tutoriel suivant c'est CentOS 6.2 x86_64 qui sera utilisé, mais seule l'étape d'installation change, la configuration et le couplage avec A.D est identique.

Active Directory

Dans l'exemple j'utilise un serveur Windows2008R2 pour l'Active Directory. J'ai créé une OU avec des comptes bidons :

Installation

Nous partons donc d'un système CentOS fraîchement installé et relié au réseau. Commencez par récupérer, sur le site officiel, la version RPM de Openfire. Vous pouvez la transférer sur le serveur en sftp (en utilisant le login root), ou alors la récupérer directement sur internet avec wget :

# yum install -y wget
# wget http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire-3.7.1-1.i386.rpm

Note : pensez bien à remplacer le lien dans cet article par celui pointant vers la toute dernière version distribuée sur le site.

# yum localinstall openfire-3.7.1-1.i386.rpm

Note : vous remarquerez que nous tournons sur CentOS 64 bits, mais que ce package Openfire est 32 bits. Il faut donc installer le paquet glibc 32 bits :

# yum install glibc.i686

Configuration

Attention, par défaut CentOS dispose du parefeu activé, il va falloir ouvrir les différents ports permettant non seulement à Jabber de fonctionner, mais aussi aux administrateurs de se connecter à la console web.

Pour faire la configuration du parefeu on peut utiliser system-config-firewall-tui, la procédure d'installation est décrite ici.

# system-config-firewall-tui

Il faut ouvrir les ports :

  • 5222 : Jabber Serveur / Client
  • 5269 : Jabber Serveur / Serveur
  • 9090 : Port de la console web Openfire

Ensuite prenez garde à bien utiliser le DNS de votre organisation... qui est souvent l'Active Directory lui-même. Ajoutez son IP dans /etc/resolv.conf si ce n'est pas déjà bon.

Pour finir, lancez Openfire :

# /etc/init.d/openfire start

Mise en place

Ouvrez votre navigateur web favori et entrez l'adresse IP de votre serveur Openfire suivi de 9090. Par exemple : http://10.49.1.76:9090.

Language Selection

Langue de l'interface.

Paramètres du Serveur

Laisser par défaut.

Paramètres de base de données

A vous de voir si vous voulez utiliser une base externe ou non. En cas de doutes choisissez la "Base de Données Embarquée".

Paramètres de Profil

Etape 1

Il faut sélectionner "Serveur LDAP" pour pouvoir nous connecter à notre Active Directory.

Type : Active Directory
Hôte : IP de l'Active Directory
Port : 389
Base DN : OU=_XMPP,DC=freeman,DC=lan
DN Administrateur : freeman\administrateur

En bas, le bouton "Tester les paramètres" va vous permettre de savoir si tout est bon.

Etape 2

Tout laisser par défaut. Utilisez une fois de plus le bouton de test en bas, il va charger un utilisateur dans l'A.D et l'afficher.

Etape 3

A voir si vous voulez utiliser les groupes.

Compte Administrateur

Vous allez devoir sélectionner un utilisateur dans l'A.D qui sera administrateur... par exemple j'ai sélectionné adminfreeman.

Terminé !

Console Openfire

Allez dans l'onglet Utilisateurs/Groupes pour visualiser vos utilisateurs importés de l'A.D...

Note sur l'ajout d'utilisateurs : Lorsque vous ajoutez un utilisateur dans l'A.D (dans la bonne OU bien entendu) celui-ci apparait dans la liste des utilisateurs sur Openfire.

Connexion avec un client

Dans l'exemple j'utilise Pidgin. Voici les paramètres à utiliser :

Et voilà !

Nginx, OpenBSD et les résolutions de noms

Rédigé par Xavier - - Aucun commentaire

Hier j'ai installé Movim sur mon serveur mais l'application n'arrivait pas à résoudre le nom de domaine nécessaire pour se connecter au serveur Jabber. Pourtant côté serveur tout était bon, le nom était bien résolu, je n'arrivais pas à comprendre d'où venait l'erreur. Les logs PHP donnaient :

(php_network_getaddresses: getaddrinfo failed: non-recoverable failure in name resolution)

Puis j'ai vu la lumière, le serveur web de OpenBSD, nginx, est chrooté (ainsi que php-fpm probablement). Par conséquent il n'accède pas au /etc/resolv.conf, il faut le copier dans /var/www/etc/resolv.conf.

# mkdir /var/www/etc
# cp /etc/resolv.conf /var/www/etc/

Et voilà !

OpenBSD + MySQL

Rédigé par Xavier - - Aucun commentaire

Petit aide-mémoire pour installer MySQL server sur OpenBSD.

# export PKG_PATH=http://ftp.fr.openbsd.org/pub/OpenBSD/5.1/packages/i386/
# pkg_add -v mysql-server
# /usr/local/bin/mysql_install_db
# /etc/rc.d/mysqld start
# /usr/local/bin/mysql_secure_installation

Vérifications :

# mysql -u root -p
mysql› show DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
+--------------------+
2 rows in set (0.01 sec)

mysql›

Fini !

OpenSMTPD : réception port 25, authentification SSL/TLS port 465

Rédigé par Xavier - - Aucun commentaire

Dans un précédent article nous avons vu comment mettre en place OpenSMTPD sur OpenBSD, avec l'authentification pour le relay. Seulement, nous vivons dans des pays où internet n'est pas neutre, le port 25TCP sortant est très souvent bloqué sur les connexions à internet. Ainsi, bien que votre serveur soit en mesure de recevoir la connexion sur le port 25, vous ne pourrez pas l'émettre. Il est donc préférable de mettre en place l'écoute sur un autre port.

Voici la configuration à utiliser dans OpenSTMPD afin d'obtenir le fonctionnement suivant :

  • Le serveur écoute toujours sur le port 25 pour la réception de messages
  • Le serveur écoute maintenant sur le port 465 pour l'authentification

A mettre dans votre smtpd.conf :

# Interfaces
listen on lo0
listen on vr0
listen on vr0 smtps enable auth

smtps indique qu'on demande une authentification SSL/TLS sur le port 465. N'oubliez pas de rediriger ce port sur votre routeur. Dans Thunderbird, paramètres SMTP, il faut spécifier l'authentification SSL/TLS, mot de passe normal, port 465 (par défaut). Et voilà !