Projet

Général

Profil

Guide de l'administrateur

Généralités

Larpe est un reverse proxy (mandataire inverse) Liberty Alliance. Il permet à n'importe quel fournisseur de services d'utiliser les fonctionnalités Liberty Alliance (fédération d'identité, Single Sign-On et Single Logout) sans avoir à modifier le code du fournisseur de service lui-même. Il repose sur la bibliothèque Lasso, certifiée par le consortium Liberty Alliance.

Licences

Lasso et Larpe sont publiés selon les termes de la licence GNU GPL.

Sites testés avec Larpe

Les moteurs de sites suivants ont été testés et fonctionnent parfaitement avec Larpe (liste non exhaustive) :

ainsi que d'autres sites spécifiques et non publics.

Installation

Logiciels requis

Larpe a besoin des logiciels suivants :

  • Lasso (0.6.3 ou ultérieur) avec ses bindings Python ;
  • Python (2.3 ou ultérieur) ;
  • Python SCGI ;
  • Quixote (2.0 ou ultérieur) ;
  • Apache (2.0 ou ultérieur) et les modules suivants : * Proxy ; * Proxy HTML ; * Proxy HTTP (pour Apache 2.2 uniquement) ; * SCGI ; * Python ; * Rewrite ; * Headers ;
  • libxml2.

Vous avez également besoin d'un fournisseur d'identité Liberty Alliance, installé sur le même serveur ou non. Nous recommandons Authentic pour cet usage.

Installation sur Debian GNU/Linux Sarge

Ajoutez la ligne suivante dans le fichier

/etc/apt/sources.list
, cela vous donnera l'accès au dépôt où le paquet Larpe se trouve :

deb http://deb.entrouvert.org/ sarge main

En tant que root tapez :

# apt-get update
# apt-get install larpe

Installation sur une autre distribution GNU/Linux

Commencez par installer ces logiciels :

  • Python (2.3 ou ultérieur) ;
  • Python SCGI ;
  • Apache (2.0 ou ultérieur) et les modules suivants : * Proxy HTML ; * SCGI ; * Python ;
  • libxml2.

Téléchargez et installez ensuite ces logiciels supplémentaires :

Décompressez les sources que vous avez téléchargées :

$ tar xzf larpe*.tar.gz
$ cd larpe*

Contrôlez les quelques variables au début du Makefile et modifiez les si nécessaire. Puis pour installez Larpe, en tant que root :

# make install

Larpe est alors installé mais pas encore configuré. Vous pouvez le lancer avec :

# su www-data
$ /usr/sbin/larpectl.py start

Vous pouvez créer un script init.d pour le lancer au démarrage.

Pour désinstaller Larpe, tapez en tant que root :

# make uninstall

Configuration d'Apache 2

Préambule pour les distributions autres que Debian

Chargez les modules Apache 2 suivants, avec les outils propres à votre distribution :

  • proxy ;
  • proxy_html ;
  • proxy_http (Apache 2.2 uniquement) ;
  • scgi ;
  • mod_python ;
  • rewrite ;
  • headers.

Si c'est votre première installation de Larpe, le fichier /etc/apache2/sites-available/apache2-vhost-larpe n'existe pas. Copiez le depuis les sources de Larpe en tant que root :

# cp apache2-vhost-larpe /etc/apache2/sites-available/apache2-vhost-larpe

Pour toute les distributions

Éditez le fichier /etc/apache2/sites-available/apache2-vhost-larpe pour configurer Apache 2 pour Larpe. Vous verrez ces lignes :

ServerName localhost
ServerAdmin root@localhost

Remplacez ces valeurs par votre nom de domaine pour Larpe et votre adresse email. Il se peut que vous deviez changer également cette ligne en fonction de votre configuration Apache2 :

<VirtualHost *:80>

Si le nom d'hôte que vous avez choisi n'est pas dans votre DNS, n'oubliez pas d'ajouter une entrée dans votre fichier /etc/hosts. Si vous souhaitez utiliser SSL (https) pour Larpe ou pour n'importe quel site configué dans Larpe, il vous faudra configurer le support SSL dans votre server Apache2 en premier lieu. Activez cet hôte virtuel en tant que root :

# a2ensite apache2-vhost-larpe

Vous pouvez recharger apache (toujours en tant que root). Avec la plupart des distributions, c'est :

# /etc/init.d/apache2 reload

Dans Fedora :

# /etc/init.d/httpd reload

Larpe fonctionne, l'interface d'administration est accessible http://votre-nom-de-domaine/admin/ .

Configuration de Larpe

Configuration du fournisseur d'identité

Si vous ne disposez pas encore d'un fournisseur d'identité, vous pouvez installer Authentic.

Vous trouverez des informations sur la façon d'installer et de configurer Authentic dans le Guide de l'administrateur Authentic. Dans l'interface d'administration de Larpe, cliquez sur "Paramètres", puis sur "Fournisseur d'identité".

Indiquez l'endroit où se trouve le fichier de metadata de votre fournisseur d'identité puis cliquez sur Valider. Votre fournisseur d'identité est maintenant configuré dans Larpe, vous pouvez configurer autant de fournisseurs de service que vous le souhaitez.

Configuration d'un fournisseur de service

Afin de restreindre l'accès à l'interface d'administration de Larpe, vous devez configurer Larpe en tant que fournisseur de service. Cliquez sur "Paramètres", puis sur "Fournisseur de service".

Saisissez un "Nom d'organisation" puis cliquez sur Valider. Sauvegardez les metadata du fournisseur de service en faisant un clic droit puis "enregistrer sous" (elle concerne ID-FF 1.2). Configurez ce fournisseur de service sur votre fournisseur d'identité à l'aide du fichier de metadata.

Création d'un compte utilisateur

Maintenant, vous pouvez créer un utilisateur qui aura les droits d'accès à l'interface d'administration. Dans l'interface d'administration de Larpe, cliquez sur "Utilisateurs", puis "Nouvel utilisateur".

Saisissez un nom et éventuellement un courriel. Cliquez sur le bouton "jeton" (l'engrenage), sur le bouton "générer", puis sur le bouton "envoyer par courriel". Ensuite, lisez le mail reçu et cliquez sur le lien qu'il contient. Un single SIgn-On sera initié avec le fournisseur d'identité. Si vous n'étiez pas encore authentifié, votre mot de passe vous est demandé. Votre compte est alors fédéré et l'accès à l'interface d'administration est restreint.

Configuration de l'hôte

Cette section détaille comment configurer un nouveau fournisseur de services (aussi appelé hôte) en utilisant Larpe.

Paramètres de l'hôte

Cliquez sur "Hôte" puis sur "Nouvel Hôte".

Saisissez les paramètres suivants :

  • Nom du site : Le nom que vous voulez donner au fournisseur de service ;
  • Adresse racine du site original : l'URL racine de votre fournisseur de service. Si l'URL est du genre http://sp.example.com/index.html, saisissez simplement http://sp.example.com/ ;
  • Page d'authentification : si la page qui contient le formulaire d'authentification est sur une page séparée, saisissez son adresse ici ;
  • Page contenant le formulaire d'authentification : si vous n'avez pas rempli le champ précédent et que le formulaire d'authentification ne se trouve pas sur la page racine, saisissez l'URL de la page contenant le formulaire d'authentification ici ;
  • Adresse de Logout : adresse de Logout du site original qui permettra de bénéficier du Single Logout ;
  • Nom d'hôte inversé : le nom de domaine que vous voulez utiliser pour accéder à votre fournisseur de service à travers le reverse proxy. Si vous utilisez le nom de domaine de Larpe ici, vous devez choisir également un répertoire inverse ;
  • Répertoire inverse : un sous-répertoire où vous voulez pouvoir accéder à votre fournisseur de service à travers le reverse proxy. Si vous mettez en place ce répertoire, votre fournisseur de service sera accessible à http://reversed_host_name/reversed_directory/. Si vous ne le faîtes pas, il sera accessible à http://reversed_host_name/
    Cliquez sur Valider. Vous verrez tous les paramètres courants concernant cette hôte. Votre nouvel hôte n'est probablement pas configuré complètement pour le SSO mais vous devriez d'ores et déjà pouvoir accéder à sa page d'accueil. Si vous avez un message d'avertissement stipulant qu'il n'est pas encore totalement configuré, ignorez le provisoirement pour vérifier que le site est accessible. Ajoutez ce nouveau nom d'hôte à votre DNS (ou localement à /etc/hosts). Cliquez ensuite sur "Nouvelle URL pour cet hôte" pour vérifier que vous pouvez y accéder.

Example d'hôte : Linuxfr

Pour vous aider à configure votre propre fournisseur de service, nous fournissons un exemple d'un service fonctionnel. Pour paramétrer Linuxfr, saisissez les éléments suivants :

Avec "reverse-proxy.example.com" comme nom d'hôte paramétré préalablement pour votre reverse proxy. N'oubliez pas d'ajouter ce nouvel hostname à votre DNS (ou localement à votre fichier /etc/hosts). Vous pouvez alors allez sur Linuxfr http://linuxfr.reverse-proxy.example.com/

Paramétrage final de l'hôte

Vous pouvez maintenant accéder à votre fournisseur de service, il reste une dernière étape pour utiliser les fonctionnalités Liberty Alliance. Cliquez sur "Hôtes", puis sur l'icône d'édition du fournisseur de service concerné. Sauvegardez les metadata du fournisseur de service en faisant un clic droit puis "enregistrer sous" (elle concerne ID-FF 1.2). Configurez ce fournisseur de service sur votre fournisseur d'identité avec ce fichier de metadata.

Formats disponibles : PDF HTML TXT