From 85b297f5cd0ff3d217719612ff8bec84bf868e67 Mon Sep 17 00:00:00 2001 From: "Jason S. Lingohr" Date: Wed, 13 Apr 2005 23:14:58 +0000 Subject: Backport of htdbm documentation addition, as submitted by Matt Brubeck . Add manpage, update transformations, add props. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/branches/2.0.x@161235 13f79535-47bb-0310-9956-ffa450edef68 --- docs/manual/programs/configure.html.en | 3 +- docs/manual/programs/configure.xml | 4 +- docs/manual/programs/htdbm.html | 3 + docs/manual/programs/htdbm.html.en | 281 +++++++++++++++++++++++++++++++++ docs/manual/programs/htdbm.xml | 276 ++++++++++++++++++++++++++++++++ docs/manual/programs/htdbm.xml.meta | 11 ++ docs/manual/programs/index.html.en | 4 + docs/manual/programs/index.xml | 4 + 8 files changed, 582 insertions(+), 4 deletions(-) create mode 100644 docs/manual/programs/htdbm.html create mode 100644 docs/manual/programs/htdbm.html.en create mode 100644 docs/manual/programs/htdbm.xml create mode 100644 docs/manual/programs/htdbm.xml.meta (limited to 'docs/manual/programs') diff --git a/docs/manual/programs/configure.html.en b/docs/manual/programs/configure.html.en index d54e33babe..93e001709e 100644 --- a/docs/manual/programs/configure.html.en +++ b/docs/manual/programs/configure.html.en @@ -809,9 +809,8 @@
--enable-static-checkgid
Build a statically linked version of checkgid.
-
--enable-static-htdbm
-
Build a statically linked version of htdbm.
+
Build a statically linked version of htdbm.
--enable-static-htdigest
Build a statically linked version of htdigest.
diff --git a/docs/manual/programs/configure.xml b/docs/manual/programs/configure.xml index 4c3129bb0f..0cd0835da7 100644 --- a/docs/manual/programs/configure.xml +++ b/docs/manual/programs/configure.xml @@ -820,9 +820,9 @@
--enable-static-checkgid
Build a statically linked version of checkgid.
-
--enable-static-htdbm
-
Build a statically linked version of htdbm.
+
Build a statically linked version of + htdbm.
--enable-static-htdigest
Build a statically linked version of diff --git a/docs/manual/programs/htdbm.html b/docs/manual/programs/htdbm.html new file mode 100644 index 0000000000..ad1f2a2867 --- /dev/null +++ b/docs/manual/programs/htdbm.html @@ -0,0 +1,3 @@ +URI: htdbm.html.en +Content-Language: en +Content-type: text/html; charset=ISO-8859-1 diff --git a/docs/manual/programs/htdbm.html.en b/docs/manual/programs/htdbm.html.en new file mode 100644 index 0000000000..8b3be462ec --- /dev/null +++ b/docs/manual/programs/htdbm.html.en @@ -0,0 +1,281 @@ + + + +htdbm - Manipulate DBM password databases - Apache HTTP Server + + + + + +
<-
+

htdbm - Manipulate DBM password databases

+
+

Available Languages:  en 

+
+ +

htdbm is used to manipulate the DBM format files used to + store usernames and password for basic authentication of HTTP users via + mod_auth_dbm. See the dbmmanage + documentation for more information about these DBM files.

+
+ +
top
+
+

Synopsis

+

htdbm + [ -TDBTYPE ] + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + [ -x ] + filename username

+ +

htdbm -b + [ -TDBTYPE ] + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + filename username password

+ +

htdbm -n + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + username

+ +

htdbm -nb + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + username password

+ +

htdbm -v + [ -TDBTYPE ] + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + filename username

+ +

htdbm -vb + [ -TDBTYPE ] + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + filename username password

+ +

htdbm -x + [ -TDBTYPE ] + [ -m | + -d | + -p | + -s ] + filename username

+ +

htdbm -l + [ -TDBTYPE ] +

+
top
+
+

Options

