summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas NOEL <tnoel@entrouvert.com>2015-02-20 11:15:05 (GMT)
committerThomas NOEL <tnoel@entrouvert.com>2015-02-20 11:15:05 (GMT)
commitf728e06565627e3460f06a6ab3753361de4c821c (patch)
treec6889e1099eb971ccd7b6e44d67a8c4a30492e02
parentb30c400c382b866cfa031c1e47965183374b0a92 (diff)
downloadgi-psl-f728e06565627e3460f06a6ab3753361de4c821c.zip
gi-psl-f728e06565627e3460f06a6ab3753361de4c821c.tar.gz
gi-psl-f728e06565627e3460f06a6ab3753361de4c821c.tar.bz2
installation authentic2
-rw-r--r--documentation/images/guichet-homepage.pngbin154341 -> 86308 bytes
-rw-r--r--documentation/index.html.build2
-rw-r--r--documentation/installation-idp-authentic.md337
-rw-r--r--documentation/installation-idp.md20
4 files changed, 338 insertions, 21 deletions
diff --git a/documentation/images/guichet-homepage.png b/documentation/images/guichet-homepage.png
index ffb3a6d..27cc11e 100644
--- a/documentation/images/guichet-homepage.png
+++ b/documentation/images/guichet-homepage.png
Binary files differ
diff --git a/documentation/index.html.build b/documentation/index.html.build
index 73c7a19..5e4979d 100644
--- a/documentation/index.html.build
+++ b/documentation/index.html.build
@@ -15,7 +15,7 @@ cat << EOT
<dl class="doc-index">
EOT
-for MD in architecture.md installation-base.md installation-ldap.md exploitation-ldap.md installation-ldapsaisie.md
+for MD in architecture.md installation-base.md installation-ldap.md exploitation-ldap.md installation-ldapsaisie.md exploitation-ldapsaisie.md installation-idp-authentic.md
do
F=`basename $MD .md`
TITLE=`head -1 $F.md | sed 's/.*-- //'`
diff --git a/documentation/installation-idp-authentic.md b/documentation/installation-idp-authentic.md
new file mode 100644
index 0000000..618865c
--- /dev/null
+++ b/documentation/installation-idp-authentic.md
@@ -0,0 +1,337 @@
+% Gestion d'identités PSL -- Installation IdP Authentic
+% Entr'ouvert SCOP -- http://www.entrouvert.com
+
+Installation du système de base
+===============================
+
+La procédure décrite dans cette documentation doit être effectuée
+après l'installation du système de base décrite dans la documentation
+_« Gestion d'identités PSL -- Installation de base »_.
+
+Installation du composant IdP Authentic2
+========================================
+
+Installer le paquet `authentic2-supann`:
+
+ # apt-get install authentic2-supann
+
+Cette installation va déclencher l'installation de tous les composants
+logiciels (paquets) nécessaires à la mise en place du fournisseur d'identités
+(_Identity Provider_) connectable avec un annuaire SUPANN 2009.
+
+Lors de l'installation il vous sera demandé un « **Mot de passe de connexion
+PostgreSQL pour authentic2** » : tapez juste `[Enter]`, un mot de passe aléatoire
+sera généré (vous n'aurez pas besoin de le connaître, il sera automatiquement
+configuré sur PostgreSQL et Authentic).
+
+\ ![images/psl-sql-2.png](images/psl-sql-2.png)
+
+
+La configuration se fait ensuite en deux étapes
+
+* configuration du logiciel Authentic proprement dit
+* connexion du logiciel avec le serveur web Apache
+
+Configuration d'Authentic2
+==========================
+
+Modifier le fichier `/etc/authentic2/supann.conf` pour faire correspondre les
+valeurs avec celles de la base créée dans l'annuaire LDAP (lors de la commande
+`slapd-supann newdb`) et renseigner la fédération dans laquelle sera intégrée
+le fournisseur d'identités.
+
+_Note : les éditeurs vi ou nano sont disponibles pour cela. Si vous êtes
+débutant sous Linux, préférez l'éditeur nano, plus accessible. Vous pouvez
+aussi installer d'autres éditeurs (`apt-get install vim` ou `apt-get instal
+emacs`)_
+
+ # nano /etc/authentic2/supann.conf
+
+Le fichier est un script shell, attention à la syntaxe, n'ajoutez pas d'espace
+avant ou après le signe `=`, conservez bien les `export`, etc.
+
+Après modification de ce fichier, relancer le service `authentic2` pour qu'il
+prenne en compte les nouveaux paramètres:
+
+> `/etc/init.d/authentic2 restart`
+
+Exemple d'un fichier renseigné avec liaison avec la fédération de test Renater:
+
+
+```bash
+# Configuration du LDAP
+#
+# URL de l'annuaire LDAP
+export SUPANN_LDAP_URL='ldap://192.168.43.23/'
+# Base DN de l'annuaire LDAP
+export SUPANN_LDAP_BASE_DN='dc=quelquechose,dc=fr'
+# Bind DN pour connexion à l'annuaire LDAP (optionnel)
+export SUPANN_LDAP_BINDDN='uid=admin,ou=people,dc=quelquechose,dc=fr'
+# Bind Password pour connexion à l'annuaire LDAP (optionnel)
+export SUPANN_LDAP_BINDPW='as;KUAq*6123'
+
+# Données de fédération
+# Fédération Renater de production
+# URL des métadonnées
+# RENATER_METADATA=https://federation.renater.fr/renater/renater-metadata.xml
+# URL des règles de filtrage des attributs
+# RENATER_ATTRIBUTE_FILTERS=https://federation.renater.fr/renater/filtres/renater-attribute-filters-all.xml
+# URL du certificat de signature des métadonnées
+# RENATER_CERTIFICATE=https://federation.renater.fr/renater/metadata-federation-renater.crt
+
+# Fédération de Test
+export RENATER_METADATA='https://federation.renater.fr/test/renater-test-metadata.xml'
+export RENATER_ATTRIBUTE_FILTERS='https://federation.renater.fr/test/filtres/renater-test-attribute-filters-all.xml'
+export RENATER_CERTIFICATE='https://federation.renater.fr/test/metadata-federation-renater.crt'
+
+# Raccordement EduGain
+# Nom de l'organisation
+export EDUGAIN_SCHAC_HOME_ORGANIZATION="Université de QuelquePart"
+# Type de l'organisation
+export EDUGAIN_SCHAC_HOME_ORGANIZATION_TYPE="urn:schac:homeOrganizationType:int:university"
+#
+
+# Local port for listening -- NE PAS MODIFIER
+export BIND='127.0.0.1:8080'
+```
+
+Le reste de la configuration d'Authentic, automatiquement modifiée par le
+paquet `authentic2-supann`, est déjà conforme à SUPANN 2009.
+
+
+Installation d'un certificat spécifique pour SAML
+-------------------------------------------------
+
+Lors de l'installation du paquet `authentic2-supann`, un certificat X.509 est
+généré pour la partie SAML 2.0 / Shibboleth. Il s'agit d'un certificat
+autosigné, valable 10 ans.
+
+Si la fédération dans laquelle sera inscrite l'IdP nécessite un certificat SAML
+avec d'autres critères, il faudra le générer par la méthode qui sera indiquée,
+puis le poser à la place du certificat installé par défaut :
+
+* `/etc/authentic2/cert.pem`: le fichier du certificat X.509
+* `/etc/authentic2/key.pem`: la clé privée correspondante
+
+Ces fichiers doivent être lisibles par l'utilisateur système `authentic` et la
+clé privée ne doit, par définition, pas être publique. Le réglage de ces droits
+d'accès peut se faire ainsi:
+
+```
+# chown authentic:authentic /etc/authentic2/cert.pem
+# chmod 644 /etc/authentic2/cert.pem
+# chown root:authentic /etc/authentic2/key.pem
+# chmod 640 /etc/authentic2/cert.pem
+```
+
+Une fois ces fichiers mis en place, il faut relancer le service:
+
+ # /etc/init.d/authentic2 restart
+
+Connexion au serveur LDAP en SSL/TLS
+------------------------------------
+
+Authentic se connecte au serveur LDAP en TLS.
+
+**Attention, le certificat du serveur LDAP doit être valide.** Si ce n'est pas
+le cas (par exemple lors de tests) vous devez modifier la configuration du
+client LDAP du système et lui dire de toujours accepter les certificat. Pour
+ce faire, ajouter la ligne suivante dans `/etc/ldap/ldap.conf`:
+
+ TLS_REQCERT allow
+
+Au final, le fichier `/etc/ldap/ldap.conf` doit ressembler à cela :
+
+```
+# cat /etc/ldap/ldap.conf
+
+# Exemple d'un fichier /etc/ldap/ldap.conf·qui accepte
+# n'importe quel certificat serveur
+
+# See ldap.conf(5) for details
+# This file should be world readable but not world writable.
+
+# TLS certificates (needed for GnuTLS)
+TLS_CACERT /etc/ssl/certs/ca-certificates.crt
+TLS_REQCERT allow
+```
+
+
+Configuration d'Apache pour exposer Authentic
+=============================================
+
+Le serveur HTTP Apache est déjà installé par `authentic2-supann`. Il reste à le
+configurer. Une configuration par défaut est fournie qu'il suffit d'activer,
+voici la procédure pour cela.
+
+Activer les modules nécessaires à Apache:
+
+ # a2enmod ssl headers proxy_http
+
+Puis activer la configuration par défaut du site qui exposer Authentic:
+
+ # a2ensite authentic2-supann.conf
+
+Il faut ensuite indiquer le _ServerName_ au niveau de la configuration du site,
+dans le début du fichier `/etc/apache2/sites-enabled/authentic2-supann.conf`:
+
+ # nano /etc/apache2/sites-enabled/authentic2-supann.conf
+
+Par exemple :
+
+ # extrait de /etc/apache2/sites-enabled/authentic2-supann.conf
+ # où il faut modifier le ServerName
+ <VirtualHost *:443>
+ ServerName idp.quelquechose.fr # <-- indiquer ici le nom DNS de la machine
+ ...
+
+Enfin, relancer le service `apache2` pour prendre en compte ces modifications
+de sa configuration :
+
+ # service apache2 restart
+
+L'interface est alors accessible sur `https://idp.quelquechose.fr`
+
+\ ![images/authentic2-login.png](images/authentic2-login.png)
+
+Pour se connecter, utiliser l'identifiant `admin` et le mot de passe choisi
+lors de la création de la base sur le serveur LDAP (`newdb`).
+
+\ ![images/authentic2-home.png](images/authentic2-home.png)
+
+
+Installation d'un certificat pour HTTPS
+---------------------------------------
+
+Le certificat installé par défaut pour Apache est bien entendu invalide.
+
+Pour installer un certificat valide (correspondant au nom du serveur et signé
+par une autorité reconnu) il faut en copier les clés un répertoire, par exemple
+`/etc/apache2/ssl` qui peut être créé pour l'occasion, puis indiquer
+l'emplacement des clés dans la configuration
+`/etc/apache2/sites-enabled/authentic2-supann.conf`:
+
+ # extrait de /etc/apache2/sites-enabled/authentic2-supann.conf
+ (...)
+ SSLCertificateFile /etc/apache2/ssl/certificate.pem
+ SSLCertificateKeyFile /etc/apache2/ssl/private-key.key
+
+Ensuite relancer le service pour prendre en compte la modification
+
+ # service apache2 restart
+
+Adaptations de la configuration Apache
+--------------------------------------
+
+Le fichier `authentic2-supann.conf` fourni par la solution pour configurer Apache est
+un modèle, un exemple. Si vous connaissez bien la configuration Apache pour
+exposer un service PHP, et/ou si vous avez des besoins spécifiques de
+configuration, vous pouvez tout à fait créer votre propre configuration Apache.
+Vous pouvez même utiliser un autre serveur HTTP.
+
+Cependant, la solution n'est supportée que pour Apache et pour un fichier de
+configuration qui ne soit pas trop distant du modèle `authentic2-supann.conf`.
+
+
+Validation dans la fédération de test Renater
+=============================================
+
+Le préalable pour cette opération est de disposer d'un compte sur la
+fédération, au minimum un _compte CRU_. Les comptes CRU sont des comptes
+ouverts à toute personne disposant d'une email, pour se créer un compte il faut
+aller sur [https://cru.renater.fr/sac/](https://cru.renater.fr/sac/).
+
+Inscription du fournisseur dans la fédération
+---------------------------------------------
+
+L'inscription d'un fournisseur dans la fédération se fait sur le **guichet de
+la fédération** à l'adresse
+[https://federation.renater.fr/registry](https://federation.renater.fr/registry).
+Voici la procédure détaillée pour y inscrire un IdP Authentic nouvellement
+installé.
+
+Tout d'abord aller sur
+[https://federation.renater.fr/registry](https://federation.renater.fr/registry),
+choisir son IdP de connection dans la boite en haut à droite.
+
+\ ![images/guichet-homepage.png](images/guichet-homepage.png)
+
+Désormais sur la page d'accueil, cliquer sur « _Ajouter un fournisseur
+d'identités_ »
+
+\ ![images/guichet-ajouter.png](images/guichet-ajouter.png)
+
+Une page s'affiche qui demande les informations techniques concernant le fournisseur à déclarer. Voici les réponses à donner :
+
+* Intitulé du fournisseur d'identités : le nom de votre fournisseur d'identité par exemple "Chimie-ParisTech"
+* Intitulé du fournisseur d'identités (en anglais) : la même chose en anglais pour Edugain
+* domaine : le ou les noms de domaine de votre établissement
+* description en français et en anglais
+* Cliquer sur l'onglet Rattachement à un organisme et n'en sélectionner aucun
+* Cliquer sur l'onglet Contacts et renseigner les informations de contact technique
+* Cliquer sur l'onglet **Informations techniques** et indiquer les informations suivantes :
+
+> * EntityID : `https://idp.quelquechose.fr/idp/saml2/metadata` (remplacer le nom `idp.quelquechose.fr` par celui de votre machine)
+> * URL du profil SAML2/POST/SSO : `https://idp.quelquechose.fr/idp/saml2/sso`
+> * URL du profil SAML2/Redirect/SSO : `https://idp.quelquechose.fr/idp/saml2/sso`
+> * Certificat X.509 : il faut ici recopier le contenu de la balise XML
+ _X509Certificate_ que vous trouverez dans le fichier XML à l'URL
+ `https://idp.quelquechose.fr/idp/saml2/metadata`. Ce même contenu est aussi
+ visible dans le fichier `/etc/authentic2/cert.pem` sur le serveur où est installé
+ Authentic (attention, enlever les l'entête et le pied de page du fichier,
+ `-----BEGIN CERTIFICATE-----` et `-----END CERTIFICATE-----` avant de copier son
+ contenu dans l'interface du guichet Renater)
+> * Aller à l'onglet Soumettre et valider
+
+
+Connaissance de la fédération de test par l'IdP
+-----------------------------------------------
+
+Il est nécessaire de configurer l'IdP sur la fédération de test, pour cela
+commenter les lignes concernant la fédération de production de production dans
+`/etc/authentic2/supann.conf` et activez celles qui concernent la fédération de
+test:
+
+```bash
+# extrait de /etc/authentic2/supann.conf pour fédération de test
+
+# Fédération de production : lors des test, à commenter avec un # en début de ligne
+#export RENATER_METADATA=https://federation.renater.fr/renater/renater-metadata.xml
+#export RENATER_ATTRIBUTE_FILTERS=https://federation.renater.fr/renater/filtres/renater-attribute-filters-all.xml
+#export RENATER_CERTIFICATE=https://federation.renater.fr/renater/metadata-federation-renater.crt
+
+# Fédération de test : lors des test, activer ces lignes
+export RENATER_METADATA=https://federation.renater.fr/test/renater-test-metadata.xml
+export RENATER_ATTRIBUTE_FILTERS=https://federation.renater.fr/test/filtres/renater-test-attribute-filters-all.xml
+export RENATER_CERTIFICATE=https://federation.renater.fr/test/metadata-federation-renater.crt
+```
+
+Ensuite mettre à jour les métadonnées de la fédération via la commande suivante :
+
+```
+# su -s /bin/sh -c /usr/lib/authentic2-supann/update-renater-meta.sh authentic
+```
+
+Note: cette opération est aussi automatisée toutes les heures.
+
+Les autres services de la fédération mettent normalement à jour les métadonnées
+de la fédération toutes les heures, il faudra donc **attendre au moins une
+heure** suite à l'inscription pour pouvoir commencer les tests.
+
+Pour test, vous pourrez aller sur la **ressource de test** mise à disposition
+par Renater à l'adresse
+[https://services.renater.fr/federation/test/ressource](https://services.renater.fr/federation/test/ressource).
+Vous serez renvoyé sur le service de découverte et devrez choisir dans le menu
+le nom donné à votre IdP.
+
+Note: le service de test ne gérant pas la déconnexion, il faudra effacer vos
+cookies pour recommencer un test.
+
+
+-----
+
+Historique du document
+======================
+
+> 20150217 tnoel -- première version
+
diff --git a/documentation/installation-idp.md b/documentation/installation-idp.md
deleted file mode 100644
index 37521c7..0000000
--- a/documentation/installation-idp.md
+++ /dev/null
@@ -1,20 +0,0 @@
-% Gestion d'identités PSL -- Installation IdP
-% Entr'ouvert SCOP -- http://www.entrouvert.com
-
-Installation du système de base
-===============================
-
-La procédure décrite dans cette documentation doit être effectuée
-après l'installation du système de base décrite dans la documentation
-_« Gestion d'identités PSL -- Installation de base »_.
-
-Installation du composant IdP
-=============================
-
------
-
-Historique du document
-======================
-
-> 20150217 tnoel -- première version
-