«
Précédent
|
Suivant
»
Révision fa1d0ed5
Ajouté par Serghei Mihai (congés, retour 15/05) il y a plus de 8 ans
- ID fa1d0ed5a719eb5fe9333c4ec7c8d692833f2768
- Parent 80300379
doc/configuration-pfsense.md | ||
---|---|---|
1 |
% UAuth: Portail captif dans le Cloud |
|
2 | 1 |
% Configuration pfSense |
2 |
% UAuth: Portail captif dans le Cloud |
|
3 | 3 |
% Entr'ouvert SCOP -- http://www.entrouvert.com |
4 | 4 |
|
5 | 5 |
Ce document spécifie les étapes de configuration d'un portail captif pfSense |
doc/customize.md | ||
---|---|---|
1 |
% Usage et personnalisation |
|
2 |
% UAuth: Portail captif dans le Cloud |
|
3 |
% Entr'ouvert SCOP -- http://www.entrouvert.com |
|
4 |
|
|
5 |
Thème |
|
6 |
========= |
|
7 |
|
|
8 |
Il est possible de personnaliser la page d'accueil d'une organisation en |
|
9 |
surchageant le templates et en ajoutant des feuilles des styles, images, etc. |
|
10 |
|
|
11 |
Ces fichiers peuvent être chargés dans le compartiment *Theme* de l'interface |
|
12 |
de gestion: |
|
13 |
|
|
14 |
\ ![images/u-auth_management.png](images/u-auth_management.png) |
|
15 |
|
|
16 |
Templates |
|
17 |
--------- |
|
18 |
Seule la page d'accueil d'une organisation est personnalisable. |
|
19 |
|
|
20 |
Cela peut être fait en chargeant un fichier template *base.html*. C'est un |
|
21 |
fichier doit contenir des balises |
|
22 |
Django(https://docs.djangoproject.com/en/dev/topics/templates/) définissant la |
|
23 |
structure personnalisée de la page. |
|
24 |
|
|
25 |
Il doit impérativement définir le block: |
|
26 |
|
|
27 |
```html |
|
28 |
{% block content %} |
|
29 |
{% endblock %} |
|
30 |
``` |
|
31 |
|
|
32 |
utilisé pour afficher la liste des fournisseurs d'identité et la formulaire de |
|
33 |
connexion invité. |
|
34 |
|
|
35 |
Feuilles de styles et les statics |
|
36 |
--------------------------------- |
|
37 |
|
|
38 |
Des feuilles de style peuvent être chargées par le fichier *base.html* défini |
|
39 |
précedemment de façon suivante: |
|
40 |
|
|
41 |
```html |
|
42 |
{% load staticfiles %} |
|
43 |
... |
|
44 |
<head> |
|
45 |
... |
|
46 |
<link href="{% static "entrouvert/eo.css" %}" media="all" rel="stylesheet" type="text/css" /> |
|
47 |
... |
|
48 |
</head> |
|
49 |
``` |
|
50 |
|
|
51 |
Afin que le fichier de style personnalisé *eo.css* soit chargé, il doit être |
|
52 |
préfixé par le *slug* de l'organisation dont le thème est modifié. |
|
53 |
|
|
54 |
Si l'organisation est *psl*, le static doit être défini de façon suivante: |
|
55 |
|
|
56 |
```html |
|
57 |
{% static "psl/eo.css" %} |
|
58 |
``` |
|
59 |
|
|
60 |
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: |
|
61 |
```html |
|
62 |
<img src="{% static "psl/logo.jpg" %}" /> |
|
63 |
``` |
|
64 |
|
|
65 |
Un exemple de thème est fourni dans le paquet debian sous */usr/share/u-auth/theme-example*, dont le rendu est le suivant: |
|
66 |
|
|
67 |
\ ![images/eo_theme.png](images/eo_theme.png) |
|
68 |
|
|
69 |
|
|
70 |
Federations |
|
71 |
=========== |
|
72 |
|
|
73 |
La liste des fournisseurs d'identité auprès desquels les utilisateurs peuvent |
|
74 |
être authentifiés peut être définie en chargeant des fichiers .xml des |
|
75 |
fédérations dans l'onglet *Fédérations* sur l'interface de gestion. |
|
76 |
|
|
77 |
Les fournisseurs d'identité présents dans ces fichiers seront affichés sur la |
|
78 |
page d'accueil. |
|
79 |
|
|
80 |
|
|
81 |
Comptes locaux |
|
82 |
============== |
|
83 |
|
|
84 |
Des comptes locaux peuvent être définis dans l'interface de gestion afin de |
|
85 |
permettre l'authentification sans utiliser un fournisseur d'identité. |
|
86 |
|
|
87 |
Les comptes peuvent être créés un par un ou plusieurs à la fois. |
|
88 |
|
|
89 |
\ ![images/create_users.png](images/create_users.png) |
|
90 |
|
|
91 |
Le champ *mot de passe* peut être omis lors de la création du compte, il sera |
|
92 |
auto-généré. Il peut ensuite être visualisé en cliquant sur le nom de l'utilisateur: |
|
93 |
|
|
94 |
\ ![images/local_user_details.png](images/local_user_details.png) |
|
95 |
|
|
96 |
Un compte utilisateur peut être desactivé à tout moment, soit une date |
|
97 |
d'expiration peut être définie. |
|
98 |
|
|
99 |
\ ![images/edit_local_account.png](images/edit_local_account.png) |
|
100 |
|
|
101 |
|
|
102 |
Importer des comptes à partir d'un fichier |
|
103 |
------------------------------------------ |
|
104 |
Les comptes locaux peuvent être également importé à partir d'un fichier *.csv* |
|
105 |
|
|
106 |
\ ![images/import_users.png](images/import_users.png) |
doc/index.html.build | ||
---|---|---|
12 | 12 |
</head> |
13 | 13 |
<body> |
14 | 14 |
<h1 id="logo"> |
15 |
<a href="/"><img src="http://www.entrouvert.com/static/eo/img/logo.png" alt="Entr'ouvert"></a> Gestion d'identité SUPANN — Documentation</h1>
|
|
15 |
<a href="/"><img src="http://www.entrouvert.com/static/eo/img/logo.png" alt="Entr'ouvert"></a> U-Auth — Documentation</h1>
|
|
16 | 16 |
<dl class="doc-index"> |
17 | 17 |
EOT |
18 | 18 |
|
19 |
for MD in configuration-pfsense.md |
|
19 |
for MD in install.md customize.md configuration-pfsense.md
|
|
20 | 20 |
do |
21 | 21 |
F=`basename $MD .md` |
22 | 22 |
TITLE=`head -1 $F.md | sed 's/.*-- //'` |
doc/install.md | ||
---|---|---|
1 |
% Installation et configuration |
|
2 |
% UAuth: Portail captif dans le Cloud |
|
3 |
% Entr'ouvert SCOP -- http://www.entrouvert.com |
|
4 |
|
|
5 |
Installation |
|
6 |
============ |
|
7 |
|
|
8 |
U-Auth est fourni sous forme d'un paquet debian téléchargeable. |
|
9 |
|
|
10 |
Pour l'installer il est nécessaire de rajouter le depot d'Entrouvert dans votre |
|
11 |
gestionnaire de paquets: |
|
12 |
<pre> |
|
13 |
deb http://deb.entrouvert.org/ wheezy-testing main |
|
14 |
</pre> |
|
15 |
ainsi que rajouter la clé GPG: |
|
16 |
<pre> |
|
17 |
wget -O - http://deb.entrouvert.org/entrouvert.gpg | sudo apt-key add - |
|
18 |
</pre> |
|
19 |
|
|
20 |
Installer le paquet: |
|
21 |
<pre> |
|
22 |
sudo apt-get install u-auth |
|
23 |
</pre> |
|
24 |
\ ![images/uauth_install.png](images/uauth_install.png) |
|
25 |
|
|
26 |
les paquets *freeradius* ainsi que *slapd* seront installés. |
|
27 |
|
|
28 |
Lors de la premiere installation u-auth demande la configuration de l'annuaire LDAP: |
|
29 |
|
|
30 |
\ ![images/ldap_config.png](images/ldap_config.png) |
|
31 |
|
|
32 |
une base ainsi qu'un compte administrateur seront crées. |
|
33 |
|
|
34 |
La configuration du serveur radius sera faite automatiquement afin qu'il puisse communiquer avec le serveur ldap. |
|
35 |
|
|
36 |
Configuration du serveur web |
|
37 |
============================ |
|
38 |
|
|
39 |
Le paquet fourni un exemple de fichier de configuration pour le serveur web |
|
40 |
nginx qui se trouve dans */usr/share/doc/u-auth/nginx-example.conf*. Ce fichier |
|
41 |
peut être utilisé en modifiant le nom du serveur ainsi que les certificats: |
|
42 |
|
|
43 |
<pre> |
|
44 |
server_name u-auth.example.org |
|
45 |
... |
|
46 |
ssl_certificate /etc/ssl/u-auth.example.org.pem; |
|
47 |
ssl_certificate_key /etc/ssl/u-auth.example.org.key; |
|
48 |
</pre> |
|
49 |
|
|
50 |
Parametrage de l'application |
|
51 |
============================ |
|
52 |
|
|
53 |
La configuration de l'application se trouve dans le fichier |
|
54 |
*/etc/u-auth/settings.py*. |
|
55 |
|
|
56 |
Ce fichier contient, au format du langage Python, les parametres de connexion à |
|
57 |
la base des données, nécessaire pour stocker les comptes locaux, les |
|
58 |
identifiants de connexion à l'annuaire LDAP. |
|
59 |
|
|
60 |
Base des données |
|
61 |
---------------- |
|
62 |
|
|
63 |
Le système de gestion des bases des données par défaut est sqlite. |
|
64 |
|
|
65 |
```python |
|
66 |
DATABASES = { |
|
67 |
'default': { |
|
68 |
'ENGINE': 'django.db.backends.sqlite3', |
|
69 |
'NAME': os.path.join(VAR_DIR, 'db.sqlite3'), |
|
70 |
} |
|
71 |
} |
|
72 |
``` |
|
73 |
|
|
74 |
Un autre SGBD peut-être configuré en changeant les valeurs de *ENGINE* et |
|
75 |
*NAME* ainsi qu'en rajoutant les paramètres de connexion: |
|
76 |
|
|
77 |
```python |
|
78 |
DATABASES = { |
|
79 |
'default': { |
|
80 |
'ENGINE': 'django.db.backends.postgresql_psycopg2', |
|
81 |
'NAME': 'db_name', |
|
82 |
'USER': 'db_user', |
|
83 |
'PASSWORD': 'db_user_password', |
|
84 |
'HOST': '' |
|
85 |
} |
|
86 |
} |
|
87 |
``` |
|
88 |
|
|
89 |
Annuaire LDAP |
|
90 |
------------- |
|
91 |
|
|
92 |
Afin que l'application puisse communiquer avec l'annuaire LDAP et écrire les |
|
93 |
données utilisateur, un compte ayant le droit d'écriture dans l'arbre utilisé |
|
94 |
par le serveur radius doit être défini. Par exemple: |
|
95 |
```python |
|
96 |
LDAP_CONF = { |
|
97 |
'url': 'ldap://localhost', |
|
98 |
'bind_dn': 'uid=admin,ou=people,dc=entrouvert,dc=org', |
|
99 |
'options': {}, |
|
100 |
'bind_passwd': '[mot de passe défini lors du parametrage du serveur ldap]', |
|
101 |
'dn': '[dn defini lors du parametrage du serveur ldap]' |
|
102 |
} |
|
103 |
``` |
|
104 |
|
|
105 |
#### Important!!! |
|
106 |
Après la manipulation du fichier */etc/u-auth/settings.py* l'application doit être redémarrée: |
|
107 |
<pre> |
|
108 |
sudo service u-auth restart |
|
109 |
</pre> |
|
110 |
|
|
111 |
|
|
112 |
Outils de gestion des serveurs freeradius et slapd |
|
113 |
-------------------------------------------------- |
|
114 |
|
|
115 |
Des outils de configuration et re-initialisation des serveurs freeradius et |
|
116 |
slapd sont fournis dans l'application: |
|
117 |
|
|
118 |
* reset-slapd |
|
119 |
* setup-slapd |
|
120 |
* setup-radius |
|
121 |
|
|
122 |
Ils peuvent être executés avec la commande */usr/lib/u-auth/u-auth* suivie du nom de l'outil. |
|
123 |
Par exemple: |
|
124 |
|
|
125 |
``` |
|
126 |
/usr/lib/u-auth/u-auth reset-slapd |
|
127 |
``` |
|
128 |
|
|
129 |
La page d'aide de l'outil est affichée en préfixant son nom par *help*: |
|
130 |
``` |
|
131 |
/usr/lib/u-auth/u-auth help setup-slapd |
|
132 |
``` |
|
133 |
|
|
134 |
|
Formats disponibles : Unified diff
doc update