summaryrefslogtreecommitdiff
path: root/docs/manual/howto
diff options
context:
space:
mode:
authorYoshiki Hayashi <yoshiki@apache.org>2002-06-06 07:24:32 +0000
committerYoshiki Hayashi <yoshiki@apache.org>2002-06-06 07:24:32 +0000
commitffe7519b15442b4fe9634eff1d6ad4ae4bcd3703 (patch)
tree9576e8d30b13ee72177f67367220f6f85372660e /docs/manual/howto
parentec6be43c104d4da4cb0d5bbbba374ceb64192e37 (diff)
downloadhttpd-ffe7519b15442b4fe9634eff1d6ad4ae4bcd3703.tar.gz
New Japanese translation.
Submitted by: Hiroaki KAWAI <hawk@bcl.t.u-tokyo.ac.jp> Reviewed by: Yoshiki Hayashi git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@95544 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'docs/manual/howto')
-rw-r--r--docs/manual/howto/auth.html379
-rw-r--r--docs/manual/howto/auth.html.ja.jis398
2 files changed, 398 insertions, 379 deletions
diff --git a/docs/manual/howto/auth.html b/docs/manual/howto/auth.html
deleted file mode 100644
index 3ea56e4508..0000000000
--- a/docs/manual/howto/auth.html
+++ /dev/null
@@ -1,379 +0,0 @@
-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
-
-<html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta name="generator" content="HTML Tidy, see www.w3.org" />
-
- <title>Authentication</title>
- <link rev="made" href="mailto:rbowen@rcbowen.com" />
- </head>
- <!-- Background white, links blue (unvisited), navy (visited), red (active) -->
-
- <body bgcolor="#FFFFFF" text="#000000" link="#0000FF"
- vlink="#000080" alink="#FF0000">
- <!--#include virtual="header.html" -->
-
- <h1 align="center">Authentication</h1>
- <a id="__index__" name="__index__"></a> <!-- INDEX BEGIN -->
-
-
- <ul>
- <li><a href="#introduction">Introduction</a></li>
-
- <li><a href="#theprerequisites">The prerequisites</a></li>
-
- <li><a href="#gettingitworking">Getting it working</a></li>
-
- <li><a href="#lettingmorethanonepersonin">Letting more
- than one person in</a></li>
-
- <li><a href="#possibleproblems">Possible problems</a></li>
-
- <li><a href="#whatotherneatstuffcanido">What other neat
- stuff can I do?</a></li>
-
- <li><a href="#moreinformation">More information</a></li>
- </ul>
- <!-- INDEX END -->
- <hr />
-
- <table border="1">
- <tr>
- <td valign="top"><strong>Related Modules</strong><br />
- <br />
- <a href="../mod/mod_auth.html">mod_auth</a><br />
- <a href="../mod/mod_access.html">mod_access</a><br />
- </td>
-
- <td valign="top"><strong>Related Directives</strong><br />
- <br />
- <a href="../mod/mod_access.html#allow">Allow</a><br />
- <a
- href="../mod/mod_auth.html#authgroupfile">AuthGroupFile</a><br />
- <a href="../mod/core.html#authname">AuthName</a><br />
- <a href="../mod/core.html#authtype">AuthType</a><br />
- <a
- href="../mod/mod_auth.html#authuserfile">AuthUserFile</a><br />
- <a href="../mod/mod_access.html#deny">Deny</a><br />
- <a href="../mod/core.html#options">Options</a><br />
- <a href="../mod/core.html#require">Require</a><br />
- </td>
- </tr>
- </table>
-
- <h1><a id="authentication"
- name="authentication">Authentication</a></h1>
-
- <p>Authentication is any process by which you verify that
- someone is who they claim they are. Authorization is any
- process by which someone is allowed to be where they want to
- go, or to have information that they want to have.</p>
-
- <h2><a id="introduction"
- name="introduction">Introduction</a></h2>
-
- <p>If you have information on your web site that is sensitive
- or intended for only a small group of people, the techniques in
- this article will help you make sure that the people that see
- those pages are the people that you wanted to see them.</p>
-
- <p>This article covers the "standard" way of protecting parts
- of your web site that most of you are going to use.</p>
-
- <h2><a id="theprerequisites" name="theprerequisites">The
- prerequisites</a></h2>
-
- <p>The directives discussed in this article will need to go
- either in your main server configuration file (typically in a
- &lt;Directory&gt; section), or in per-directory configuration
- files (<code>.htaccess</code> files).</p>
-
- <p>If you plan to use <code>.htaccess</code> files, you will
- need to have a server configuration that permits putting
- authentication directives in these files. This is done with the
- <code><a
- href="../mod/core.html#allowoverride">AllowOverride</a></code>
- directive, which specifies which directives, if any, may be put
- in per-directory configuration files.</p>
-
- <p>Since we're talking here about authentication, you will need
- an <code>AllowOverride</code> directive like the following:</p>
-<pre>
- AllowOverride AuthConfig
-</pre>
-
- <p>Or, if you are just going to put the directives directly in
- your main server configuration file, you will of course need to
- have write permission to that file.</p>
-
- <p>And you'll need to know a little bit about the directory
- structure of your server, in order to know where some files are
- kept. This should not be terribly difficult, and I'll try to
- make this clear when we come to that point.</p>
-
- <h2><a id="gettingitworking"
- name="gettingitworking">Getting it working</a></h2>
-
- <p>Here's the basics of password protecting a directory on your
- server.</p>
-
- <p>You'll need to create a password file. This file should be
- placed somewhere not accessible from the web. This is so that
- folks cannot download the password file. For example, if your
- documents are served out of
- <code>/usr/local/apache/htdocs</code> you might want to put the
- password file(s) in <code>/usr/local/apache/passwd</code>.</p>
-
- <p>To create the file, use the <a
- href="../programs/htpasswd.html">htpasswd</a> utility that came
- with Apache. This be located in the <code>bin</code> directory
- of wherever you installed Apache. To create the file, type:</p>
-<pre>
- htpasswd -c /usr/local/apache/passwd/password rbowen
-</pre>
-
- <p><code>htpasswd</code> will ask you for the password, and
- then ask you to type it again to confirm it:</p>
-<pre>
- # htpasswd -c /usr/local/apache/passwd/passwords rbowen
- New password: mypassword
- Re-type new password: mypassword
- Adding password for user rbowen
-</pre>
-
- <p>If <code>htpasswd</code> is not in your path, of course
- you'll have to type the full path to the file to get it to run.
- On my server, it's located at
- <code>/usr/local/apache/bin/htpasswd</code></p>
-
- <p>Next, you'll need to configure the server to request a
- password and tell the server which users are allowed access.
- You can do this either by editing the <code>httpd.conf</code>
- file or using an <code>.htaccess</code> file. For example, if
- you wish to protect the directory
- <code>/usr/local/apache/htdocs/secret</code>, you can use the
- following directives, either placed in the file
- <code>/usr/local/apache/htdocs/secret/.htaccess</code>, or
- placed in httpd.conf inside a &lt;Directory
- /usr/local/apache/apache/htdocs/secret&gt; section.</p>
-<pre>
- AuthType Basic
- AuthName "Restricted Files"
- AuthUserFile /usr/local/apache/passwd/passwords
- require user rbowen
-</pre>
-
- <p>Let's examine each of those directives individually. The <a
- href="../mod/core.html#authtype">AuthType</a> directive selects
- that method that is used to authenticate the user. The most
- common method is <code>Basic</code>, and this is the method
- implemented by <a href="../mod/mod_auth.html">mod_auth</a>. It
- is important to be aware, however, that Basic authentication
- sends the password from the client to the browser unencrypted.
- This method should therefore not be used for highly sensitive
- data. Apache supports one other authentication method:
- <code>AuthType Digest</code>. This method is implemented by <a
- href="../mod/mod_auth_digest.html">mod_auth_digest</a> and is
- much more secure. Only the most recent versions of clients are
- known to support Digest authentication.</p>
-
- <p>The <a href="../mod/core.html#authname">AuthName</a>
- directive sets the <em>Realm</em> to be used in the
- authentication. The realm serves two major functions. First,
- the client often presents this information to the user as part
- of the password dialog box. Second, it is used by the client to
- determine what password to send for a given authenticated area.
- So, for example, once a client has authenticated in the
- <code>"Restricted Files"</code> area, it will automatically
- retry the same password for any area on the same server that is
- marked with the <code>"Restricted Files"</code> Realm.
- Therefore, you can prevent a user from being prompted more than
- once for a password by letting multiple restricted areas share
- the same realm. Of course, for security reasons, the client
- will always need to ask again for the password whenever the
- hostname of the server changes.</p>
-
- <p>The <a
- href="../mod/mod_auth.html#authuserfile">AuthUserFile</a>
- directive sets the path to the password file that we just
- created with <code>htpasswd</code>. If you have a large number
- of users, it can be quite slow to search through a plain text
- file to authenticate the user on each request. Apache also has
- the ability to store user information in fast database files.
- The <a href="../mod/mod_auth_dbm.html">mod_auth_dbm</a> module
- provides the <a
- href="../mod/mod_auth_dbm.html#authdbmuserfile">AuthDBMUserFile</a>
- directive. These files can be created and
- manipulated with the <a
- href="../programs/dbmmanage.html">dbmmanage</a> program. Many
- other types of authentication options are available from third
- party modules in the <a
- href="http://modules.apache.org/">Apache Modules
- Database</a>.</p>
-
- <p>Finally, the <a href="../mod/core.html#require">require</a>
- directive provides the authorization part of the process by
- setting the user that is allowed to access this region of the
- server. In the next section, we discuss various ways to use the
- <code>require</code> directive.</p>
-
- <h2><a id="lettingmorethanonepersonin"
- name="lettingmorethanonepersonin">Letting more than one
- person in</a></h2>
-
- <p>The directives above only let one person (specifically
- someone with a username of <code>rbowen</code>) into the
- directory. In most cases, you'll want to let more than one
- person in. This is where the <a
- href="../mod/mod_auth.html#authgroupfile">AuthGroupFile</a>
- comes in.</p>
-
- <p>If you want to let more than one person in, you'll need to
- create a group file that associates group names with a list of
- users in that group. The format of this file is pretty simple,
- and you can create it with your favorite editor. The contents
- of the file will look like this:</p>
-<pre>
- GroupName: rbowen dpitts sungo rshersey
-</pre>
-
- <p>That's just a list of the members of the group in a long
- line separated by spaces.</p>
-
- <p>To add a user to your already existing password file,
- type:</p>
-<pre>
- htpasswd /usr/local/apache/passwd/password dpitts
-</pre>
-
- <p>You'll get the same response as before, but it will be
- appended to the existing file, rather than creating a new file.
- (It's the <code>-c</code> that makes it create a new password
- file).</p>
-
- <p>Now, you need to modify your <code>.htaccess</code> file to
- look like the following:</p>
-<pre>
- AuthType Basic
- AuthName "By Invitation Only"
- AuthUserFile /usr/local/apache/passwd/passwords
- AuthGroupFile /usr/local/apache/passwd/groups
- require group GroupName
-</pre>
-
- <p>Now, anyone that is listed in the group
- <code>GroupName</code>, and has an entry in the
- <code>password</code> file, will be let in, if they type the
- correct password.</p>
-
- <p>There's another way to let multiple users in that is less
- specific. Rather than creating a group file, you can just use
- the following directive:</p>
-<pre>
- require valid-user
-</pre>
-
- <p>Using that rather than the <code>require user rbowen</code>
- line will allow anyone in that is listed in the password file,
- and who correctly enters their password. You can even emulate
- the group behavior here, by just keeping a separate password
- file for each group. The advantage of this approach is that
- Apache only has to check one file, rather than two. The
- disadvantage is that you have to maintain a bunch of password
- files, and remember to reference th right one in the
- <code>AuthUserFile</code> directive.</p>
-
- <h2><a id="possibleproblems" name="possibleproblems">Possible
- problems</a></h2>
-
- <p>Because of the way that Basic authentication is specified,
- your username and password must be verified every time you
- request a document from the server. This is even if you're
- reloading the same page, and for every image on the page (if
- they come from a protected directory). As you can imagine, this
- slows things down a little. The amount that it slows things
- down is proportional to the size of the password file, because
- it has to open up that file, and go down the list of users
- until it gets to your name. And it has to do this every time a
- page is loaded.</p>
-
- <p>A consequence of this is that there's a practical limit to
- how many users you can put in one password file. This limit
- will vary depending on the performance of your particular
- server machine, but you can expect to see slowdowns once you
- get above a few hundred entries, and may wish to consider a
- different authentication method at that time.</p>
-
- <h2><a id="whatotherneatstuffcanido"
- name="whatotherneatstuffcanido">What other neat stuff can
- I do?</a></h2>
-
- <p>Authentication by username and password is only part of the
- story. Frequently you want to let people in based on something
- other than who they are. Something such as where they are
- coming from.</p>
-
- <p>The <code>allow</code> and <code>deny</code> directives let
- you allow and deny access based on the host name, or host
- address, of the machine requesting a document. The
- <code>order</code> directive goes hand-in-hand with these two,
- and tells Apache in which order to apply the filters.</p>
-
- <p>The usage of these directives is:</p>
-<pre>
- allow from address
-</pre>
-
- <p>where <em>address</em> is an IP address (or a partial IP
- address) or a fully qualified domain name (or a partial domain
- name); you may provide multiple addresses or domain names, if
- desired.</p>
-
- <p>For example, if you have someone spamming your message
- board, and you want to keep them out, you could do the
- following:</p>
-<pre>
- deny from 205.252.46.165
-</pre>
-
- <p>Visitors coming from that address will not be able to see
- the content covered by this directive. If, instead, you have a
- machine name, rather than an IP address, you can use that.</p>
-<pre>
- deny from host.example.com
-</pre>
-
- <p>And, if you'd like to block access from an entire domain,
- you can specify just part of an address or domain name:</p>
-<pre>
- deny from 192.101.205
- deny from cyberthugs.com moreidiots.com
- deny from ke
-</pre>
-
- <p>Using <code>order</code> will let you be sure that you are
- actually restricting things to the group that you want to let
- in, by combining a <code>deny</code> and an <code>allow</code>
- directive:</p>
-<pre>
- order deny,allow
- deny from all
- allow from dev.example.com
-</pre>
-
- <p>Listing just the <code>allow</code> directive would not do
- what you want, because it will let folks from that host in, in
- addition to letting everyone in. What you want is to let
- <em>only</em> those folks in.</p>
-
- <h2><a id="moreinformation" name="moreinformation">More
- information</a></h2>
-
- <p>You should also read the documentation for <code><a
- href="../mod/mod_auth.html">mod_auth</a></code> and <code><a
- href="../mod/mod_access.html">mod_access</a></code> which
- contain some more information about how this all works.</p>
- </body>
-</html>
-
diff --git a/docs/manual/howto/auth.html.ja.jis b/docs/manual/howto/auth.html.ja.jis
new file mode 100644
index 0000000000..c5c2ee10cd
--- /dev/null
+++ b/docs/manual/howto/auth.html.ja.jis
@@ -0,0 +1,398 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+
+<html xmlns="http://www.w3.org/1999/xhtml">
+ <head>
+
+ <title>$BG'>Z(B</title>
+ <link rev="made" href="mailto:rbowen@rcbowen.com" />
+ </head>
+ <!-- English revision: 1.7 -->
+ <!-- Background white, links blue (unvisited), navy (visited), red (active) -->
+
+ <body bgcolor="#FFFFFF" text="#000000" link="#0000FF"
+ vlink="#000080" alink="#FF0000">
+ <!--#include virtual="header.html" -->
+
+ <h1 align="center">$BG'>Z(B</h1>
+ <a id="__index__" name="__index__"></a> <!-- INDEX BEGIN -->
+
+
+ <ul>
+ <li><a href="#introduction">$B$O$8$a$K(B</a></li>
+
+ <li><a href="#theprerequisites">$B=`Hw(B</a></li>
+
+ <li><a href="#gettingitworking">$BF0:n$5$;$k(B</a></li>
+
+ <li><a href="#lettingmorethanonepersonin">$BJ#?t$N?M$,(B
+ $BF~$l$k$h$&$K$9$k(B</a></li>
+
+ <li><a href="#possibleproblems">$B5/$3$j$($kLdBj(B</a></li>
+
+ <li><a href="#whatotherneatstuffcanido">
+ $B$b$C$H9*$_$K@)8f$G$-$J$$(B?</a></li>
+
+ <li><a href="#moreinformation">$BDI2C>pJs(B</a></li>
+ </ul>
+ <!-- INDEX END -->
+ <hr />
+
+ <table border="1">
+ <tr>
+ <td valign="top"><strong>$B4XO"%b%8%e!<%k(B</strong><br />
+ <br />
+ <a href="../mod/mod_auth.html">mod_auth</a><br />
+ <a href="../mod/mod_access.html">mod_access</a><br />
+ </td>
+
+ <td valign="top"><strong>$B4XO"%G%#%l%/%F%#%V(B</strong><br />
+ <br />
+ <a href="../mod/mod_access.html#allow">Allow</a><br />
+ <a
+ href="../mod/mod_auth.html#authgroupfile">AuthGroupFile</a><br />
+ <a href="../mod/core.html#authname">AuthName</a><br />
+ <a href="../mod/core.html#authtype">AuthType</a><br />
+ <a
+ href="../mod/mod_auth.html#authuserfile">AuthUserFile</a><br />
+ <a href="../mod/mod_access.html#deny">Deny</a><br />
+ <a href="../mod/core.html#options">Options</a><br />
+ <a href="../mod/core.html#require">Require</a><br />
+ </td>
+ </tr>
+ </table>
+
+ <h1><a id="authentication"
+ name="authentication">$BG'>Z(B</a></h1>
+
+ <p>$B!VG'>Z!W$H$O!"C/$+$,<+J,$OC/$G$"$k$+$r<gD%$7$?>l9g$K!"(B
+ $B$=$l$r3NG'$9$k$?$a$NA4$F$N2aDx$r;X$7$^$9!#!V>5G'!W$H$O!"(B
+ $BC/$+$,9T$-$?$$>l=j$K9T$1$k$h$&$K!"$"$k$$$OM_$7$$>pJs$r(B
+ $BF@$k$3$H$,$G$-$k$h$&$K$9$k$?$a$NA4$F$N2aDx$r;X$7$^$9!#(B</p>
+
+ <h2><a id="introduction"
+ name="introduction">$B$O$8$a$K(B</a></h2>
+
+ <p>$B$b$75!L)$N>pJs$d!"$4$/$4$/>/?t%0%k!<%W$N?M8~$1$N>pJs$r(B
+ $B%&%'%V%5%$%H$KCV$/$N$G$"$l$P!"$3$NJ8=q$K=q$+$l$F$$$k(B
+ $B%F%/%K%C%/$r;H$&$3$H$K$h$C$F!"$=$N%Z!<%8$r8+$F$$$k?M$?$A$,(B
+ $BK>$_$N?M$?$A$G$"$k$3$H$r3N<B$K$G$-$k$G$7$g$&!#(B</p>
+
+ <p>$B$3$NJ8=q$G$O!"B?$/$N?M$,:NMQ$9$k$G$"$m$&!"(B
+ $B%&%'%V%5%$%H$N0lItJ,$rJ]8n$9$k!V0lHLE*$J!W(B
+ $BJ}K!$K$D$$$F%+%P!<$7$^$9!#(B</p>
+
+ <h2><a id="theprerequisites" name="theprerequisites">
+ $B=`Hw(B</a></h2>
+
+ <p>$B$3$NJ8=q$G<h$j07$o$l$k%G%#%l%/%F%#%V$O!"(B
+ $B%a%$%s%5!<%P@_Dj%U%!%$%k(B ($BIaDL$O(B &lt;Directory&gt;
+ $B%;%/%7%g%sCf(B) $B$+!"$"$k$$$O%G%#%l%/%H%jKh$N@_Dj%U%!%$%k(B
+ (<code>.htaccess</code> $B%U%!%$%k(B) $B$+$GMQ$$$^$9!#(B</p>
+
+ <p><code>.htaccess</code> $B%U%!%$%k$rMQ$$$k$N$G$"$l$P!"(B
+ $B$3$l$i$N%U%!%$%k$KG'>ZMQ$N%G%#%l%/%F%#%V$rCV$1$k$h$&$K(B
+ $B%5!<%P$N@_Dj$r$7$J$$$H$$$1$J$$$G$7$g$&!#$3$l$O(B
+ <code><a
+ href="../mod/core.html#allowoverride">AllowOverride</a></code>
+ $B%G%#%l%/%F%#%V$G2DG=$K$J$j$^$9!#$3$N%G%#%l%/%F%#%V$O!"(B
+ $B%G%#%l%/%H%jKh$N@_Dj%U%!%$%kCf$KCV$/$3$H$N$G$-$k(B
+ $B%G%#%l%/%F%#%V$r!"$b$7$"$l$P!";XDj$7$^$9!#(B</p>
+
+ <p>$BG'>Z$K$D$$$FOC$r?J$a$F$$$k$N$G!"<!$N$h$&$J(B
+ <code>AllowOverride</code>
+ $B%G%#%l%/%F%#%V$,I,MW$K$J$k$G$7$g$&(B:</p>
+<pre>
+ AllowOverride AuthConfig
+</pre>
+
+ <p>$B$=$&$G$J$/!"%a%$%s%5!<%P@_Dj%U%!%$%k$NCf$K%G%#%l%/%F%#%V$r(B
+ $BD>@\CV$3$&$H$$$&$N$G$"$l$P!"EvA3$J$,$i$=$N%U%!%$%k$X$N=q$-9~$_(B
+ $B8"8B$r;}$C$F$$$J$1$l$P$J$i$J$$$G$7$g$&!#(B</p>
+
+ <p>$B$=$N>e!"$I$N%U%!%$%k$,$I$3$KJ]B8$5$l$F$$$k$+CN$k$?$a$K!"(B
+ $B%5!<%P$N%G%#%l%/%H%j9=B$$K$D$$$F>/$7CN$C$F$*$/(B
+ $BI,MW$,$"$k$G$7$g$&!#(B
+ $B$3$l$O$=$s$J$KFq$7$/$J$$$O$:$G!"(B
+ $B%G%#%l%/%H%j9=B$$,I,MW$J>lLL$G$O$=$l$,L@$i$+$K$J$k$h$&$K$7$F$$$^$9!#(B</p>
+
+ <h2><a id="gettingitworking"
+ name="gettingitworking">$BF0:n$5$;$k(B</a></h2>
+
+ <p>$B$G$O!"%5!<%P>e$N$"$k%G%#%l%/%H%j$r%Q%9%o!<%I$GJ]8n$9$k(B
+ $B4pK\$r<($7$^$9!#(B</p>
+
+ <p>$B%Q%9%o!<%I%U%!%$%k$r:n$kI,MW$,$"$j$^$9!#(B
+ $B$3$N%U%!%$%k$O!"%&%'%V$+$i%"%/%;%9$G$-$k>l=j$K(B
+ $BCV$/$Y$-$G$O$"$j$^$;$s!#$3$l$O!"B>$N?M$,%Q%9%o!<%I%U%!%$%k$r(B
+ $B%@%&%s%m!<%I$G$-$J$$$h$&$K$9$k$?$a$G$9!#Nc$($P!"(B
+ <code>/usr/local/apache/htdocs</code> $B$G%I%-%e%a%s%H$r(B
+ $BDs6!$7$F$$$k$N$G$"$l$P!"%Q%9%o!<%I%U%!%$%k$O(B
+ <code>/usr/local/apache/passwd</code>
+ $B$J$I$KCV$$$?J}$,NI$$$G$7$g$&!#(B</p>
+
+ <p>$B%U%!%$%k$r:n$k$?$a$K$O!"(BApache $BIUB0$N(B <a
+ href="../programs/htpasswd.html">htpasswd</a>
+ $B$r;H$$$^$9!#$3$l$O(B Apache $B$r$I$3$K%$%s%9%H!<%k$7$h$&$H$b!"(B
+ $B%$%s%9%H!<%k%G%#%l%/%H%j$N(B <code>bin</code>
+ $B%G%#%l%/%H%j$KCV$+$l$^$9!#%U%!%$%k$r:n$k$K$O!"<!$N$h$&$K(B
+ $B%?%$%W$7$F$/$@$5$$(B:</p>
+<pre>
+ htpasswd -c /usr/local/apache/passwd/password rbowen
+</pre>
+
+ <p><code>htpasswd</code> $B$O!"%Q%9%o!<%I$rMW5a$7!"$=$N8e(B
+ $B3NG'$N$?$a$K$b$&0lEYF~NO$9$k$h$&$KMW5a$7$F$-$^$9!#(B</p>
+<pre>
+ # htpasswd -c /usr/local/apache/passwd/passwords rbowen
+ New password: mypassword
+ Re-type new password: mypassword
+ Adding password for user rbowen
+</pre>
+
+ <p>$B$b$7(B <code>htpasswd</code> $B$,%Q%9$NCf$KF~$C$F$$$J$$>l9g$O!"(B
+ $B$b$A$m$s!"<B9T$9$k$?$a$K%W%m%0%i%`$^$G$N%U%k%Q%9$r(B
+ $B%?%$%W$9$kI,MW$,$"$j$^$9!#;d$N%5!<%P$G$"$l$P!"(B
+ <code>/usr/local/apache/bin/htpasswd</code>
+ $B$K%W%m%0%i%`$,CV$+$l$F$$$^$9!#(B</p>
+
+ <p>$B<!$K!"%5!<%P$,%Q%9%o!<%I$rMW5a$9$k$h$&$K@_Dj$7$F!"(B
+ $B$I$N%f!<%6$,%"%/%;%9$r5v$5$l$F$$$k$+$r%5!<%P$KCN$i$;$J$1$l$P(B
+ $B$J$j$^$;$s!#(B <code>httpd.conf</code> $B$rJT=8$9$k$+(B
+ <code>.htaccess</code> $B%U%!%$%k$r;HMQ$9$k$+$G$3$l$r(B
+ $B9T$$$^$9!#Nc$($P!"%G%#%l%/%H%j(B
+ <code>/usr/local/apache/htdocs/secret</code>
+ $B$rJ]8n$7$?$$>l9g$O!"(B
+ <code>/usr/local/apache/htdocs/secret/.htaccess</code>
+ $B$+(B httpd.conf $BCf$N(B &lt;Directory
+ /usr/local/apache/apache/htdocs/secret&gt; $B%;%/%7%g%s$K(B
+ $BG[CV$7$?!"<!$N%G%#%l%/%F%#%V$r;H$&$3$H$,$G$-$^$9!#(B</p>
+<pre>
+ AuthType Basic
+ AuthName "Restricted Files"
+ AuthUserFile /usr/local/apache/passwd/passwords
+ require user rbowen
+</pre>
+
+ <p>$B$3$l$i8D!9$N%G%#%l%/%F%#%V$K$D$$$F8+$F$_$^$7$g$&!#(B
+ <a href="../mod/core.html#authtype">AuthType</a>
+ $B%G%#%l%/%F%#%V$O$I$&$$$&J}K!$G%f!<%6$NG'>Z$r9T$&$+$r(B
+ $BA*Br$7$^$9!#:G$b0lHLE*$JJ}K!$O(B <code>Basic</code>
+ $B$G!"$3$l$O(B <a href="../mod/mod_auth.html">mod_auth</a>
+ $B$K$*$$$F<BAu$5$l$F$$$^$9!#$7$+$7$J$,$i!"(B
+ $B$3$l$O5$$rIU$1$k$Y$-=EMW$J$3$H$J$N$G$9$,!"(B
+ Basic $BG'>Z$O%/%i%$%"%s%H$+$i%V%i%&%6$X!"(B
+ $B%Q%9%o!<%I$r0E9f2=$;$:$KAw$j$^$9!#$G$9$+$i!"(B
+ $B$3$NJ}K!$OFC$K5!L)@-$N9b$$%G!<%?$KBP$7$F$OMQ$$$k$Y$-$G$O(B
+ $B$"$j$^$;$s!#(B Apache $B$G$O$b$&0l$DJL$NG'>ZJ}K!(B:
+ <code>AuthType Digest</code> $B$r%5%]!<%H$7$F$$$^$9!#(B
+ $B$3$NJ}K!$O(B <a
+ href="../mod/mod_auth_digest.html">mod_auth_digest</a>
+ $B$G<BAu$5$l$F$$$F!"$b$C$H0BA4$G$9!#(B
+ $B$4$/:G6a$N%/%i%$%"%s%H$N$_$,(B Digest $BG'>Z$r%5%]!<%H$7$F$$$k(B
+ $B$3$H$,CN$i$l$F$$$^$9!#(B</p>
+
+ <p><a href="../mod/core.html#authname">AuthName</a>
+ $B%G%#%l%/%F%#%V$G$O!"G'>Z$K;H$&(B <em>Realm</em> ($BLuCm(B: $BNN0h(B)
+ $B$r@_Dj$7$^$9!#(BRealm $B$OBg$-$/J,$1$FFs$D$N5!G=$rDs6!$7$^$9!#(B
+ $B0l$DL\$O!"%/%i%$%"%s%H$,%Q%9%o!<%I%@%$%"%m%0%\%C%/%9$N(B
+ $B0lIt$H$7$F%f!<%6$K$3$N>pJs$r$h$/Ds<($9$k!"$H$$$&$b$N$G$9!#(B
+ $BFs$DL\$K$O!"%/%i%$%"%s%H$,M?$($i$l$?G'>ZNN0h$KBP$7$F$I$N%Q%9%o!<%I$r(B
+ $BAw?.$9$l$PNI$$$N$+$r7hDj$9$k$?$a$K;H$o$l$k!"$H$$$&5!G=$,$"$j$^$9!#(B
+ $B$G$9$+$iNc$($P!"(B<code>"Restricted Files"</code> $BNN0hCf$G(B
+ $B0lEYG'>Z$5$l$l$P!"F10l%5!<%P>e$G(B <code>"Restricted Files"</code>
+ realm $B$H$7$F%^!<%/$5$l$?$I$s$JNN0h$G$b!"%/%i%$%"%s%H$O(B
+ $B<+F0E*$KF1$8%Q%9%o!<%I$r;H$*$&$H;n$_$^$9!#(B
+ $B$G$9$+$i!"J#?t$N@)8BNN0h$KF1$8(B realm $B$r6&M-$5$;$F!"(B
+ $B%f!<%6$,%Q%9%o!<%I$r2?EY$bMW5a$5$l$k;vBV$r(B
+ $BKI$0$3$H$,$G$-$^$9!#$b$A$m$s!"%;%-%e%j%F%#>e$NM}M3$+$i!"(B
+ $B%5!<%P$N%[%9%HL>$,JQ$o$l$P$$$D$G$bI,$:!"(B
+ $B%/%i%$%"%s%H$O:F$S%Q%9%o!<%I$r?R$M$kI,MW$,$"$j$^$9!#(B</p>
+
+ <p><a href="../mod/mod_auth.html#authuserfile">AuthUserFile</a>
+ $B%G%#%l%/%F%#%V$O(B <code>htpasswd</code> $B$G:n$C$?(B
+ $B%Q%9%o!<%I%U%!%$%k$X$N%Q%9$r@_Dj$7$^$9!#(B
+ $B%f!<%6?t$,B?$$>l9g$O!"%j%/%(%9%HKh$N%f!<%6$NG'>Z$N$?$a$N(B
+ $B%W%l!<%s%F%-%9%H$NC5:w$,Hs>o$KCY$/$J$k$3$H$,$"$j$^$9!#(B
+ Apache $B$G$O%f!<%6>pJs$r9bB.$J%G!<%?%Y!<%9%U%!%$%k$K(B
+ $BJ]4I$9$k$3$H$b$G$-$^$9!#(B
+ <a href="../mod/mod_auth_dbm.html">mod_auth_dbm</a>
+ $B%b%8%e!<%k$,(B<a
+ href="../mod/mod_auth_dbm.html#authdbmuserfile">AuthDBMUserFile</a>
+ $B%G%#%l%/%F%#%V$rDs6!$7$^$9!#$3$l$i$N%U%!%$%k$O(B <a
+ href="../programs/dbmmanage.html">dbmmanage</a>
+ $B%W%m%0%i%`$G:n@.$7$?$jA`:n$7$?$j$G$-$^$9!#(B
+ <a href="http://modules.apache.org/">Apache
+ $B%b%8%e!<%k%G!<%?%Y!<%9(B</a>$BCf$K$"$k%5!<%I%Q!<%F%#!<@=$N(B
+ $B%b%8%e!<%k$G!"$=$NB>B?$/$N%?%$%W$NG'>Z%*%W%7%g%s$,(B
+ $BMxMQ2DG=$G$9!#(B</p>
+
+ <p>$B:G8e$K!"(B<a href="../mod/core.html#require">require</a>
+ $B%G%#%l%/%F%#%V$,!"%5!<%P$N$3$NNN0h$K%"%/%;%9$G$-$k%f!<%6$r(B
+ $B;XDj$9$k$3$H$K$h$C$F!"%W%m%;%9$N>5G'ItJ,$rDs6!$7$^$9!#(B
+ $B<!$N%;%/%7%g%s$G$O!"(B<code>require</code> $B%G%#%l%/%F%#%V$N(B
+ $BMM!9$JMQK!$K$D$$$F=R$Y$^$9!#(B</p>
+
+ <h2><a id="lettingmorethanonepersonin"
+ name="lettingmorethanonepersonin">
+ $BJ#?t$N?M$,F~$l$k$h$&$K$9$k(B</a></h2>
+
+ <p>$B>e5-$N%G%#%l%/%F%#%V$O!"$?$@0l?M(B ($B6qBNE*$K$O%f!<%6L>(B
+ <code>rbowen</code> $B$NC/$+(B) $B$,%G%#%l%/%H%j$K(B
+ $BF~$l$k$h$&$K$7$^$9!#B?$/$N>l9g$O!"J#?t$N?M$,(B
+ $BF~$l$k$h$&$K$7$?$$$G$7$g$&!#$3$3$G(B<a
+ href="../mod/mod_auth.html#authgroupfile">AuthGroupFile</a>
+ $B$NEP>l$G$9!#(B</p>
+
+ <p>$B$b$7J#?t$N?M$,F~$l$k$h$&$K$7$?$$$N$G$"$l$P!"(B
+ $B%0%k!<%W$KB0$9$k%f!<%6$N0lMw$NF~$C$F$$$k!"%0%k!<%WL>$N$D$$$?(B
+ $B%0%k!<%W%U%!%$%k$r:n$kI,MW$,$"$j$^$9!#$3$N%U%!%$%k$N(B
+ $B=q<0$O$-$o$a$FC1=c$G!"$*9%$_$N%(%G%#%?$G@8@.$G$-$^$9!#(B
+ $B%U%!%$%k$NCf?H$O<!$N$h$&$J$b$N$G$9(B:</p>
+<pre>
+ GroupName: rbowen dpitts sungo rshersey
+</pre>
+
+ <p>$B0l9T$K%9%Z!<%96h@Z$j$G!"%0%k!<%W$K=jB0$9$k%a%s%P!<$N(B
+ $B0lMw$r$J$i$Y$k$@$1$G$9!#(B</p>
+
+ <p>$B4{$KB8:_$9$k%Q%9%o!<%I%U%!%$%k$K%f!<%6$r2C$($k>l9g$O!"(B
+ $B<!$N$h$&$K%?%$%W$7$F$/$@$5$$(B:</p>
+<pre>
+ htpasswd /usr/local/apache/passwd/password dpitts
+</pre>
+
+ <p>$B0MA3$HF1$81~Ez$,JV$5$l$^$9$,!"?7$7$$%U%!%$%k$r(B
+ $B:n$k$N$G$O$J$/!"4{$K$"$k%U%!%$%k$KDI2C$5$l$F$$$^$9!#(B
+ ($B?7$7$$%Q%9%o!<%I%U%!%$%k$r:n$k$K$O(B <code>-c</code>
+ $B$r;H$$$^$9!#(B)</p>
+
+ <p>$B$3$3$G<!$N$h$&$K$7$F(B <code>.htaccess</code> $B%U%!%$%k$r(B
+ $B=$@5$9$kI,MW$,$"$j$^$9(B:</p>
+<pre>
+ AuthType Basic
+ AuthName "By Invitation Only"
+ AuthUserFile /usr/local/apache/passwd/passwords
+ AuthGroupFile /usr/local/apache/passwd/groups
+ require group GroupName
+</pre>
+
+ <p>$B$3$l$G!"%0%k!<%W(B <code>GroupName</code> $B$K%j%9%H$5$l$F$$$F!"(B
+ <code>password</code> $B%U%!%$%k$K%(%s%H%j$,$"$k?M$O!"(B
+ $B@5$7$$%Q%9%o!<%I$r%?%$%W$9$l$PF~$k$3$H$,$G$-$k$G$7$g$&!#(B</p>
+
+ <p>$B$b$C$HFCDj$;$:$KJ#?t$N%f!<%6$,F~$l$k$h$&$K$9$k!"(B
+ $B$b$&0l$D$NJ}K!$,$"$j$^$9!#%0%k!<%W%U%!%$%k$r:n$k$N$G$O$J$/!"(B
+ $B<!$N%G%#%l%/%F%#%V$r;H$($P$G$-$^$9!#(B</p>
+<pre>
+ require valid-user
+</pre>
+
+ <p><code>require user rbowen</code> $B9T$G$J$/!">e5-$r;H$&$H!"(B
+ $B%Q%9%o!<%I%U%!%$%k$K%j%9%H$5$l$F$$$k?M$G$"$l$PC/$G$b(B
+ $B5v2D$5$l$^$9!#(B
+ $BC1$K%Q%9%o!<%I%U%!%$%k$r%0%k!<%WKh$KJ,$1$F$*$/$3$H$G!"(B
+ $B%0%k!<%W$N$h$&$J?6$kIq$$$r$5$;$k$3$H$b$G$-$^$9!#(B
+ $B$3$N%"%W%m!<%A$NMxE@$O!"(BApache $B$OFs$D$G$O$J$/!"(B
+ $B$?$@0l$D$N%U%!%$%k$@$1$r8!::$9$l$P$h$$$H$$$&E@$G$9!#(B
+ $B7gE@$O!"$?$/$5$s$N%Q%9%o!<%I%U%!%$%k$r4IM}$7$F!"(B
+ $B$=$NCf$+$i(B <code>AuthUserFile</code> $B%G%#%l%/%F%#%V$K@5$7$$%U%!%$%k$X$N(B
+ $B;2>H$r$5$;$J$1$l$P$J$i$J$$E@$G$9!#(B</p>
+
+ <h2><a id="possibleproblems" name="possibleproblems">
+ $B5/$3$j$($kLdBj(B</a></h2>
+
+ <p>Basic $BG'>Z$,;XDj$5$l$F$$$k>l9g$O!"(B
+ $B%5!<%P$K%I%-%e%a%s%H$r%j%/%(%9%H$9$kEY$K(B
+ $B%f!<%6L>$H%Q%9%o!<%I$r8!::$7$J$1$l$P$J$j$^$;$s!#(B
+ $B$3$l$OF1$8%Z!<%8!"%Z!<%8$K$"$kA4$F$N2hA|$r(B
+ $B%j%m!<%I$9$k>l9g$G$"$C$F$b3:Ev$7$^$9(B
+ ($B$b$72hA|$bJ]8n$5$l$?%G%#%l%/%H%j$+$iMh$k$N$G$"$l$P(B) $B!#(B
+ $BM=A[$5$l$kDL$j!"$3$l$OF0:n$rB?>/CY$/$7$^$9!#(B
+ $BCY$/$J$kDxEY$O%Q%9%o!<%I%U%!%$%k$NBg$-$5$HHfNc$7$^$9$,!"(B
+ $B$3$l$O!"%U%!%$%k$r3+$$$F$"$J$?$NL>A0$rH/8+$9$k$^$G(B
+ $B%f!<%6L>$N%j%9%H$rFI$^$J$1$l$P$J$i$J$$$+$i$G$9!#(B
+ $B$=$7$F!"%Z!<%8$,%m!<%I$5$l$kEY$K$3$l$r9T$o$J$1$l$P(B
+ $B$J$j$^$;$s!#(B</p>
+
+ <p>$B7kO@$H$7$F$O!"0l$D$N%Q%9%o!<%I%U%!%$%k$KCV$/$3$H$N$G$-$k(B
+ $B%f!<%6?t$K$O<B<AE*$J8B3&$,$"$j$^$9!#(B
+ $B$3$N8B3&$O%5!<%P%^%7%s$N@-G=$K0MB8$7$FJQ$o$j$^$9$,!"(B
+ $B?tI4$N%(%s%H%j$r1[$($?$"$?$j$+$iB.EYDc2<$,8+$i$l$k$HM=4|$5$l$F$$$^$9!#(B
+ $B$=$N;~$OB>$NG'>ZJ}K!$r9MN8$KF~$l$?J}$,NI$$$G$7$g$&!#(B</p>
+
+ <h2><a id="whatotherneatstuffcanido"
+ name="whatotherneatstuffcanido">
+ $B$b$C$H9*$_$K@)8f$G$-$J$$!)(B</a></h2>
+
+ <p>$B%f!<%6L>$H%Q%9%o!<%I$K$h$kG'>Z$OG'>Z$N0l$D$NJ}K!$K2a$.$^$;$s!#(B
+ $B$7$P$7$PC/$G$"$k$+$H$$$&$3$H$H$O0c$&2?$+$K4p$E$$$F!"(B
+ $BF~$l$k$h$&$K$7$?$/$J$k$3$H$b$"$k$G$7$g$&!#Nc$($P$=$N?M$,$I$3$+$iMh$F$$$k$+(B
+ $B$H$$$C$?$3$H$G$9!#(B</p>
+
+ <p><code>allow</code> $B$H(B <code>deny</code>
+ $B%G%#%l%/%F%#%V$r;H$C$F!"%I%-%e%a%s%H$rMW5a$7$F$-$?%^%7%s$N(B
+ $B%[%9%HL>$d%[%9%H%"%I%l%9$K4p$E$$$F5v2DIT5v2D$r@)8f$G$-$^$9!#(B
+ <code>order</code> $B%G%#%l%/%F%#%V$O$3$NFs$D$HO"7H$7$F(B
+ $BF0:n$7!"(BApache $B$K$I$N=gHV$G%U%#%k%?$rE,MQ$9$k$+$r(B
+ $BCN$i$;$^$9!#(B</p>
+
+ <p>$B$3$l$i$N%G%#%l%/%F%#%V$N;H$$J}$O(B:</p>
+<pre>
+ allow from address
+</pre>
+
+ <p>$B$3$3$G!"(B<em>address</em> $B$O(B IP $B%"%I%l%9(B
+ ($B$^$?$O(B IP $B%"%I%l%9$N0lIt(B)$B!"$"$k$$$O40A4=$>~%I%a%$%sL>(B
+ ($B$^$?$O%I%a%$%sL>$N0lIt(B) $B$G$9!#(B
+ $BI,MW$G$"$l$PJ#?t$N%"%I%l%9$d%I%a%$%sL>$r;XDj$G$-$^$9!#(B</p>
+
+ <p>$BNc$($P!"$b$7C/$+$,7G<(HD$r967b$7$F$$$F!"(B
+ $B$=$N?M$rJD$a=P$7$?$$$N$G$"$l$P!"(B
+ $B<!$N$h$&$K$9$k$3$H$,$G$-$^$9(B:</p>
+<pre>
+ deny from 205.252.46.165
+</pre>
+
+ <p>$B$3$N%"%I%l%9$+$iMh$k?M$O!"$3$N%G%#%l%/%F%#%V$NHO0OFb$N(B
+ $B%3%s%F%s%D$r8+$k$3$H$,$G$-$J$$$^$;$s!#$b$7(B IP
+ $B%"%I%l%9$NBe$o$j$K%^%7%sL>$,$"$l$P!"$=$l$r;H$($^$9!#(B</p>
+<pre>
+ deny from host.example.com
+</pre>
+
+ <p>$B%I%a%$%sA4BN$+$i$N%"%/%;%9$rKI$.$?$1$l$P!"(B
+ $BC1$K%"%I%l%9$d%I%a%$%sL>$N0lIt$r;XDj$9$k$3$H$,$G$-$^$9(B:</p>
+<pre>
+ deny from 192.101.205
+ deny from cyberthugs.com moreidiots.com
+ deny from ke
+</pre>
+
+ <p><code>order</code> $B$r;H$&$3$H$G!"(B
+ <code>deny</code> $B$H(B <code>allow</code> $B$NAH$_9g$o$;$G(B
+ $BF~$C$F$bNI$$%0%k!<%W$,K\Ev$K3N<B$K8BDj$G$-$F$$$k$h$&$K$G$-$^$9(B:</p>
+<pre>
+ order deny,allow
+ deny from all
+ allow from dev.example.com
+</pre>
+
+ <p><code>allow</code> $B%G%#%l%/%F%#%V$rC1=c$KNs5s$9$k$N$G$O(B
+ $BK>$_$NF0:n$r$7$J$$$G$7$g$&!#(B
+ $B$J$<$J$i!"A4$F$N?M$,F~$l$k$H$$$&$3$H$K2C$($F!"(B
+ $B;XDj$7$?%[%9%H$+$i$N?M$,F~$l$k$h$&$K$9$k$+$i$G$9!#(B
+ $B$d$j$?$$$3$H$O!";XDj$7$??M$?$A(B<em>$B$@$1(B</em>$B$,F~$l$k$h$&$K(B
+ $B$9$k$3$H$G$9!#(B</p>
+
+ <h2><a id="moreinformation" name="moreinformation">
+ $BDI2C>pJs(B</a></h2>
+
+ <p>$B$3$l$iA4$F$,$I$N$h$&$KF0:n$9$k$+$K$D$$$F(B
+ $B$b$C$HB?$/$N>pJs$,=q$+$l$F$$$k(B <code><a
+ href="../mod/mod_auth.html">mod_auth</a></code> $B$H(B <code><a
+ href="../mod/mod_access.html">mod_access</a></code>
+ $B$NJ8=q$bFI$`$H$h$$$G$7$g$&!#(B</p>
+ </body>
+</html>
+