+
+
-b
+
Use batch mode; i.e., get the password from the command line + rather than prompting for it. This option should be used with extreme care, + since the password is clearly visible on the command + line.
+ +
-c
+
Create the passwdfile. If passwdfile already + exists, it is rewritten and truncated. This option cannot be combined with + the -n option.
+ +
-n
+
Display the results on standard output rather than updating a + database. This option changes the syntax of the command line, since the + passwdfile argument (usually the first one) is omitted. It + cannot be combined with the -c option.
+ +
-m
+
Use MD5 encryption for passwords. On Windows, Netware and TPF, this is + the default.
+ +
-d
+
Use crypt() encryption for passwords. The default on all + platforms but Windows, Netware and TPF. Though possibly supported by + htdbm on all platforms, it is not supported by the + httpd server on Windows, Netware and TPF.
+ +
-s
+
Use SHA encryption for passwords. Facilitates migration from/to Netscape + servers using the LDAP Directory Interchange Format (ldif).
+ +
-p
+
Use plaintext passwords. Though htdbm will support + creation on all platforms, the httpd daemon will + only accept plain text passwords on Windows, Netware and TPF.
+ +
-l
+
Print each of the usernames and comments from the database on + stdout.
+ +
-t
+
Interpret the final parameter as a comment. When this option is + specified, an additional string can be appended to the command line; this + string will be stored in the "Comment" field of the database, associated + with the specified username.
+ +
-v
+
Verify the username and password. The program will print a message + indicating whether the supplied password is valid. If the password is + invalid, the program exits with error code 3.
+ +
-x
+
Delete user. If the username exists in the specified DBM file, it + will be deleted.
+ +
filename
+
The filename of the DBM format file. Usually without the extension + .db, .pag, or .dir. If + -c is given, the DBM file is created if it does not already + exist, or updated if it does exist.
+ +
username
+
The username to create or update in passwdfile. If + username does not exist in this file, an entry is added. If it + does exist, the password is changed.
+ +
password
+
The plaintext password to be encrypted and stored in the DBM file. + Used only with the -b flag.
+ +
-TDBTYPE
+
Type of DBM file (SDBM, GDBM, DB, or "default").
+
+
top
+
+

Bugs

+

One should be aware that there are a number of different DBM file + formats in existence, and with all likelihood, libraries for more than + one format may exist on your system. The three primary examples are + SDBM, NDBM, GNU GDBM, and Berkeley/Sleepycat DB 2/3/4. Unfortunately, + all these libraries use different file formats, and you must make sure + that the file format used by filename is the same format that + htdbm expects to see. htdbm currently has + no way of determining what type of DBM file it is looking at. If used + against the wrong format, will simply return nothing, or may create a + different DBM file with a different name, or at worst, it may corrupt + the DBM file if you were attempting to write to it.

+ +

One can usually use the file program supplied with most + Unix systems to see what format a DBM file is in.

+
top
+
+

Exit Status

+

htdbm returns a zero status ("true") if the username and + password have been successfully added or updated in the DBM File. + htdbm returns 1 if it encounters some problem + accessing files, 2 if there was a syntax problem with the + command line, 3 if the password was entered interactively and + the verification entry didn't match, 4 if its operation was + interrupted, 5 if a value is too long (username, filename, + password, or final computed record), 6 if the username + contains illegal characters (see the Restrictions + section), and 7 if the file is not a valid DBM password + file.

+
top
+
+

Examples

+

+ htdbm /usr/local/etc/apache/.htdbm-users jsmith +

+ +

Adds or modifies the password for user jsmith. The user + is prompted for the password. If executed on a Windows system, the password + will be encrypted using the modified Apache MD5 algorithm; otherwise, the + system's crypt() routine will be used. If the file does not + exist, htdbm will do nothing except return an error.

+ +

+ htdbm -c /home/doe/public_html/.htdbm jane +

+ +

Creates a new file and stores a record in it for user jane. + The user is prompted for the password. If the file exists and cannot be + read, or cannot be written, it is not altered and htdbm + will display a message and return an error status.

+ +

+ htdbm -mb /usr/web/.htdbm-all jones Pwd4Steve +

+ +

