doc update

This commit is contained in:
Serghei Mihai 2015-06-01 18:58:42 +02:00
parent 8030037984
commit fa1d0ed5a7
12 changed files with 243 additions and 3 deletions

View File

@ -1,5 +1,5 @@
% UAuth: Portail captif dans le Cloud
% Configuration pfSense
% UAuth: Portail captif dans le Cloud
% Entr'ouvert SCOP -- http://www.entrouvert.com
Ce document spécifie les étapes de configuration d'un portail captif pfSense

106
doc/customize.md Normal file
View File

@ -0,0 +1,106 @@
% Usage et personnalisation
% UAuth: Portail captif dans le Cloud
% Entr'ouvert SCOP -- http://www.entrouvert.com
Thème
=========
Il est possible de personnaliser la page d'accueil d'une organisation en
surchageant le templates et en ajoutant des feuilles des styles, images, etc.
Ces fichiers peuvent être chargés dans le compartiment *Theme* de l'interface
de gestion:
\ ![images/u-auth_management.png](images/u-auth_management.png)
Templates
---------
Seule la page d'accueil d'une organisation est personnalisable.
Cela peut être fait en chargeant un fichier template *base.html*. C'est un
fichier doit contenir des balises
Django(https://docs.djangoproject.com/en/dev/topics/templates/) définissant la
structure personnalisée de la page.
Il doit impérativement définir le block:
```html
{% block content %}
{% endblock %}
```
utilisé pour afficher la liste des fournisseurs d'identité et la formulaire de
connexion invité.
Feuilles de styles et les statics
---------------------------------
Des feuilles de style peuvent être chargées par le fichier *base.html* défini
précedemment de façon suivante:
```html
{% load staticfiles %}
...
<head>
...
<link href="{% static "entrouvert/eo.css" %}" media="all" rel="stylesheet" type="text/css" />
...
</head>
```
Afin que le fichier de style personnalisé *eo.css* soit chargé, il doit être
préfixé par le *slug* de l'organisation dont le thème est modifié.
Si l'organisation est *psl*, le static doit être défini de façon suivante:
```html
{% static "psl/eo.css" %}
```
Les images peuvent être chargées au même endroit que les feuilles de style et utilisées de la même façon dans le template:
```html
<img src="{% static "psl/logo.jpg" %}" />
```
Un exemple de thème est fourni dans le paquet debian sous */usr/share/u-auth/theme-example*, dont le rendu est le suivant:
\ ![images/eo_theme.png](images/eo_theme.png)
Federations
===========
La liste des fournisseurs d'identité auprès desquels les utilisateurs peuvent
être authentifiés peut être définie en chargeant des fichiers .xml des
fédérations dans l'onglet *Fédérations* sur l'interface de gestion.
Les fournisseurs d'identité présents dans ces fichiers seront affichés sur la
page d'accueil.
Comptes locaux
==============
Des comptes locaux peuvent être définis dans l'interface de gestion afin de
permettre l'authentification sans utiliser un fournisseur d'identité.
Les comptes peuvent être créés un par un ou plusieurs à la fois.
\ ![images/create_users.png](images/create_users.png)
Le champ *mot de passe* peut être omis lors de la création du compte, il sera
auto-généré. Il peut ensuite être visualisé en cliquant sur le nom de l'utilisateur:
\ ![images/local_user_details.png](images/local_user_details.png)
Un compte utilisateur peut être desactivé à tout moment, soit une date
d'expiration peut être définie.
\ ![images/edit_local_account.png](images/edit_local_account.png)
Importer des comptes à partir d'un fichier
------------------------------------------
Les comptes locaux peuvent être également importé à partir d'un fichier *.csv*
\ ![images/import_users.png](images/import_users.png)

BIN
doc/images/create_users.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 100 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

BIN
doc/images/eo_theme.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 134 KiB

BIN
doc/images/import_users.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 133 KiB

BIN
doc/images/ldap_config.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 44 KiB

View File

@ -12,11 +12,11 @@ cat << EOT
</head>
<body>
<h1 id="logo">
<a href="/"><img src="http://www.entrouvert.com/static/eo/img/logo.png" alt="Entr'ouvert"></a> Gestion d'identité SUPANN &mdash; Documentation</h1>
<a href="/"><img src="http://www.entrouvert.com/static/eo/img/logo.png" alt="Entr'ouvert"></a> U-Auth &mdash; Documentation</h1>
<dl class="doc-index">
EOT
for MD in configuration-pfsense.md
for MD in install.md customize.md configuration-pfsense.md
do
F=`basename $MD .md`
TITLE=`head -1 $F.md | sed 's/.*-- //'`

134
doc/install.md Normal file
View File

@ -0,0 +1,134 @@
% Installation et configuration
% UAuth: Portail captif dans le Cloud
% Entr'ouvert SCOP -- http://www.entrouvert.com
Installation
============
U-Auth est fourni sous forme d'un paquet debian téléchargeable.
Pour l'installer il est nécessaire de rajouter le depot d'Entrouvert dans votre
gestionnaire de paquets:
<pre>
deb http://deb.entrouvert.org/ wheezy-testing main
</pre>
ainsi que rajouter la clé GPG:
<pre>
wget -O - http://deb.entrouvert.org/entrouvert.gpg | sudo apt-key add -
</pre>
Installer le paquet:
<pre>
sudo apt-get install u-auth
</pre>
\ ![images/uauth_install.png](images/uauth_install.png)
les paquets *freeradius* ainsi que *slapd* seront installés.
Lors de la premiere installation u-auth demande la configuration de l'annuaire LDAP:
\ ![images/ldap_config.png](images/ldap_config.png)
une base ainsi qu'un compte administrateur seront crées.
La configuration du serveur radius sera faite automatiquement afin qu'il puisse communiquer avec le serveur ldap.
Configuration du serveur web
============================
Le paquet fourni un exemple de fichier de configuration pour le serveur web
nginx qui se trouve dans */usr/share/doc/u-auth/nginx-example.conf*. Ce fichier
peut être utilisé en modifiant le nom du serveur ainsi que les certificats:
<pre>
server_name u-auth.example.org
...
ssl_certificate /etc/ssl/u-auth.example.org.pem;
ssl_certificate_key /etc/ssl/u-auth.example.org.key;
</pre>
Parametrage de l'application
============================
La configuration de l'application se trouve dans le fichier
*/etc/u-auth/settings.py*.
Ce fichier contient, au format du langage Python, les parametres de connexion à
la base des données, nécessaire pour stocker les comptes locaux, les
identifiants de connexion à l'annuaire LDAP.
Base des données
----------------
Le système de gestion des bases des données par défaut est sqlite.
```python
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.sqlite3',
'NAME': os.path.join(VAR_DIR, 'db.sqlite3'),
}
}
```
Un autre SGBD peut-être configuré en changeant les valeurs de *ENGINE* et
*NAME* ainsi qu'en rajoutant les paramètres de connexion:
```python
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'NAME': 'db_name',
'USER': 'db_user',
'PASSWORD': 'db_user_password',
'HOST': ''
}
}
```
Annuaire LDAP
-------------
Afin que l'application puisse communiquer avec l'annuaire LDAP et écrire les
données utilisateur, un compte ayant le droit d'écriture dans l'arbre utilisé
par le serveur radius doit être défini. Par exemple:
```python
LDAP_CONF = {
'url': 'ldap://localhost',
'bind_dn': 'uid=admin,ou=people,dc=entrouvert,dc=org',
'options': {},
'bind_passwd': '[mot de passe défini lors du parametrage du serveur ldap]',
'dn': '[dn defini lors du parametrage du serveur ldap]'
}
```
#### Important!!!
Après la manipulation du fichier */etc/u-auth/settings.py* l'application doit être redémarrée:
<pre>
sudo service u-auth restart
</pre>
Outils de gestion des serveurs freeradius et slapd
--------------------------------------------------
Des outils de configuration et re-initialisation des serveurs freeradius et
slapd sont fournis dans l'application:
* reset-slapd
* setup-slapd
* setup-radius
Ils peuvent être executés avec la commande */usr/lib/u-auth/u-auth* suivie du nom de l'outil.
Par exemple:
```
/usr/lib/u-auth/u-auth reset-slapd
```
La page d'aide de l'outil est affichée en préfixant son nom par *help*:
```
/usr/lib/u-auth/u-auth help setup-slapd
```