1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
|
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />
<!--
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
This file is generated from xml source: DO NOT EDIT
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
-->
<title>htpasswd - Gestion des fichiers d'utilisateurs pour
l'authentification de base - Serveur HTTP Apache Version 2.5</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
<p class="apache">Serveur HTTP Apache Version 2.5</p>
<img alt="" src="../images/feather.png" /></div>
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.5</a> > <a href="./">Programmes</a></div><div id="page-content"><div id="preamble"><h1>htpasswd - Gestion des fichiers d'utilisateurs pour
l'authentification de base</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/programs/htpasswd.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/programs/htpasswd.html" title="Français"> fr </a> |
<a href="../ko/programs/htpasswd.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="../tr/programs/htpasswd.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div>
<p><code>htpasswd</code> permet de créer et de maintenir les
fichiers textes où sont stockés les noms d'utilisateurs et mots de
passe pour l'authentification de base des utilisateurs HTTP. Si
<code>htpasswd</code> rencontre un problème d'accès à un fichier,
que ce soit pour écrire dans le fichier de sortie, ou pour lire le
fichier d'entrée dans le but de le mettre à jour, il renvoie un code
d'erreur et n'effectue aucune modification.</p>
<p>Il est possible de limiter l'accès aux ressources du serveur HTTP
Apache aux seuls utilisateurs présents dans les fichiers créés par
<code>htpasswd</code>. Ce programme ne sait gérer les noms
d'utilisateurs et mots de passe que s'ils sont stockés dans des
fichiers textes. Il peut cependant hasher et afficher les mots de
passe à des fins d'utilisation dans d'autres types de bases de
données. Pour utiliser une base de données DBM, voir le programme
<code class="program"><a href="../programs/dbmmanage.html">dbmmanage</a></code> ou <code class="program"><a href="../programs/htdbm.html">htdbm</a></code>.</p>
<p><code>htpasswd</code> hashe les mots de passe en utilisant soit bcrypt,
une version de MD5 modifiée pour Apache, soit SHA1, soit la routine
<code>crypt()</code> du système. Les hashes basés sur SHA-2 (SHA-256 et
SHA-512) sont supportés pour <code>crypt()</code>. Les fichiers gérés par
<code>htpasswd</code> peuvent contenir deux types de mots de passe ;
certaines entrées peuvent contenir des mots de passe hashés en MD5 ou
bcrypt, alors que d'autres entrées du même fichier contiendront des mots de
passe hashés avec <code>crypt()</code>.</p>
<p>Cette page de manuel ne décrit que les arguments de la ligne de
commande. Pour plus de détails à propos des directives nécessaires à
la configuration de l'authentification des utilisateurs dans
<code class="program"><a href="../programs/httpd.html">httpd</a></code>, voir le manuel Apache qui est fourni avec
la distribution ou peut être consulté à <a href="http://httpd.apache.org">http://httpd.apache.org/</a>.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#synopsis">Syntaxe</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#options">Options</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#exit">Valeur renvoyée</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#examples">Exemples</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#security">Considérations à propos de sécurité</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#restrictions">Restrictions</a></li>
</ul><h3>Voir aussi</h3><ul class="seealso"><li><code class="program"><a href="../programs/httpd.html">httpd</a></code></li><li><code class="program"><a href="../programs/htdbm.html">htdbm</a></code></li><li>Les scripts fournis avec la distibution d'Apache et situés dans
support/SHA1.</li><li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="synopsis" id="synopsis">Syntaxe</a> <a title="Lien permanent" href="#synopsis" class="permalink">¶</a></h2>
<p><code><strong>htpasswd</strong>
[ -<strong>c</strong> ]
[ -<strong>i</strong> ]
[ -<strong>m</strong> |
-<strong>B</strong> |
-<strong>2</strong> |
-<strong>5</strong> |
-<strong>d</strong> |
-<strong>s</strong> |
-<strong>p</strong> ]
[ -<strong>r</strong> <var>rounds</var> ]
[ -<strong>C</strong> <var>cost</var> ]
[ -<strong>D</strong> ]
[ -<strong>v</strong> ] <var>fichier-mots-de-passe</var> <var>nom-utilisateur</var></code></p>
<p><code><strong>htpasswd</strong> -<strong>b</strong>
[ -<strong>c</strong> ]
[ -<strong>m</strong> |
-<strong>B</strong> |
-<strong>2</strong> |
-<strong>5</strong> |
-<strong>d</strong> |
-<strong>s</strong> |
-<strong>p</strong> ]
[ -<strong>r</strong> <var>rounds</var> ]
[ -<strong>C</strong> <var>cost</var> ]
[ -<strong>D</strong> ]
[ -<strong>v</strong> ] <var>fichier-mots-de-passe</var> <var>nom-utilisateur</var>
<var>mot-de-passe</var></code></p>
<p><code><strong>htpasswd</strong> -<strong>n</strong>
[ -<strong>i</strong> ]
[ -<strong>m</strong> |
-<strong>B</strong> |
-<strong>2</strong> |
-<strong>5</strong> |
-<strong>d</strong> |
-<strong>s</strong> |
-<strong>p</strong> ]
[ -<strong>r</strong> <var>rounds</var> ]
[ -<strong>C</strong> <var>cost</var> ] <var>nom-utilisateur</var></code></p>
<p><code><strong>htpasswd</strong> -<strong>nb</strong>
[ -<strong>m</strong> |
-<strong>B</strong> |
-<strong>2</strong> |
-<strong>5</strong> |
-<strong>d</strong> |
-<strong>s</strong> |
-<strong>p</strong> ]
[ -<strong>r</strong> <var>rounds</var> ]
[ -<strong>C</strong> <var>cost</var> ] <var>nom-utilisateur</var>
<var>mot-de-passe</var></code></p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="options" id="options">Options</a> <a title="Lien permanent" href="#options" class="permalink">¶</a></h2>
<dl>
<dt><code>-b</code></dt>
<dd>Utilise le mode batch ; c'est à dire, extrait le mot de passe de
la ligne de commande au lieu de le demander à l'opérateur. Cette
option doit être utilisée avec la plus grande prudence, car
<strong>le mot de passe est visible en clair</strong> dans la ligne
de commande. Pour utiliser un script, voir l'option
<code>-i</code>.<br />
Disponible à partir de la version 2.4.4 du serveur HTTP Apache.</dd>
<dt><code>-i</code></dt>
<dd>Lit le mot de passe depuis stdin sans vérification (à utiliser
dans les scripts).</dd>
<dt><code>-c</code></dt>
<dd>Crée le <var>fichier-mots-de-passe</var>. Si
<var>fichier-mots-de-passe</var> existe déjà, il est réécrit et
tronqué. Cette option ne peut pas être combinée avec l'option
<code>-n</code>.</dd>
<dt><code>-n</code></dt>
<dd>Affiche le résultat du traitement sur la sortie standard au lieu
de mettre à jour le fichier. Ceci peut s'avérer utile pour générer
des enregistrements de mots de passe qu'Apache pourra utiliser à des
fins d'inclusion dans des fichiers de données au format autre que
texte. Cette option modifie la syntaxe de la ligne de commande, car
l'argument <var>fichier-mots-de-passe</var> (en général le premier)
est omis. Elle ne peut pas être combinée avec l'option
<code>-c</code> option.</dd>
<dt><code>-m</code></dt>
<dd>Utilise le hashage MD5 pour les mots de passe. C'est le
comportement par défaut (depuis la version 2.2.18).</dd>
<dt><code>-2</code></dt>
<dd>Utilise des hashes basés sur SHA-256 <code>crypt()</code> pour les mots
de passe. Supporté par la plupart des plateformes de style Unix.</dd>
<dt><code>-5</code></dt>
<dd>Utilise des hashes basés sur SHA-512 <code>crypt()</code> pour les mots
de passe. Supporté par la plupart des plateformes de style Unix.</dd>
<dt><code>-B</code></dt>
<dd>Utilise bcrypt pour hasher les mots de passe. c'est un
algorythme de chiffrement actuellement considéré comme sûr.</dd>
<dt><code>-C</code></dt>
<dd>Ce drapeau n'est autorisé qu'en conjonction avec le drapeau
<code>-B</code> (hashage bcrypt). Il permet de définir la durée
de traitement pour l'algorytme bcrypt (plus elle est longue,
meilleure sera la sécurité, mais inférieure la rapidité). La valeur
par défaut est 5 et les valeurs autorisées vont de 4 à 17.</dd>
<dt><code>-r</code></dt>
<dd>Ce drapeau n'est autorisé qu'en combinaison avec un des drapeaux
<code>-2</code> ou <code>-5</code>. Il permet de définir le nombre de passes
de hash utilisées pour l'algorithme SHA-2 (plus ce nombre est élevé, plus la
sécurité est élevée, mais plus les performances se dégradent ; la valeur par
défaut est 5000).</dd>
<dt><code>-d</code></dt>
<dd>Utilise le hashage <code>crypt()</code> pour les mots de
passe. Cette option n'est pas supportée par le
serveur <code class="program"><a href="../programs/httpd.html">httpd</a></code> sous Windows ou Netware. Cet
algorithme limite la longueur des mots de passe à 8 caractères ; il
est considéré comme <strong>non sur</strong> du point de vue des
standards actuels. C'était l'algorithme par défaut jusqu'à la
version 2.2.17.</dd>
<dt><code>-s</code></dt>
<dd>Utilise le hashage SHA-1 (160 bits) pour les mots de passe. Facilite
la migration vers/depuis les serveurs Netscape qui utilisent le format LDAP
Directory Interchange (ldif). Cet algorithme est considéré comme <strong>non
sur</strong> du point de vue des standards actuels.</dd>
<dt><code>-p</code></dt>
<dd>Enregistre les mots de passe en clair. Bien que
<code>htpasswd</code> supporte la création des mots de passe en
clair sur toutes les plates-formes, le démon
<code class="program"><a href="../programs/httpd.html">httpd</a></code> n'accepte les mots de passe en clair que
sous Windows et Netware.</dd>
<dt><code>-D</code></dt>
<dd>Supprime un utilisateur, sous réserve qu'il existe dans le
fichier spécifié par htpasswd.</dd>
<dt><code>-v</code></dt>
<dd>Vérifie si le mot de passe fourni correspond au mot de passe de
l'utilisateur enregistré dans le fichier de mots de passe spécifié.<br />
Disponible à partir de la version 2.4.5 du serveur HTTP Apache.</dd>
<dt><code><var>fichier-mots-de-passe</var></code></dt>
<dd>Le nom du fichier contenant les noms d'utilisateurs et mots de
passe. Avec l'option <code>-c</code>, le fichier est créé s'il
n'existe pas, ou réécrit et tronqué s'il existe déjà.</dd>
<dt><code><var>nom-utilisateur</var></code></dt>
<dd>Le nom d'utilisateur à créer ou mettre à jour dans le
<var>fichier-mots-de-passe</var>. Si <var>nom-utilisateur</var>
n'existe pas, une nouvelle entrée est ajoutée. Dans le cas
contraire, le mot de passe est modifié.</dd>
<dt><code><var>mot-de-passe</var></code></dt>
<dd>Le mot de passe en clair et destiné à être hashé puis stocké
dans le fichier. Cet argument ne s'utilise qu'avec l'option
<code>-b</code>.</dd>
</dl>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="exit" id="exit">Valeur renvoyée</a> <a title="Lien permanent" href="#exit" class="permalink">¶</a></h2>
<p><code>htpasswd</code> renvoie 0 ("true") si le nom d'utilisateur
et le mot de passe ont été enregistrés ou mis à jour avec succès
dans le <var>fichier-mots-de-passe</var>. <code>htpasswd</code>
renvoie <code>1</code> s'il a rencontré un problème d'accès aux
fichiers, <code>2</code> si la ligne de commande comportait une
erreur de syntaxe, <code>3</code> si le mot de passe entré
interactivement ne correspondait pas au nom d'utilisateur,
<code>4</code> si l'opération a été interrompue, <code>5</code> si
une valeur était trop longue (nom-utilisateur, nom-fichier,
mot-de-passe, ou l'enregistrement résultant), <code>6</code> si le
nom d'utilisateur contenait des caractères illégaux (voir la section
<a href="#restrictions">Restrictions</a>), et <code>7</code> si le
fichier spécifié n'était pas un fichier de mots de passe
valide.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="examples" id="examples">Exemples</a> <a title="Lien permanent" href="#examples" class="permalink">¶</a></h2>
<div class="example"><p><code>
htpasswd /usr/local/etc/apache/.utilisateurs-htpasswd jsmith
</code></p></div>
<p>Ajoute ou modifie le mot de passe de l'utilisateur
<code>jsmith</code>. Le mot de passe est demandé à l'opérateur. Le
mot de passe sera hashé en utilisant l'algorithme MD5
modifié pour Apache. Si le fichier spécifié
n'existe pas, <code>htpasswd</code> renverra un code d'erreur.</p>
<div class="example"><p><code>
htpasswd -c /home/doe/public_html/.htpasswd jane
</code></p></div>
<p>Crée un nouveau fichier de mots de passe et y enregistre une
entrée pour l'utilisateur <code>jane</code>. Le mot de passe est
demandé à l'opérateur. Si le fichier existe et ne peut être ni lu ni
écrit, il n'est pas modifié et <code>htpasswd</code> affichera un
message et renverra un code d'erreur.</p>
<div class="example"><p><code>
htpasswd -db /usr/web/.htpasswd-tous jones Pwd4Steve
</code></p></div>
<p>Chiffre le mot de passe spécifié dans la ligne de commande
(<code>Pwd4Steve</code>) en utilisant l'algorithme
<code>crypt()</code>, et le stocke dans le fichier spécifié.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="security" id="security">Considérations à propos de sécurité</a> <a title="Lien permanent" href="#security" class="permalink">¶</a></h2>
<p>Les fichiers de mots de passe Web comme ceux que gère
<code>htpasswd</code> ne doivent <em>pas</em> être situés dans
l'espace d'URI du serveur Web -- en d'autres termes, il ne doit pas
être possible d'y accéder à partir d'un navigateur.</p>
<p>En tant qu'exécutable setuid, ce programme n'est pas sûr, et il
ne faut par conséquent <em>pas</em> lui attribuer de permissions
setuid.</p>
<p>L'utilisation de l'option <code>-b</code> est déconseillée, car
avec elle, les mots de passe apparaissent en clair dans la ligne de
commande.</p>
<p>Notez qu'avec l'algorithme <code>crypt()</code>, seuls les huit
premiers caractères du mot de passe spécifié sont pris en compte. Si
le mot de passe spécifié est plus long, les caractères
supplémentaires sont ignorés.</p>
<p>Le format de hashage SHA-1 n'utilise pas d'amorçage aléatoire
(salting) : à un mot de passe donné correspond une seule
représentation hashée. Les formats <code>crypt()</code> et MD5
permutent la représentation en la préfixant par une chaîne d'amorce
aléatoire, afin de rendre les attaques de mots de passe à base de
dictionnaires plus difficiles.</p>
<p>Les algorithmes de chiffrement SHA-1 et <code>crypt()</code>
sont considérés comme <strong>non surs</strong> du point de vue des
standards actuels.</p>
<p>Les algorithmes de chiffrement SHA-2 (SHA-256 et SHA-512) sont supportés
par la plupart des systèmes de style Unix modernes et respectent la
spécification <a href="https://www.akkadia.org/drepper/SHA-crypt.txt">https://www.akkadia.org/drepper/SHA-crypt.txt</a>.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="restrictions" id="restrictions">Restrictions</a> <a title="Lien permanent" href="#restrictions" class="permalink">¶</a></h2>
<p>Sur les plates-formes Windows, la taille des mots de passe
hashés avec <code>htpasswd</code> est limitée à <code>255</code>
caractères. Les mots de passe dont la taille est supérieure seront
tronqués.</p>
<p>L'algorithme MD5 utilisé par <code>htpasswd</code> est spécifique
à Apache ; les mots de passe hashés en utilisant cet algorithme
seront inutilisables sur d'autres serveurs Web.</p>
<p>La taille des noms d'utilisateurs est limitée à <code>255</code>
octets et ceux-ci ne doivent pas contenir de caractère
<code>:</code>.</p>
<p>Le coût en performances de la génération de la valeur de hashage d'un mot
de passe bcrypt augmente avec le nombre de passes spécifié par l'option
<code>-C</code>. A partir de sa version <code>1.6.0</code>, la bibliothèque
<code>apr-util</code> limite le nombre de passes à 17.</p>
</div></div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/programs/htpasswd.html" hreflang="en" rel="alternate" title="English"> en </a> |
<a href="../fr/programs/htpasswd.html" title="Français"> fr </a> |
<a href="../ko/programs/htpasswd.html" hreflang="ko" rel="alternate" title="Korean"> ko </a> |
<a href="../tr/programs/htpasswd.html" hreflang="tr" rel="alternate" title="Türkçe"> tr </a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Libera.chat, or sent to our <a href="https://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/trunk/programs/htpasswd.html';
(function(w, d) {
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
d.write('<div id="comments_thread"><\/div>');
var s = d.createElement('script');
s.type = 'text/javascript';
s.async = true;
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
}
else {
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
}
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2023 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
prettyPrint();
}
//--><!]]></script>
</body></html>
|