Encrypts the password from the command line (Pwd4Steve) + using the MD5 algorithm, and stores it in the specified file.

+
top
+
+

Security Considerations

+

Web password files such as those managed by htdbm should + not be within the Web server's URI space -- that is, they should + not be fetchable with a browser.

+ +

The use of the -b option is discouraged, since when it is + used the unencrypted password appears on the command line.

+
top
+
+

Restrictions

+

On the Windows and MPE platforms, passwords encrypted with + htdbm are limited to no more than 255 + characters in length. Longer passwords will be truncated to 255 + characters.

+ +

The MD5 algorithm used by htdbm is specific to the Apache + software; passwords encrypted using it will not be usable with other Web + servers.

+ +

Usernames are limited to 255 bytes and may not include the + character :.

+
+
+

Available Languages:  en 

+
+ \ No newline at end of file diff --git a/docs/manual/programs/htdbm.xml b/docs/manual/programs/htdbm.xml new file mode 100644 index 0000000000..03890eda8f --- /dev/null +++ b/docs/manual/programs/htdbm.xml @@ -0,0 +1,276 @@ + + + + + + + + +Programs + +htdbm - Manipulate DBM password databases + + +

htdbm is used to manipulate the DBM format files used to + store usernames and password for basic authentication of HTTP users via + mod_auth_dbm. See the dbmmanage + documentation for more information about these DBM files.

+
+httpd +dbmmanage +mod_auth_dbm + +
Synopsis +

htdbm + [ -TDBTYPE ] + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + [ -x ] + filename username

+ +

htdbm -b + [ -TDBTYPE ] + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + filename username password

+ +

htdbm -n + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + username

+ +

htdbm -nb + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + username password

+ +

htdbm -v + [ -TDBTYPE ] + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + filename username

+ +

htdbm -vb + [ -TDBTYPE ] + [ -c ] + [ -m | + -d | + -p | + -s ] + [ -t ] + [ -v ] + filename username password

+ +

htdbm -x + [ -TDBTYPE ] + [ -m | + -d | + -p | + -s ] + filename username

+ +

htdbm -l + [ -TDBTYPE ] +

+
+ +
Options +
+
-b
+
Use batch mode; i.e., get the password from the command line + rather than prompting for it. This option should be used with extreme care, + since the password is clearly visible on the command + line.
+ +
-c
+
Create the passwdfile. If passwdfile already + exists, it is rewritten and truncated. This option cannot be combined with + the -n option.
+ +
-n
+
Display the results on standard output rather than updating a + database. This option changes the syntax of the command line, since the + passwdfile argument (usually the first one) is omitted. It + cannot be combined with the -c option.
+ +
-m
+
Use MD5 encryption for passwords. On Windows, Netware and TPF, this is + the default.
+ +
-d
+
Use crypt() encryption for passwords. The default on all + platforms but Windows, Netware and TPF. Though possibly supported by + htdbm on all platforms, it is not supported by the + httpd server on Windows, Netware and TPF.
+ +
-s
+
Use SHA encryption for passwords. Facilitates migration from/to Netscape + servers using the LDAP Directory Interchange Format (ldif).
+ +
-p
+
Use plaintext passwords. Though htdbm will support + creation on all platforms, the httpd daemon will + only accept plain text passwords on Windows, Netware and TPF.
+ +
-l
+
Print each of the usernames and comments from the database on + stdout.
+ +
-t
+
Interpret the final parameter as a comment. When this option is + specified, an additional string can be appended to the command line; this + string will be stored in the "Comment" field of the database, associated + with the specified username.
+ +
-v
+
Verify the username and password. The program will print a message + indicating whether the supplied password is valid. If the password is + invalid, the program exits with error code 3.
+ +
-x
+
Delete user. If the username exists in the specified DBM file, it + will be deleted.
+ +
filename
+
The filename of the DBM format file. Usually without the extension + .db, .pag, or .dir. If + -c is given, the DBM file is created if it does not already + exist, or updated if it does exist.
+ +
username
+
The username to create or update in passwdfile. If + username does not exist in this file, an entry is added. If it + does exist, the password is changed.
+ +
password
+
The plaintext password to be encrypted and stored in the DBM file. + Used only with the -b flag.
+ +
-TDBTYPE
+
Type of DBM file (SDBM, GDBM, DB, or "default").
+
+
+ +
Bugs +

One should be aware that there are a number of different DBM file + formats in existence, and with all likelihood, libraries for more than + one format may exist on your system. The three primary examples are + SDBM, NDBM, GNU GDBM, and Berkeley/Sleepycat DB 2/3/4. Unfortunately, + all these libraries use different file formats, and you must make sure + that the file format used by filename is the same format that + htdbm expects to see. htdbm currently has + no way of determining what type of DBM file it is looking at. If used + against the wrong format, will simply return nothing, or may create a + different DBM file with a different name, or at worst, it may corrupt + the DBM file if you were attempting to write to it.

+ +

One can usually use the file program supplied with most + Unix systems to see what format a DBM file is in.

+
+ +
Exit Status +

htdbm returns a zero status ("true") if the username and + password have been successfully added or updated in the DBM File. + htdbm returns 1 if it encounters some problem + accessing files, 2 if there was a syntax problem with the + command line, 3 if the password was entered interactively and + the verification entry didn't match, 4 if its operation was + interrupted, 5 if a value is too long (username, filename, + password, or final computed record), 6 if the username + contains illegal characters (see the Restrictions + section), and 7 if the file is not a valid DBM password + file.

+
+ +
Examples + + htdbm /usr/local/etc/apache/.htdbm-users jsmith + + +

Adds or modifies the password for user jsmith. The user + is prompted for the password. If executed on a Windows system, the password + will be encrypted using the modified Apache MD5 algorithm; otherwise, the + system's crypt() routine will be used. If the file does not + exist, htdbm will do nothing except return an error.

+ + + htdbm -c /home/doe/public_html/.htdbm jane + + +

Creates a new file and stores a record in it for user jane. + The user is prompted for the password. If the file exists and cannot be + read, or cannot be written, it is not altered and htdbm + will display a message and return an error status.

+ + + htdbm -mb /usr/web/.htdbm-all jones Pwd4Steve + + +

Encrypts the password from the command line (Pwd4Steve) + using the MD5 algorithm, and stores it in the specified file.

+
+ +
Security Considerations +

Web password files such as those managed by htdbm should + not be within the Web server's URI space -- that is, they should + not be fetchable with a browser.

+ +

The use of the -b option is discouraged, since when it is + used the unencrypted password appears on the command line.

+
+ +
Restrictions +

On the Windows and MPE platforms, passwords encrypted with + htdbm are limited to no more than 255 + characters in length. Longer passwords will be truncated to 255 + characters.

+ +

The MD5 algorithm used by htdbm is specific to the Apache + software; passwords encrypted using it will not be usable with other Web + servers.

+ +

Usernames are limited to 255 bytes and may not include the + character :.

+
+ +
diff --git a/docs/manual/programs/htdbm.xml.meta b/docs/manual/programs/htdbm.xml.meta new file mode 100644 index 0000000000..459f367544 --- /dev/null +++ b/docs/manual/programs/htdbm.xml.meta @@ -0,0 +1,11 @@ + + + + htdbm + /programs/ + .. + + + en + + diff --git a/docs/manual/programs/index.html.en b/docs/manual/programs/index.html.en index 165d77490f..f3b0a4caf2 100644 --- a/docs/manual/programs/index.html.en +++ b/docs/manual/programs/index.html.en @@ -62,6 +62,10 @@
Create and update user authentication files for digest authentication
+
htdbm
+ +
Manipulate DBM password databases.
+
htpasswd
Create and update user authentication files for basic diff --git a/docs/manual/programs/index.xml b/docs/manual/programs/index.xml index c5c02fbc11..8498a48d9b 100644 --- a/docs/manual/programs/index.xml +++ b/docs/manual/programs/index.xml @@ -63,6 +63,10 @@
Create and update user authentication files for digest authentication
+
htdbm
+ +
Manipulate DBM password databases.
+
htpasswd
Create and update user authentication files for basic -- cgit v1.2.1