<?xml version="1.0" encoding="EUC-JP"?>
<!DOCTYPE article PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" "http://docbook.org/xml/4.1.2/docbookx.dtd">


<article>

<articleinfo>

   <title>Apache based WebDAV Server with LDAP and SSL </title>

   <author>
      <firstname>Saqib</firstname>
      <surname>Ali</surname>
      <affiliation>
         <address>
		 <email>saqib@seagate.com</email>
         </address>
	 <!--
	 <orgname><ulink url="http://www.xml-dev.com">Offshore XML/XHTML Development</ulink></orgname>
	 -->
      </affiliation>
   </author>

<!-- Added for Japanese version -->
  <othercredit lang="ja">
    <firstname>yomoyomo</firstname>
    <surname></surname>
    <contrib>日本語訳</contrib>
    <affiliation>
      <address>ymgrtq@ma.neweb.ne.jp</address>
    </affiliation>
</othercredit>


   <revhistory>

      <revision>
       <revnumber>v4.1.0</revnumber>
         <date>2003-09-02</date>
         <authorinitials>sa</authorinitials>
	 <revremark>
<!--
		 Updated the SSL section based on the feedback received from readers.
-->
         読者からのフィードバックに基づいて SSL のセクションを更新
         </revremark>
      </revision>

      <revision>
       <revnumber>v4.0.2</revnumber>
         <date>2003-08-01</date>
         <authorinitials>sa</authorinitials>
          <revremark>
<!--
		  Minor updates to the Apache configure cmd line. /dev/random referenced in the SSL section. 
-->
         Apache の設定とコマンドラインのマイナーアップデート。
         SSL のセクションに /dev/random 関連の記述を追加。
         </revremark>
 </revision>

      <revision>
       <revnumber>v4.0.1</revnumber>
         <date>2003-07-27</date>
         <authorinitials>sa</authorinitials>
          <revremark>
<!--
		  Added more information to the SSL section. 
-->
          SSL のセクションに情報を追加。
         </revremark>
      </revision>

      <revision>
       <revnumber>v4.0</revnumber>
       <date>2003-06-29</date>
         <authorinitials>sa</authorinitials>
          <revremark>
<!--
               Updated the HOWTO for Apache 2.0. Also the source is in XML
-->
               Apache 2.0 にあわせて HOWTO を更新。同時にソースを XML 化。
         </revremark>
      </revision>




   </revhistory>

   <abstract>
      <para><!-- .This document is an HOWTO on installing a Apache based WebDAV server with LDAP for authentication and SSL encryption. -->
		本文書は、認証に LDAP を利用し、SSL で暗号化を行う、Apache
		ベースの WebDAV サーバのインストールを扱う HOWTO です。
      </para> 
   </abstract>
</articleinfo>

<sect1 id="intro"><title><!-- Introduction -->はじめに</title>
<para><!-- The Objective of this document in to Setup a Apache + mySQL + PHP + WebDAV based Web Application Server, that uses LDAP for Authentication. The documentation will also provide details on the encrypting LDAP transactions.
-->
本文書の目標は、認証に LDAP を利用する Apache + MySQL + PHP + WebDAV
ベースのウェブアプリケーションサーバを構築することです。
この文書は、LDAP トランザクションの暗号化に関する詳細な解説も行います。
</para>
<note><title><!-- Note: -->注記:</title><para><!-- If you encounter any problems installing Apache or any of the modules please feel free to contact me @ <email>saqib@seagate.com</email>
-->
もし Apache やその他のモジュールのインストールで何か問題に遭遇したら、
遠慮なく私 <email>saqib@seagate.com</email> に連絡してください。
</para></note>

<sect2><title><!-- About this document -->この文書について</title>
<para><!-- This document was originally written in 2001. Since then many updates and new additions have been made. Thanks to all the people who submitted updates and corrections.
-->
本文書は、元々は2001年に書かれたものです。それからたくさんの更新や
新規の追加が施されてきています。更新や訂正を提供してくれた
すべての人達に感謝します。
</para>
<para><!-- The XML source of this document is available at <ulink url="http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.xml">http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.xml</ulink>.
-->
本文書の XML ソースは、
<ulink url="http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.xml">http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.xml</ulink>
にて入手できます。
</para>
<para><!-- The latest version of the document is available at <ulink url="http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.html">http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.html</ulink>.
-->
本文書の最新版は、
<ulink url="http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.html">http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.html</ulink>
にて入手できます。
</para>

</sect2>
<sect2><title><!-- Contributions to the document -->本文書への貢献</title>
<para><!--If you like to contribute to the HOWTO, you can d/l the XML source from <ulink url="http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.xml">http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.xml</ulink> , and send in the updated source to saqib@seagate.com ALONG WITH YOUR NAME IN THE LIST OF AUTHORS AND REVISION HISTORY :). That makes it easier for me contact the person if there are any updates/corrections. Thanks.
-->
もし本 HOWTO に貢献したいなら、
<ulink url="http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.xml">http://www.xml-dev.com:8080/cocoon/mount/docbook/Apache-WebDAV-LDAP-HOWTO.xml</ulink>
からその XML ソースをダウンロードし、著者リストと改訂履歴に
あなたの名前を加え、更新されたソースを saqib@seagate.com
に送ることができます:) そうすれば、何か更新や訂正があるときに、
私がその人に連絡が取りやすくなります。よろしくお願いします。
</para>
</sect2>

<sect2><title><!-- What is Apache? -->Apache って何?</title>
<para><!-- The Apache HTTP Server is an open-source HTTP server for modern operating systems including UNIX and Windows NT. It provides HTTP services in sync with the current HTTP standards. 
-->
Apache HTTP サーバは、UNIX や Windows NT を含む最新のオペレーティング
システム向けのオープンソースの HTTP サーバです。Apache は、現行の HTTP
標準に適合する HTTP サービスを提供します。
</para>
<para><!-- Thei Apache WebServer is available for free download from <ulink url="http://httpd.apache.org/">http://httpd.apache.org/</ulink>
-->
Apache ウェブサーバは、
<ulink url="http://httpd.apache.org/">http://httpd.apache.org/</ulink>
から自由にダウンロードできます。
</para>
</sect2>



<sect2><title><!-- What is WebDAV? -->WebDAV って何?</title>
<para><!-- WebDAV stands for Web enabled Distributed Authoring and Versioning. It provides a collaborative environment for users to edit/manage files on web-servers. Technically DAV is an extension to the http protocol.
-->
WebDAV とは、ウェブを使った分散オーサリングとバージョン管理
(Web enabled Distributed Authoring and Versioning)を意味しています。
WebDAV は、ユーザがウェブサーバにあるファイルの編集/管理を行う
共同作業環境を提供します。技術的には、DAV は HTTP プロトコルの拡張です。
</para>
<para><!-- Here is a brief description of the extensions provided by DAV:
-->
以下に、DAV により提供される拡張を簡単に書きます。
</para>
<para><!-- <emphasis role="bold">Overwrite Protection:</emphasis> Lock and Unlock mechanism to prevent the "lost update problem". DAV protocol support both shared and exclusive locks.
-->
<emphasis role="strong">上書き保護:</emphasis>
「更新消失問題」を防ぐ、ロックとロック解除のメカニズム。
DAV プロトコルは、共有ロックと排他的ロックの両方をサポートしています。
</para>
<para><!-- <emphasis role="bold">Properties:</emphasis> Metadata (title, subject, creater, etc)
-->
<emphasis role="strong">プロパティ:</emphasis>
メタデータ(タイトル、サブジェクト、作成者など)
</para>
<para><!-- <emphasis role="bold">Name-space management:</emphasis> Copy, Rename, Move and Deletion of files
-->
<emphasis role="strong">名前空間の管理:</emphasis>
ファイルの複製、名称変更、移動、そして削除
</para>
<para><!-- <emphasis role="bold">Access Control:</emphasis> Limit access to various resources. Currently DAV assumes access control is already in place, and does not provide strong authentication mechanism.
-->
<emphasis role="strong">アクセス制御:</emphasis>
様々なリソースへのアクセスの制限。現在 DAV では、アクセス制御が既に適切に
行われているものと想定しており、自身は強力な認証機構を提供していません。
</para>
<para><!-- <emphasis role="bold">Versioning:</emphasis> Revision control for the documents. Versioning is not implemented yet.
-->
<emphasis role="strong">バージョン管理:</emphasis>
ドキュメントのリビジョン管理。バージョン管理はまだ実装されていません。
</para>
</sect2>

<sect2><title><!-- What is PHP? -->PHP って何?</title>
<para><!-- PHP (recursive acronym for "PHP: Hypertext Preprocessor") is a widely-used Open Source general-purpose scripting language that is especially suited for Web development and can be embedded into HTML.
-->
PHP ("PHP: ハイパーテキスト・プリプロセッサ" の再帰頭字語) は、
ウェブ開発に特に適しており、HTML に組み込み可能な、
広く利用されているオープンソースの汎用スクリプト言語です。
</para>
<para><!-- PHP is available from <ulink url="http://www.php.net">http://www.php.net</ulink>
-->
PHP は、<ulink url="http://www.php.net">http://www.php.net</ulink>
から入手できます。
</para>
</sect2>

<sect2><title><!-- What is mySQL? -->MySQL って何?</title>
<para><!-- MySQL, the most popular Open Source SQL database, is developed, distributed, and supported by MySQL AB
-->
最も人気のあるオープンソースの SQL データベースである MySQL は、
MySQL AB によって開発、配布、サポートされています。
</para>
<para><!-- mySQL DB Engine can be downloaded from <ulink url="http://www.mysql.com/">http://www.mysql.com/</ulink>
-->
MySQL DB エンジンは、
<ulink url="http://www.mysql.com/">http://www.mysql.com/</ulink>
からダウンロードできます。
</para>
</sect2>

<sect2><title><!-- What do we need? -->何が必要ですか?</title>
<para>
<!--
The tools needed to achieve this objective are:
-->
目的を実現するのに必要なツールに以下のものがあります。
</para>

<orderedlist  numeration="lowerroman">
	<listitem><para><!-- C Compiler e.g. GCC -->GCC などの C コンパイラ</para></listitem>
	<listitem><para><!-- Apache 2 Web Server -->Apache 2 ウェブサーバ</para></listitem>
	<listitem><para><!-- LDAP Module for Apache -->Apache 用 LDAP モジュール</para></listitem>
	<listitem><para><!-- iPlanet LDAP lib files -->iPlanet LDAP ライブラリ・ファイル</para></listitem>
	<listitem><para><!-- SSL engine -->SSL エンジン</para></listitem>
	<listitem><para>PHP</para></listitem>
	<listitem><para><!-- mySQL DB Engine -->MySQL DB エンジン</para></listitem>
</orderedlist>

<note><title><!-- Note: -->注記:</title><para><!-- All of these packages are free and are available for download on the net.
-->
これらのパッケージは全てフリーであり、ネットからダウンロード可能です。
</para></note>

</sect2>

<sect2><title><!-- Assumptions -->作業の前に</title>
<para><!--  This document assumes that you have the following already installed on your system.
-->
本文書では、以下のものが既にシステムにインストール済みであることを
前提にしています。
</para>
<orderedlist numeration="lowerroman">
	<listitem><para><!-- gzip or gunzip - available from <ulink url="http://www.gnu.org">http://www.gnu.org</ulink>
-->
gzip か gunzip - <ulink url="http://www.gnu.org">http://www.gnu.org</ulink>
から入手可能
</para></listitem>
 	<listitem><para><!-- gcc and GNU make - available from <ulink url="http://www.gnu.org">http://www.gnu.org</ulink>
-->
gcc と GNU make - <ulink url="http://www.gnu.org">http://www.gnu.org</ulink>
から入手可能
</para></listitem>
</orderedlist>
</sect2>
</sect1>

<sect1><title><!-- Requirements -->必要条件</title>
<para><!-- You'll have to download and compile several packages. This document will explain the compilation process, but you should be fimiliar with installing from source code.
-->
いくつかのパッケージをダウンロードし、コンパイルしなければなりません。
本文書では、そのコンパイル手順を解説しますが、
ソースコードからのインストール作業に慣れていないと厳しいでしょう。
</para>
<sect2><title><!-- Basics -->基本</title>
<para><!-- You will need a machine running Solaris / Linux and GCC Compiler. GNU gnzip and GNU tar is also needed.
-->
Solaris / Linux と GNU CC コンパイラの動いているマシンが必要になります。
GNU gunzip と GNU tar も必要です。
</para>
</sect2>
<sect2><title>Apache 2.0.46</title>
<para><!-- Apache is the HTTP server, it will be used to run the Web Application Server. Please download the Apache 2.0.46 source code from <ulink url="http://www.apache.org/dist/httpd/">http://www.apache.org/dist/httpd/</ulink>.
-->
Apache は HTTP サーバで、WebDAV アプリケーションサーバを動作させるのに
利用します。
<ulink url="http://www.apache.org/dist/httpd/">http://www.apache.org/dist/httpd/</ulink>
から Apache 2.0.46 のソースコードをダウンロードしてください。
</para>
</sect2>
<sect2><title>OpenSSL</title>
<para><!-- You will need to download the OpenSSL from <ulink url="http://www.openssl.org/source/">http://www.openssl.org/source/</ulink> . Please download the latest version. OpenSSL installation will be used for SSL libraries for compiling mod_ssl with Apache, and for managing SSL certificates on the WebServer. Please download the OpenSSL source code gzipped file into /tmp/downloads
-->
<ulink url="http://www.openssl.org/source/">http://www.openssl.org/source/</ulink>
から OpenSSL をダウンロードする必要があります。
最新版をダウンロードしてください。OpenSSL をインストールし、
Apache に mod_ssl を組みこみ、ウェブサーバ上で SSL 証明書を管理するのに
SSL ライブラリを利用します。gzip された OpenSSL のソースコードを
/tmp/downloads にダウンロードしてください。
</para>
</sect2>
<sect2><title><!-- iPlanet LDAP Library -->iPlanet LDAP ライブラリ</title>
<para>
<!--
Download the iPlanet LDAP SDK from <ulink url="http://wwws.sun.com/software/download/products/3ec28dbd.html">http://wwws.sun.com/software/download/products/3ec28dbd.html</ulink>. We will use iPlanet LDAP SDK, because it includes libraries for ldaps:// (LDAP over SSL)
-->
from <ulink url="http://wwws.sun.com/software/download/products/3ec28dbd.html">http://wwws.sun.com/software/download/products/3ec28dbd.html</ulink>
から iPlanet LDAP SDK をダウンロードしてください。iPlanet LDAP SDK
を使用するのは、それが ldaps:// (LDAP over SSL) を行うのに使う
ライブラリを含んでいるからです。
</para>
</sect2>
<sect2><title>mod_auth_ldap</title>
<para><!-- mod_auth_ldap will be used for compiling LDAP support into Apache. Please download mod_auth_ldap from <ulink url="http://www.muquit.com/muquit/software/mod_auth_ldap/mod_auth_ldap_apache2.html">http://www.muquit.com/muquit/software/mod_auth_ldap/mod_auth_ldap_apache2.html</ulink>
-->
Apache に LDAP サポートを組み込むのに mod_auth_ldap を利用します。
<ulink url="http://www.muquit.com/muquit/software/mod_auth_ldap/mod_auth_ldap_apache2.html">http://www.muquit.com/muquit/software/mod_auth_ldap/mod_auth_ldap_apache2.html</ulink>
から mod_auth_ldap をダウンロードしてください。
</para>
</sect2>
<sect2><title><!-- mySQL DB Engine -->MySQL DB エンジン</title>
<para><!-- Download the appropriate mySQL build for your platform from <ulink url="http://www.mysql.com/downloads/index.html">http://www.mysql.com/downloads/index.html</ulink>
-->
<ulink url="http://www.mysql.com/downloads/index.html">http://www.mysql.com/downloads/index.html</ulink>
から、ご利用のプラットフォームに合う MySQL ビルドをダウンロードしてください。
</para>
</sect2>

<sect2><title>PHP</title>
<para><!-- Download the PHP source code from <ulink url="http://www.php.net/downloads.php">http://www.php.net/downloads.php</ulink>
-->
<ulink url="http://www.php.net/downloads.php">http://www.php.net/downloads.php</ulink>
から PHP のソースコードをダウンロードしてください。
</para>
</sect2>

</sect1>

<sect1><title><!-- Installation -->インストール</title>

<para><!-- First we hve take care of the few pre-requisites, and then we will get into the main installtion.
-->
まず最初に前もって必要な処理を二三行い、その後でメインのインストール
に入ります。
</para>

<sect2><title><!-- Pre-requisites -->前もって必要なもの</title>
<para><!-- The application server as we plan to install, requires the SSL libraries and LDAP libraries. SSL engine is also required for managing the SSL certs for Apache 2.x
-->
我々がインストールしようとしているアプリケーションサーバには、
SSL のライブラリと LDAP のライブラリが必要です。Apache 2.x 用に
SSL 証明書を運用するのに SSL エンジンも必要になります。
</para>
<sect3><title>iPlanet LDAP SDK</title>
<para><!-- Become root by using the su command:
-->
su コマンドを使用して root になってください。
</para>
<screen><command>$ su -</command></screen>
<para><!-- Create the <filename class="directory">/usr/local/iplanet-ldap-sdk.5</filename> directory. Copy the <filename>ldapcsdk5.08-Linux2.2_x86_glibc_PTH_OPT.OBJ.tar.gz</filename> form <filename class="directory">/tmp/downloads</filename> to <filename class="directory">/usr/local/iplanet-ldap-sdk.5</filename> directory.
-->
<filename class="directory">/usr/local/iplanet-ldap-sdk.5</filename>
ディレクトリを作成してください。
<filename class="directory">/tmp/downloads</filename> から
<filename class="directory">/usr/local/iplanet-ldap-sdk.5</filename>
ディレクトリに
<filename>ldapcsdk5.08-Linux2.2_x86_glibc_PTH_OPT.OBJ.tar.gz</filename>
をコピーしてください。
</para>
<!--
[訳者ノート] form は from の間違いだろう
-->
<screen>
<command># mkdir /usr/local/iplanet-ldap-sdk.5</command>
<command># cp /tmp/downloads/ldapcsdk5.08-Linux2.2_x86_glibc_PTH_OPT.OBJ.tar /usr/local/iplanet-ldap-sdk.5</command>
<command># cd /usr/local/iplanet-ldap-sdk.5</command>
<command># tar -xvf ldapcsdk5.08-Linux2.2_x86_glibc_PTH_OPT.OBJ.tar</command>
</screen>
<para><!-- Now you should have all the required iPlanet LDAP lib files in the correct directory
-->
これで正しいディレクトリに、必要な iPlanet LDAP ライブラリファイル
がすべて入ったはずです。
</para>

</sect3>

<sect3><title><!-- OpenSSL Engine -->OpenSSL エンジン</title>
<para><!-- Next we need to install the OpenSSL Engine
-->
次に OpenSSL エンジンをインストールする必要があります。
</para>
<para><!-- OpenSSL is an open source implementation of the SSL/TLS protocol. It is required to create and manage SSL certificates on the webserver. The installion is also necessary for the lib files that will be used by the SSL module for apache.
-->
OpenSSL は、SSL/TLS プロトコルのオープンソース実装です。
ウェブサーバ上で SSL 証明書を作成、管理するのに、OpenSSL
が必要となります。Apache 用の SSL モジュールで使うライブラリのためにも、
OpenSSL をインストールする必要があります。
</para>
<para><!-- Change to the directory where you placed the OpenSSL source code files
-->
OpenSSL のソースコードファイルがあるディレクトリに移動してください。
</para>
<screen> <command># cd /tmp/download</command>
<command># gzip -d openssl.x.x.tar.gz</command>
<command># tar -xvf openssl.x.x.tar</command>
<command># cd openssl.x.x</command>
<command># make</command>
<command># make test</command>
<command># make install</command>
</screen>
<para><!-- Upon successful completion of the <command>make install</command> the openssl binaries should reside in <filename class="directory">/usr/local/ssl</filename>
-->
<command>make install</command> が成功して完了すれば、
<filename class="directory">/usr/local/ssl</filename>
に OpenSSL のバイナリができているはずです。
</para>
</sect3>

</sect2>
<sect2><title>MySQL</title>
<para><!-- Installaing mySQL is quite simple. The downloaded binaries have to be place in appropriate directory.
-->
MySQL のインストールは実に簡単です。ダウンロードしたバイナリを適当な
ディレクトリに置くだけです。
</para>
<para><!-- We start creating a user:group for mysql daemon, and copying the files to appropriate directories.
-->
まず MySQL デーモン用のユーザとグループを作成し、
ファイルを適当なディレクトリにコピーします。
</para>
<screen> <command># groupadd mysql</command>
<command># useradd -g mysql mysql</command>
<command># cd /usr/local</command>
<command># gunzip &lt; /path/to/mysql-VERSION-OS.tar.gz | tar xvf - </command>
<command># ln -s full-path-to-mysql-VERSION-OS mysql</command>
</screen>
<para><!-- Next run the install_db script, and change permission on the files
-->
次に install_db スクリプトを走らせ、
ファイルのパーミッションを変更してください。
</para>
<screen> <command># cd mysql</command>
<command># scripts/mysql_install_db</command>
<command># chown -R mysql .</command>
</screen>
<sect3><title><!-- Starting mySQL -->mySQL の起動</title>
<para><!-- Now start the mySQL server to verify the installation
-->
それでは MySQL を起動し、インストールが正しく行われているか確かめてください。
</para>
<screen> <command># bin/mysqld_safe --user=mysql &amp;</command>
</screen>
<para><!-- Verify mySQL daemon is running, by using the ps -ef command. You should see the following output:
-->
ps -ef コマンドを使い、MySQL デーモンが稼動していることを確かめてください。
以下の出力を目にするはずです。
</para>
<screen><command># ps -ef | grep mysql</command>
root      3237     1  0 May29 ?        00:00:00 /bin/sh bin/safe_mysqld
mysql     3256  3237  0 May29 ?        00:06:58 /usr/local/mysql/bin/mysqld --defaults-extra-file=/usr/local/mysql/data/my.cnf --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql --pid-file=/usr/local/mysql/data/downloa
</screen>
</sect3>
<sect3><title><!-- Stopping mySQL -->MySQL の停止</title>
<para><!-- To stop the MySQL server, follow the instructions below
-->
MySQL サーバを止めるには、以下の手順に従ってください。
</para>
<screen><command># cd /usr/local/mysql</command>
<command># ./bin/mysqladmin -u root -p shutdown</command>
</screen>
</sect3>
<sect3><title><!-- Locating Data Directory -->データディレクトリの指定</title>
<para><!-- mySQL deamon stores all the information in a direcory called "Data Directory". If you followed the installation instructions above, your Data Directory should be located under <filename class="directory">/use/local/mysql/data</filename>.
-->
MySQL デーモンは、全情報を「データディレクトリ」と呼ばれるディレクトリ
の中に格納します。上記のインストール手順に従った場合、データディレクトリは
<filename class="directory">/use/local/mysql/data</filename>
になるはずです。
</para>
<para><!-- To locate where your Data Directory is located, use the <command>mysqladmin</command> utility as follows:
-->
データディレクトリの位置を指定するには、<command>mysqladmin</command>
ユーティリティを以下に示すように使用します。
</para>
<screen>
<command># /usr/local/mysql/bin/mysqladmin variables -u root --password={your_password} | grep datadir</command>
</screen>

</sect3>
</sect2>

<sect2><title>Apache 2.0</title>
<para><!-- Start by setting some FLAGS for the compiler
-->
はじめにコンパイル用にいくつかフラグを設定してください。
</para>
<screen><command># export LDFLAGS="-L/usr/local/iplanet-ldap-sdk.5/lib/ -R/usr/local/iplanet-ldap-sdk.5/lib/:/usr/local/lib"</command>
<command># export CPPFLAGS="-I/usr/local/iplanet-ldap-sdk.5/include"</command>
</screen>
<para><!-- Next UNTAR the apache 2.0 source files, and execute the <filename>configure</filename> script.
-->
次に Apache 2.0 のソースファイルを展開し、<filename>configure</filename>
スクリプトを実行してください。
</para>
<screen><command># cd /tmp/download</command>
<command># gzip -d httpd-2.0.46.tar.gz </command>
<command># tar -xvf httpd-2.0.46.tar</command>
<command># cd httpd-2.0.46</command>
<command>#./configure --enable-so  --with-ssl --enable-ssl  --enable-rewrite   --enable-dav</command>
</screen>
<para><!-- Next run the make command
-->
次に make コマンドを走らせます。
</para>
<screen><command># make</command>
<command># make install</command>
</screen>
<sect3><title><!-- Starting Apache -->Apache の起動</title>
<screen><command># /usr/local/apache2/bin/apachectl start</command>
</screen>
</sect3>
<sect3><title><!-- Stopping Apache -->Apache の停止</title>
<screen><command># /usr/local/apache2/bin/apachectl stop</command>
</screen>
</sect3>
</sect2>

<sect2><title>mod_auth_ldap</title>
<para><!-- Untar modauthldap_apache2.tar.gz
-->
modauthldap_apache2.tar.gz を展開してください。</para>
<screen><command>cd /tmp/download</command>
<command># gzip -d modauthldap_apache2.tar.gz</command>
<command># tar -xvf modauthldap_apache2.tar</command>
<command># cd modauthldap_apache2</command>
</screen>
<para><!-- Now configure and install mod_auth_ldap
-->
今度は mod_auth_ldap を設定し、インストールしてください。
</para>
<screen><command># ./configure --with-apxs=/usr/local/apache2/bin/apxs  --with-ldap-dir=/usr/local/iplanet-ldap-sdk.5/</command>
<command># make</command>
<command># make install</command>
</screen>
</sect2>

<sect2><title>CERT DB for LDAPS://</title>
	<para><!-- You will also need to get the cert7.db and key7.db from <ulink url="http://www.xml-dev.com/xml/key3.db">http://www.xml-dev.com/xml/key3.db</ulink> and <ulink url="http://www.xml-dev.com/xml/cert7.db">http://www.xml-dev.com/xml/cert7.db</ulink> and place it in the <filename>/usr/local/apache2/sslcert/</filename>directory.
-->
cert7.db と key7.db をそれぞれ、
<ulink url="http://www.xml-dev.com/xml/key3.db">http://www.xml-dev.com/xml/key3.db</ulink> と
<ulink url="http://www.xml-dev.com/xml/cert7.db">http://www.xml-dev.com/xml/cert7.db</ulink>
から取得し、<filename>/usr/local/apache2/sslcert/</filename>
ディレクトリに置く必要もあります。
</para>
</sect2>

<sect2><title>PHP</title>
<para><!-- Unzip the PHP Source Files
-->
PHP のソースファイルを展開してください。
</para>
<screen><command>gzip -d php-xxx.tar.gz</command>
<command>tar -xvf php-xxx.tar</command>
</screen>

<para><!-- Configure and run the make command
-->
configure を行い、make コマンドを走らせてください。
</para>
<screen><command>cd php-xxx</command>
<command>./configure --with-mysql --with-apxs=/usr/local/apache2/bin/apxs</command>
</screen>
<para><!-- Compile the source code
-->
ソースコードをコンパイルしてください。
</para>
<screen><command># make </command>
<command># make install</command>
</screen>

<para><!-- Copy the php.ini file to the appropriate directory
-->
php.ini ファイルを適当なディレクトリにコピーしてください。
</para>
<screen><command>cp php.ini-dist /usr/local/lib/php.ini</command>
</screen>
</sect2>

</sect1>


<sect1 id="config-webdav"><title><!-- Configuring and Setting up the
 WebDAV services -->WebDAV サービスの設定と起動</title>

<para><!-- Now for the easy part. In this section we will WebDAV enable a
directory under Apache root.  
-->
ここは易しいところです。このセクションで、我々は Apache のルート配下
にあるディレクトリで WebDAV を有効にします。
</para>

<sect2><title><!-- Modifications to  the
<filename>/usr/local/apache/conf/httpd.conf</filename> --><filename>/usr/local/apache/conf/httpd.conf</filename> の修正</title>

<para>
<!--
Please verify that the following Apache directive appears in the 
<filename>/usr/local/apache/conf/httpd.conf</filename> :
-->
<filename>/usr/local/apache/conf/httpd.conf</filename> に、以下の
Apache ディレクティブがあることを確かめてください。
</para>
 
<para><screen>
  Addmodule mod_dav.c
</screen></para>

<para><!-- If it does not please add it. This directive informs Apache
about DAV capability. The directive must be placed outside any
container.  
-->
もしなければ追加してください。このディレクティブは、Apache に DAV
の機能を知らせるものです。このディレクティブは、あらゆるコンテナ
の外側に置かれなくてはなりません。
</para>

<para>
<!--
Next we must specify where Apache should store 
the DAVLockDB file. DAVLockDB is a lock database for the WebDAV. 
This directory should be writable by the httpd process.
-->
次に、Apache が DAVLockDB ファイルを格納するよう指定しなくてはなりません。
DAVLockDB は、WebDAV のロック・データベースです。このディレクトリは、
httpd プロセスにより書きこみ可能であるべきです。
</para>

<para>
<!--
I store the DAVLock file under <filename>/usr/local/apache/var</filename>.
I use this directory for other purposes as well. Please add the
following line to your
<filename>/usr/local/apache/conf/httpd.conf</filename> to specify
that the DAVLockDB file will be under
<filename>/usr/local/apache/var</filename> : 
-->
私は DAVLock ファイルを <filename>/usr/local/apache/var</filename>
の下に格納しています。このディレクトリは他の用途にも利用しています。
あなたの <filename>/usr/local/apache/conf/httpd.conf</filename>
に以下の一行を追加し、DAVLockDB ファイルが
<filename>/usr/local/apache/var</filename> の下にあることを指定してください。
</para>

<para><screen>
  DAVLockDB      /usr/local/apache/var/DAVLock 
</screen></para>

<para><!-- The directive must be placed outside any container.
-->
このディレクティブは、あらゆるコンテナの外側に置かれなくてはなりません。
</para>
</sect2>

<sect2><title><!-- Creating a directory for DAVLockDB -->DAVLockDB 用のディレクトリの作成</title>

<para><!-- As mentioned above a directory must be created  for DAVLockDB
that can be written by the web server process. Usually web server
process runs under the user '<emphasis>nobody</emphasis>' . Please
verify this for your system using the command: 
<screen><command>ps -ef | grep httpd</command></screen>
Under <filename>/usr/local/apache</filename> create
the directory and set the permissions on it using the following
commands:  
-->
上記の通り、ウェブサーバのプロセスにより書きこみ可能なディレクトリを、
DAVLockDB 用に作成しなくてはなりません。通常ウェブサーバのプロセスは、
'<emphasis>nobody</emphasis>'ユーザ権限で動作します。
以下のコマンドを使い、このことを確かめてください。
<screen><command>ps -ef | grep httpd</command></screen>
<filename>/usr/local/apache</filename> 配下にディレクトリを作成し、
以下のコマンドによりパーミッションを設定してください。
</para>

<para><screen>
  <command># cd /usr/local/apache</command>
  <command># mkdir var</command>
  <command># chmod -R 755 var/</command>
  <command># chown -R nobody var/</command>
  <command># chgrp -R nobody var/</command>
</screen></para>

</sect2>

<sect2><title><!-- Enabling DAV -->DAV を有効にする</title>

<para><!-- Enabling DAV is a trivial task. To enable DAV for a directory
under Apache root, just add the following directive in the container
for that particular directory: 
-->
DAV を有効にするのは、ちょっとした操作で済みます。Apache ルート配下の
ディレクトリで DAV を有効にするには、その特定ディレクトリの設定
を行うコンテナに、以下のディレクティブを追加してください。
</para>

<para><screen>
  DAV On
</screen></para>

<para><!-- This directive will enable DAV for the directory and its
sub-directories.  
-->
このディレクティブは、指定したディレクトリとそのサブディレクトリに対して
DAV を有効にします。
</para>

<para><!-- The following is a sample configuration that will enable WebDAV
and LDAP authentication on
<filename>/usr/local/apache/htdocs/DAVtest</filename>.  Place this in
the <filename>/usr/local/apache/conf/httpd.conf</filename> file.
-->
以下に <filename>/usr/local/apache/htdocs/DAVtest</filename> 上で
WebDAV と LDAP 認証を有効にするサンプル設定を示します。これを
<filename>/usr/local/apache/conf/httpd.conf</filename>
ファイルの中に入れてください。
</para>

<screen>
 DavLockDB /tmp/DavLock
&lt;Directory "/usr/local/apache2/htdocs/DAVtest"&gt;
Options Indexes FollowSymLinks
AllowOverride None
order allow,deny
allow from all
AuthName "SMA Development server"
AuthType Basic
LDAP_Debug On
#LDAP_Protocol_Version 3
#LDAP_Deref NEVER
#LDAP_StartTLS On
LDAP_Server you.ldap.server.com 
#LDAP_Port 389
# If SSL is on, must specify the LDAP SSL port, usually 636
LDAP_Port 636
LDAP_CertDbDir /usr/local/apache2/sslcert
Base_DN "o=SDS"
UID_Attr uid
DAV On
#require valid-user
require valid-user 
#require roomnumber "123 Center Building"
#require filter "(&amp;(telephonenumber=1234)(roomnumber=123))"
#require group cn=rcs,ou=Groups
&lt;/Directory&gt;
</screen>

</sect2>

<sect2><title><!-- Create a Directory called DAVtest-->DAVtest ディレクトリの作成</title>

<para><!-- As mentioned in a earlier section, all DAV directories have to
be writable by the WebServer process. In this example we assume
WebServer is running under username '<emphasis>nobody</emphasis>'.
This is usually the case. To check httpd is running under what user,
please use: 
-->
前のセクションで述べたように、全 DAV ディレクトリが、ウェブサーバの
プロセスにより書きこみ可能でなくてはなりません。この例では、
ウェブサーバが'<emphasis>nobody</emphasis>'というユーザ名で
動作していると仮定します。
普通はこうなっています。httpd がどのユーザ権限で動作しているか調べるには、
以下のコマンドを使ってください。
</para>
<screen><command># ps -ef | grep httpd</command></screen>

<para><!-- Create a test directory  called '<filename>DAVtest</filename>'
under <filename>/usr/local/apache2/htdocs</filename> :
-->
<filename>/usr/local/apache/htdocs</filename>
配下に '<filename>DAVetst</filename>'
という名前のテスト用ディレクトリを作成してください。
</para>

<para><command># mkdir /usr/local/apache/htdocs/DAVtest</command></para>

<para><!-- Change the permissions on the directory  to make it is
read-writable by the httpd process. Assuming the httpd is running
under username '<emphasis>nobody</emphasis>', use the following
commands:
-->
ディレクトリ上で httpd プロセスによる書きこみが可能になるように、
パーミッションを変更してください。httpd が '<emphasis>nobody</emphasis>'
ユーザ権限で動作しているなら、以下のコマンドを使用してください。
</para>

<screen>
  # cd /usr/local/apache/htdocs
  # chmod -R 755 DAVtest/
  # chown -R nobody DAVtest/
  # chgrp -R nobody DAVtest/
</screen>
</sect2>

<sect2><title><!-- Restart Apache -->Apache の再起動</title>

<para><!-- Finally you must run the configuration test routine that comes
with Apache to  verify the syntax in <filename>httpd.conf</filename> :
-->
最後に、Apache に同梱されている設定試験ルーチンを走らせて、
<filename>httpd.conf</filename> の構文を検査しなければなりません。
</para>

<screen><command># /usr/local/apache/bin/apachectl configtest</command></screen>

<para>
<!--
If you get error messages please verify that you followed all of
the above mentioned steps correctly. If you can not figure out the
error message feel free to email me with the error message
(<ulink url="mailto:saqib@seagate.com">saqib@seagate.com</ulink>).
-->
エラーメッセージが出たら、上記手順をすべて正しく行ったか確認
してください。もしエラーメッセージを理解できなければ、
気軽に私にエラーメッセージを電子メール
(<ulink url="mailto:saqib@seagate.com">saqib@seagate.com</ulink>)
で送ってください。
</para>

<para><!-- If the configtest is successful start the apache web-server: 
-->
設定試験が成功するなら、Apache ウェブサーバを起動してください。
</para>

<para><command># /usr/local/apache/bin/apachectl restart</command></para>

<para><!-- Now you have WebDAV enabled Apache Server with LDAP
authentication and SSL encryption.  
-->
これであなたは、LDAP 認証と SSL 暗号化を備え、
WebDAV が有効となった Apache サーバを手にしたことになります。
</para>



</sect2>

<sect2><title><!-- WebDAV server protocol compliance testing-->WebDAV サーバがプロトコルに準拠しているか試験する</title>
<para><!-- It is very important that the WebDAV that we just implemented be fully complaint with the WebDAV-2 protocol. If it is not 
fully compatible, the client side WebDAV applications will not function properly.
-->
我々がインストールした WebDAV 機能が、WebDAV バージョン 2 プロトコル
を完全に準拠しているかどうかは非常に重要です。もし完全に互換でないと、
クライアント側の WebDAV アプリケーションが適切に機能しません。
</para>

<para><!-- To test the complaince we will use a tool called Litmus. Litmus is a WebDAV server protocol compliance test suite, 
which aims to test whether a server is compliant with the WebDAV protocol as specified in RFC2518. 
-->
プロトコルに準拠しているか試験するには、Litmus というツールを使います。
Litmus は WebDAV サーバプロトコル準拠を試験するテストスイートで、
サーバが RFC2518 に規定される WebDAV プロトコルに準拠しているか
どうかを試験することを目的としています。
</para>

<para><!-- Please download the Litmus source code from http://www.webdav.org/neon/litmus/ and place it in the /tmp/downloads directory.
-->
http://www.webdav.org/neon/litmus/ から Litmus のソースコードを
ダウンロードし、それを /tmp/downloads ディレクトリに置いてください。
</para>

<para><!-- Then use gzip and tar to extract the files:
-->
それから gzip と tar を使い、ファイルを展開します。
</para>
<screen>
<command># cd /tmp/downloads</command>
<command># gzip -d litmus-0.6.x.tar.gz</command>
<command># tar -xvf litmus-0.6.x.tar</command>
<command># cd litmus-0.6.x</command>
</screen>

<para><!-- Compiling and installing Litmus is easy:
-->
Litmus のコンパイルとインストールは簡単です。
</para>

<screen>
<command># ./configure</command>
<command># make</command>
<command># make install</command>
</screen>

<para><!-- <command>make install</command> will install the Litmus binary files under <filename>/usr/local/bin</filename> and the help files under <filename>/usr/local/man</filename>
-->
<command>make install</command> で Litmus のバイナリファイルを
<filename>/usr/local/bin</filename> の下に、またそのヘルプファイルを
<filename>/usr/local/man</filename> の下にインストールします。
</para>


<para><!-- To the test the complaince of the WebDAV server that you just installed, please use the following command
-->
インストールしてある WebDAV サーバがプロトコルに準拠していることを
試験するには、以下のコマンドを用いてください。
</para>
<screen>
<command># /usr/local/bin/litmus http://you.dav.server/DAVtest userid passwd</command>
</screen>
</sect2>

</sect1>


<sect1><title><!-- WebDAV server management -->WebDAV サーバ管理</title>
<para><!-- In this section we will discuss about the various management task - e.g. using LDAP for access control, and working with DAV method on Apache
-->
このセクションでは、例えばアクセス制御のための LDAP 設定や、
Apache 上での DAV メソッドの設定などの、
いろいろな管理タスクについて説明します。
</para>
<para><!-- Most of the configuration changes for the DAV will have to done using the <filename>httpd.conf</filename> file. This file is located at <filename>/usr/local/apache/conf/httpd.conf</filename> -->
DAV に関する設定変更の大部分は、<filename>httpd.conf</filename>
ファイル上で行われます。このファイルは、
<filename>/usr/local/apache/conf/httpd.conf</filename> にあります。
</para>

<para><!-- <filename>httpd.conf</filename> is a text based configuration file that Apache uses. It can b editted using any text editor - I preffer using vi. Please make backup copy of this file, before changing it.
-->
<filename>httpd.conf</filename> は、Apache が利用するテキストベースの
設定ファイルです。どんなテキストエディタでも編集できます
- 私は vi が好みです。変更を行う前に、このファイルのバックアップ・コピー
を取っておいてください。
</para>

<para><!-- After making changes to the <filename>httpd.conf</filename> the Apache server has to be restarted using the <command>/usr/local/apache/bin/apachectl restart</command> command. 
However before restarting you test for the validity of the <filename>httpd.conf</filename> by using the <command>/usr/local/apache/bin/apachectl configtest</command> comand. 
-->
<filename>httpd.conf</filename> に変更を加えたら、
<command>/usr/local/apache/bin/apachectl restart</command> コマンドで
Apache サーバを再起動しなくてはなりません。しかし、再起動する前に
<command>/usr/local/apache/bin/apachectl configtest</command>
コマンドで <filename>httpd.conf</filename> に設定が正しく行われているか
テストしてください。
</para> 

<sect2><title><!-- Restricting access to DAV shares -->DAV 共有機能へのアクセスを制限する</title>
<para><!-- In the previous section when we created the DAVtest share, we used the LDAP for authentication purposes. However anyone
who can authenticates using their LDAP useri/passwd will be able to access that folder. 
-->
前のセクションで DAVtest 共有ディレクトリを作成した際に、
認証のために LDAP を使いました。しかしこの例では、
LDAP のユーザ ID/パスワードで認証できる人なら誰でも、
そのフォルダにアクセスできることになります。
</para>
<para><!-- Using the <command>require</command> directive in the httpd.conf file, we can limit access to certain individuals or groups of individuals.
-->
httpd.conf ファイルに <command>require</command>
ディレクティブを入れることで、特定のユーザや特定のユーザからなるグループ
に対するアクセスを制限できます。
</para>

<para><!-- If we look at the DAVtest configuration from the previosu section: 
-->
前のセクションの DAVtest に関する設定をもう一度見てみましょう。
<screen>
  &lt;Directory /usr/local/apache/htdocs/DAVtest&gt;
  Dav On
  #Options Indexes FollowSymLinks

  AllowOverride None
  order allow,deny
  allow from all
  AuthName "LDAP_userid_password_required"
  AuthType Basic
  &lt;Limit GET PUT POST DELETE PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK&gt;
  Require valid-user
  &lt;/Limit&gt;
  LDAP_Server ldap.server.com
  LDAP_Port 389
  Base_DN "o=ROOT"

  UID_Attr uid
  &lt;/Directory&gt;
</screen>
<!--
We see that the <command>require</command> is set to <command>valid-user</command>. Which means any valid authenticated user
has access to this folder. 
-->
<command>require</command> ディレクティブを <command>valid-user</command>
にセットすれば、どの認証されたユーザでもこのフォルダにアクセスできます。
</para>

<sect3><title><!-- Restricting access based on Individual UID(s) -->ユーザの UID でアクセスを制限する</title>
<para><!-- LDAP UID can be used to restrict access to DAV folder.
-->
LDAP の UID を使って、DAV 用フォルダへのアクセスを制限できます。
</para>
<para><!-- <command>require valid-user</command> directive can be changed to <command>require user 334455 445566</command>
-->
<command>require valid-user</command> ディレクティブを、
<command>require user 334455 445566</command> に変えます。
</para>
<para><!-- This will restrict access to individuals with UID 334455 and 445566. Anyone else will not be able to access this folder.
-->
こうすることで、UID が 334455 と 445566 であるユーザにアクセスを制限します。
それ以外の誰もこのフォルダにアクセスできなくなります。
</para> 
</sect3>

<sect3><title><!-- Restricting access based on groups of individuals. -->ユーザが属するグループでアクセスを制限する</title>
<para><!-- <command>require</command> can also be used to restrict access to groups of individuals. This can be either done using LDAP groups or LDAP filters. The filter must be valid LDAP filter syntax.
-->
<command>require</command> ディレクティブは、ユーザが属するグループで
アクセスを制限するのにも利用できます。これは、LDAP グループか LDAP
フィルタのいずれかを利用することで可能になります。フィルタを利用するなら、
LDAP のフィルタ構文に適合していないといけません。
</para>
</sect3>
</sect2>

<sect2><title><!-- Restricting write access to DAV shares -->DAV 共有機能への書きこみアクセスを制限する</title>
<para><!-- It maybe be required that the editting for the resources on the DAV shares be restricted to certain individual, however anyone can view the resources. This can be easily done using the <command>&lt;Limit&gt;</command> tags in the httpd.conf file
-->
誰もが DAV の共有リソースを閲覧可能であっても、DAV の共有リソースの
編集機能を特定ユーザに限定する必要があるかもしれません。
これは httpd.conf ファイルに <command>&lt;Limit&gt;</command>
タグを入れることで簡単に実現できます。
</para>
<para> 
<screen>
  &lt;Directory /usr/local/apache/htdocs/DAVtest&gt;
  Dav On
  #Options Indexes FollowSymLinks

  AllowOverride None
  order allow,deny
  allow from all
  AuthName "LDAP_userid_password_required"
  AuthType Basic
  &lt;Limit GET PUT POST DELETE PROPFIND PROPPATCH MKCOL COPY MOVE LOCK UNLOCK&gt;
  Require valid-user
  &lt;/Limit&gt;
  LDAP_Server ldap.server.com
  LDAP_Port 389
  Base_DN "o=ROOT"

  UID_Attr uid
  &lt;/Directory&gt;
</screen>
</para>
<para><!-- You restrict write access to certain individuals by changing the <command>&lt;limit&gt;</command> to
-->
<command>&lt;limit&gt;</command> を以下のように変えることで、
特定ユーザに書きこみアクセスを制限します。
<screen>
  &lt;Limit PUT POST DELETE PROPPATCH MKCOL COPY MOVE LOCK UNLOCK&gt;
  Require 334455
  &lt;/Limit&gt;
</screen>
</para>
<para><!-- Basically we are limiting the PUT POST DELETE PROPPATH MKCOL COPY MOVE LOCK and UNLOCK to an individual who has the UID of 334455. Everone else will be able to use the methods GET and PROPFIND on the resources, but not any other method.
-->
要するに、PUT POST DELETE PROPPATH MKCOL COPY MOVE LOCK そして UNLOCK
機能は、UID が 334455 であるユーザだけが行えます。他の人は皆、
リソースに GET や PROPFIND メソッドを適用できますが、
その他のどのメソッドも適用できません。
</para>


</sect2>

</sect1>

<sect1 id="ssl"><title><!-- Implementing and using SSL to secure HTTP traffic -->SSL を使用した WebDAV トラフィックの保護</title>
<para>
<!--
Security of the data stored on a file server is very important these days. Compromised data can cost thousands of dollars to
company. In the last section, we compiled LDAP authentication module into the Apache build to provide a Authentication 
mechanism. However HTTP traffic is very insecure, and all data is transferred in clear text - meaning, the LDAP authentication
(userid/passwd) will be transmitted as clear text as well. This creates a problem. Anyone can sniff these userid/passwd and gain
access to DAV store. To prevent this we have to encrypt HTTP traffic, essentially HTTP + SSL or HTTPS. Anything transferred over
HTTPS is encrypted, so the LDAP userid/passwd can not be easily deciphered. HTTPS runs on port 443. The resulting build from the last 
section's compilation process will have Apache to listen to both port 80 (normal HTTP) and 443 (HTTPS). If you are just going
to use this server for DAV, then I will highly suggest that you close port 80. In this section of the HOWTO I will provide some 
information regarding SSL and maintaining SSL on a Apache HTTP server.  
-->
ファイルサーバに格納されたデータのセキュリティが、昨今大変重要
になっています。データが不正に改変された場合、企業は数千ドルを失う
可能性もあります。この前のセクションにおいて、
我々は認証機構を提供するために、Apache をビルドする際に LDAP
認証モジュールを組みこみました。しかし、HTTP トラフィックは非常に
安全性が低く、データはすべて平文で転送されます - つまり、LDAP
認証を行うユーザ ID やパスワードも同様に平文で転送されてしまうのです。
これが問題を引き起こします。誰もがユーザ ID/パスワードを覗き見て、
DAV 格納所へのアクセス権を取得できます。これを防ぐには、
基本的には HTTP + SSL もしくは HTTPS により HTTP トラフィックを
暗号化しなくてはなりません。HTTPS 上で転送されるものはすべて暗号化
されますので、LDAP のユーザ ID/パスワードは簡単には復号化できません。
HTTPS は443番ポート上で動作します。この前のセクションにおいて
コンパイルをした結果、Apache はポート80番(通常の HTTP)と443番
(HTTPS)の両方をリッスンするようになっています。
もしあなたがこのサーバを DAV のためだけに使うつもりならば、
その場合ポート80番を閉じることを強くお勧めします。このセクションでは、
SSL に関する情報と、Apache HTTP サーバ上で SSL
を管理するための情報を提供します。
</para>

<sect2><title><!-- Introduction to SSL -->SSL 入門</title>
<para>
<!--
SSL (Secure Socket Layer) is a protocol layer that exists between the Network Layer and Application layer. As the name suggest
SSL provides a mechanism for encrypting all kinds of traffic - LDAP, POP, IMAP and most importantly HTTP. 
-->
SSL (Secure Socket Layer)は、ネットワーク層とアプリケーション層の間に
位置するプロトコル層です。名前が示す通り、SSL はあらゆる種類の
トラフィック--LDAP, POP, IMAP そして最も重要なのが HTTP--
を暗号化するメカニズムを提供します。
</para>
<para>
<!--
The following is a over-simplified structure of the layers involved in SSL.
-->
以下に SSL に含まれる層を非常に簡易化した構造を示します。
<screen>

	+-------------------------------------------+
	|   LDAP   |    HTTP    |   POP   |   IMAP  |
	+-------------------------------------------+
	|                   SSL                     |
	+-------------------------------------------+
	|               Network Layer               |
	+-------------------------------------------+
	
</screen>
</para>
<sect3><title><!-- Encryption algorithms used in SSL -->SSL で利用される暗号アルゴリズム</title>
<para>
<!--
	There are three kinds of cryptographic techniques used in SSL: Public-Private Key, Symmetric Key, and Message Digest.
-->
SSL で利用される暗号化技術には、公開・秘密鍵、共通鍵、
そしてメッセージダイジェストの三種類があります。
</para>
<para>
<!--
	<emphasis role="strong">Public-Private Key Crytography - Initiating SSL connection: </emphasis> In this algorithm, encryption and decryption is performed using a pair of private and public keys.  The Web-server holds the private Key, and sends the Public key to the client in the Certificate. 
-->
<emphasis role="strong">公開・秘密鍵暗号方式 - SSL コネクションの開始:
</emphasis>
このアルゴリズムの場合、暗号化と復号化は一組の公開鍵と秘密鍵を利用して
実行されます。ウェブサーバは秘密鍵を保持し、公開鍵を認証書の中に入れて
クライアントに送ります。
</para>

<orderedlist>
	<listitem>
		<para><!-- The client request content from the Web Server using HTTPS.
-->
クライアントが、HTTPS を使いウェブサーバにコンテンツを要求する。
</para>
	</listitem>
	<listitem>
		<para><!-- The web server responds with a Digital Certificate which includes the server's public key.
-->
ウェブサーバは、サーバの公開鍵を含むデジタル証明書を付けて応答する。
</para>
	</listitem>
	<listitem>
		<para><!-- The client checks to see if the certificate has expired.
-->
クライアントは、証明書の期限が切れていないか調べる。
</para>
	</listitem>
	<listitem>
		<para><!-- Then the client checks if the Certificate Authority that signed the certificate, is a trusted authority listed in the browser. This explains why we need to get a certificate from a a trusted CA.
-->
それからクライアントは、証明書を署名した認証局が、ブラウザの信頼できる
認証局のリストの中にあるか調べる。これが、我々が信頼できる CA から証明書
を得る必要がある理由です。
</para>
	</listitem>
	<listitem>
		<para><!-- The client then checks to see if the Fully Qualified Domain Name (FQDN) of the web server matches the Comman Name (CN) on the certificate?
-->
その後でクライアントは、ウェブサーバの Fully Qualified Domain Name (FQDN)
が、証明書にある Common Name (CN) と一致するか調べる。
</para>
	</listitem>
	<listitem>
		<para><!-- If everything is successful the SSL connection is initiated.
-->
すべて条件を満たせば、SSL コネクションが開始される。
</para>
	</listitem>
</orderedlist>
<note><title><!-- Note: -->注記:</title><para><!-- Anything encrypted with Private Key can only be decrypted by using the Public Key. Similarly anything encrypted using the Public Key can only be decrypted using the Private Key. There is a common mis-conception that only the Public Key is used for encryption and Private Key is used for decryption. This is not case. Any key can be used for encryption/decryption. However if one key is used for encryption then the other key must be used for decryption. e.g. A message can not encrypted and then decrypted using only the Public Key.
-->
秘密鍵で暗号化されたものは、公開鍵を使ってしか復号化できません。
同様に、公開鍵で暗号化されたものは、秘密鍵を使ってしか復号化できません。
公開鍵だけが暗号化に使われ、秘密鍵は復号化に使われるというありがちな
誤解があります。これは正しくありません。いずれの鍵も暗号化、
復号化に使えます。しかし、片方の鍵で暗号化されれば、
その場合はもう片方の鍵で復号化しないといけません。
例えば、公開鍵を用いて暗号化したメッセージを公開鍵で復号化
はできません。
</para>

	<para><!-- <emphasis>Using Private Key to encrypt and a Public Key to decrypt ensures the integrity of the sender (owner of the Private Key) to the recipients. Using Public Key to encrypt and a Private Key to decrypt ensures that only the inteded recipient (owner of the Private Key) will have access to the data.</emphasis>(i.e. only the person who holds the Private Key will be able to decipher the message).
-->
<emphasis>秘密鍵を暗号化に使い、公開鍵を復号化に使うことで、
受信側に対し、送信側の完全性を保証します。公開鍵を暗号化に使い、
秘密鍵を復号化に使うことで、意図する受信側(秘密鍵の所有者)
だけがデータにアクセスすることを保証します。</emphasis>
(つまり、秘密鍵を保持する人だけが、メッセージを復号化できます)
</para></note>
<para>
<!--
	<emphasis role="strong">Symmetric Cryptography - Actual transmission of data</emphasis>: After the SSL connection has been established, Symmetric cryptography is used for encrypting data as it uses less CPU cycles. In symmetric cryptography the data can be encrypted and decrypted using the same key. The Key for symmetric cryptography is exchanged during the initiation process, using Public Key Cryptography. 
-->
<emphasis role="strong">対称鍵暗号方式 - 実際に転送するデータの暗号化を行う
</emphasis>: SSL コネクションの確立後、CPU に対する負荷が
公開・秘密鍵暗号方式より軽いので、データの暗号化には対称鍵暗号方式が
利用されます。対称鍵暗号方式では、データの暗号化
も復号化も同一の鍵で行われます。対称鍵暗号方式で利用される鍵は、
SSL セッションを始動する過程で、公開・秘密鍵暗号方式を用いて交換されます。
</para>

<para><!-- <emphasis role="strong">Message Digest</emphasis> The server uses message digest algoritm such as HMAC, SHA, MD5 to verify the integrity of the transferred data.
-->
<emphasis role="strong">メッセージ・ダイジェスト</emphasis> サーバは、
転送されたデータの完全性を検証するのに HMAC, SHA, MD5
などのメッセージ・ダイジェストアルゴリズムを利用します。
</para>
</sect3>

</sect2>

<sect2><title><!-- Test Certificates -->テスト用証明書</title>
<para><!-- While compiling Apache we created a test certificate. We used the makefile provided by
mod_ssl to create this custom Certificate. We used the command:
-->
Apache をコンパイルする間に、我々はテスト用証明書を作成しました。
我々はこの独自の証明書を作成するのに、mod_ssl により提供される
makefile を使用しました。我々は以下のコマンドを用いました。
<screen><command># make certificate TYPE=custom</command></screen>
</para>

<para><!-- This certificate can be used for testing purposes.
-->
テスト目的にはこの証明書が利用できます。
</para>
</sect2>

<sect2><title><!-- Certificates for Production use -->実運用に使う証明書</title>
<para>
<!--
	For production use you will need a certificate from a Certificate Authority (hereafter CA). Certificate Authorities are certificate vendors, who are listed as a Trusted CA in the user's browser. As mentioned in the Encryption Algorithms section, if the CA is not listed as a trusted authority, your user will get a warning message when trying to connect to a secure location.
-->
実運用を行うには、認証局 (Certificate Authorities。以下、CA)
から証明書を取得する必要があります。認証局は認証ベンダであり、
ユーザのブラウザクライアントに信頼できる CA
としてリストアップされています。暗号アルゴリズムについて解説したセクション
で述べたように、もし CA が信頼できる認証局のリストに入っていないと、
ユーザは保護されているサイトに接続しようとした際に警告メッセージを
もらうことになります。
</para>
<para>
<!--
Similarly the test certificates will also cause a warning message to appear on the user's browser.
-->
同様に、テスト用の認証書では、ユーザのブラウザに警告メッセージ
が表示されることになります。
</para>
 
</sect2>

<sect2><title><!-- How to generate a CSR -->CSR の作成方法</title>
<para>
<!--
CSR or Certificate Signing Request must be sent to the trusted CA for signing. This section discusses howto create a CSR,
and send it to the CA of your choice. <command># openssl req</command> command can be used to a CSR as follows:
-->
CSR、証明書署名要求は、信頼できる CA に送り署名してもらう
必要があります。このセクションは、CSR を作成し、それを自分で選んだ
CA に送る方法について説明します。以下に示すように、
<command># openssl req</command> コマンドが CSR の作成に利用できます。
</para>

<screen>
<command># cd /usr/local/apache/conf/</command>
<command># /usr/local/ssl/bin/openssl req -new -nodes -keyout private.key -out public.csr</command>
Generating a 1024 bit RSA private key
............++++++
....++++++
writing new private key to 'private.key'
-----
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [AU]:US
State or Province Name (full name) [Some-State]:California
Locality Name (eg, city) []:San Jose
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Seagate 
Organizational Unit Name (eg, section) []:Global Client Server
Common Name (eg, YOUR name) []:xml.seagate.com
Email Address []:saqib@seagate.com

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:badpassword
An optional company name []:

</screen>

<note><title>"PRNG not seeded"</title><para><!-- If you do not have <filename>/dev/random</filename> on your system you will get a <emphasis>"PRNG not seeded"</emphasis> error message. In that case you can use the following command:
-->
あなたのシステムに <filename>/dev/random</filename> がないと、
<emphasis>"PRNG not seeded"</emphasis> エラーメッセージが出ます。
その場合、以下のコマンドを利用できます。
</para>

<screen><command># /usr/local/ssl/bin/openssl req -rand <filename>some_file.ext</filename> -new -nodes -keyout private.key -out public.csr </command>
</screen>
<para><!-- Replace some_file.ext with the name of a existing file on your file system. Any file can be specified. Openssl will use that file to generate the seed
-->
some_file.ext をご利用のファイルシステムに
どんなファイルでも指定可能です。
OpenSSL が、種を生成するのにそのファイルを使用するのです。
</para>
</note>
<para>
<!--
At this point you will be asked several questions about your server to generate the Certificate Singning Request
-->
この時点で、証明書署名要求を生成するために、
サーバの位置について何度か尋ねられます。
</para>

<para>
<!--
Note: Your Common Name (CN) is the Fully Qualified DNS (FQDN) name of your webserver e.g. dav.server.com . If you put in anything else, it will NOT work. Remember the password that you use, for future reference.
-->
注記:あなたの Common Name は、dav.server.com といったウェブサーバの完全修飾
DNS(FQDN)名になります。あなたが何か他のものを入力してしまうと、
正しく動作しません。将来必要になりますので、ここで使用するパスワードは
忘れないでください。
</para>

<para><!-- Once the process is complete, you will have <filename>private.key</filename> and a <filename>public.csr</filename> . You will need to submit the <filename>public.csr</filename> to the Certification Authority. At this pointe the public.key is not encrypted. To encrypt:
-->
このプロセスが完了すると、あなたは <filename>private.key</filename>
と <filename>public.csr</filename> を取得します。
認証局に <filename>public.csr</filename> を提出する必要があります。
この段階では、public.key はまだ暗号化されていません。
暗号化するには以下のコマンドを実行してください。
</para>


<screen> <command># mv private.key private.key.unecrpyted</command>
<command># /usr/local/ssl/bin/openssl rsa -in private.key.unecrpyted -des3 -out private.key</command>
</screen>


</sect2>
<sect2><title><!-- Installing Server Private Key, and Server Certificate -->サーバ秘密鍵とサーバ証明書のインストール</title>
	<para><!-- Once the Certification Authority processes your request, they will send an encoded certificate (Digital Certificate) back to you. The Digital Certificate is in the format defined by X.509 v3. The following shows the structure of a typical X509 v3 Digital Certificate
-->
認証局はあなたのリクエストを処理すると、エンコードされた証明書
(デジタル証明書)をあなたに送り返します。
デジタル証明書は、X.509バージョン3により定義されるフォーマットになります。以下に、典型的なX.509バージョン3デジタル証明書の構造を示します。
</para>

	<itemizedlist mark='opencircle'>
		<listitem><para><!-- Certificate -->証明書
			<itemizedlist mark='opencircle'><listitem><para><!-- Version -->バージョン</para></listitem><listitem><para><!-- Serial Number -->シリアル番号</para></listitem><listitem><para><!-- Algorithm ID -->アルゴリズム ID</para></listitem><listitem><para><!-- Issuer -->発行者</para></listitem></itemizedlist>
			<itemizedlist mark='opencircle'>
				<listitem><para><!-- Validity -->有効期間</para></listitem>
				<listitem><para><itemizedlist mark='opencircle'><listitem><para><!-- Not Before -->証明書の発行日時</para></listitem><listitem><para><!-- Not After -->証明書の有効期限</para></listitem></itemizedlist></para></listitem>
			</itemizedlist>
			<itemizedlist mark='opencircle'><listitem><para>Subject</para></listitem></itemizedlist>
			<itemizedlist mark='opencircle'>
				<listitem><para><!-- Subject Public Key Info -->被証明者の公開鍵情報</para></listitem>
				<listitem><para><itemizedlist mark='opencircle'><listitem><para><!-- Public Key Algorithm -->公開鍵アルゴリズム</para></listitem><listitem><para><!-- RSA Public Key -->RSA 公開鍵</para></listitem></itemizedlist></para></listitem>
			</itemizedlist>
			<itemizedlist mark='opencircle'><listitem><para><!-- Extensions -->拡張領域</para></listitem></itemizedlist>
		</para></listitem>
		<listitem><para><!-- Certificate Signature Algorithm -->証明書署名アルゴリズム</para></listitem>
		<listitem><para><!-- Certificate Signature -->証明書署名</para></listitem>

	</itemizedlist>

<sect3><title><!-- Verifying a Digital Certificate -->デジタル証明書の検証</title>
		<para><!-- To verify a X.509 Certificate use the following command
-->
X.509証明書を検証するには、以下のコマンドを使用します。
</para>
<screen><command># openssl verify <filename>server.crt</filename></command>
server.crt: OK </screen>
	<para><!-- Where <filename>server.crt</filename> is the name of the file that contains the Digital Certificate
-->
<filename>server.crt</filename> は、デジタル証明書を含むファイル名です。
</para>	
		
</sect3>
<sect3><title><!-- Viewing the contents of a Digital Certificate -->デジタル証明書の中身を見る</title>
	<para><!-- The contents of a Digital Certificate can be viewed by using the <command># openssl x509</command> command as follows:
-->
デジタル証明書の中身は、以下のように <command># openssl x509</command>
コマンドを使用することで見ることができます。
</para>
	<screen><command># openssl x509 -text -in <filename>server.crt</filename></command>
Certificate:
    Data:
        Version: 3 (0x2)
        Serial Number: 312312312 (0x0)
        Signature Algorithm: md5WithRSAEncryption
	Issuer: C=US, O=GTE Corporation, CN=GTE CyberTrust Root
        Validity
            Not Before: Feb  8 03:25:50 2000 GMT
            Not After : Feb  8 03:25:50 2001 GMT
	    Subject: C=US, ST=New York, L=Pelham, O=xml-dev, OU=web, CN=www.xml-dev.com/Email=saqib@xml-dev.com
        Subject Public Key Info:
            Public Key Algorithm: rsaEncryption
            RSA Public Key: (1024 bit)
                Modulus (1024 bit):
		............
		............
                Exponent: 65537 (0x10001)
    Signature Algorithm: md5WithRSAEncryption
    	............
	............

	</screen>	
	

	<para><!-- You will need to place this certificate on the server, and tell Apache where to find it.
-->
あなたはこの証明書をサーバ上に置き、
Apache にその位置を指定する必要があります。
</para>
	<para><!-- For this example, the Private Key is placed in the <filename class="directory">/usr/local/apache2/conf/ssl.key/</filename> directory, and the Sever Certificate is placed in the <filename class="directory">/usr/local/apache2/conf/ssl.crt/</filename>.
-->
本例では、秘密鍵は
<filename class="directory">/usr/local/apache2/conf/ssl.key/</filename>
ディレクトリに置かれ、そしてサーバ証明書は
<filename class="directory">/usr/local/apache2/conf/ssl.crt/</filename>
ディレクトリに置かれます。
</para>
	<para><!-- Copy the file received from the Certification to a file called <filename>server.crt</filename> in the <filename class="directory">/usr/local/apache2/conf/ssl.crt/</filename>.
-->
認証局から受信したファイルを
<filename class="directory">/usr/local/apache2/conf/ssl.crt/</filename>
ディレクトリに <filename>server.crt</filename>
という名前でコピーしてください。
</para>
	<para><!-- And place the private.key generated in the previous step in the <filename class="directory">/usr/local/apache2/conf/ssl.key/</filename>
-->
-->
そして、先ほどの手順で生成された private.key を
<filename class="directory">/usr/local/apache2/conf/ssl.key/</filename>
ディレクトリに置いてください。
</para>
	<para><!-- Then modify the <filename class="directory">/usr/local/apache2/conf/ssl.conf</filename> to point to the correct Private Key and Server Certificate files:
-->
その後で、正しい秘密鍵とサーバ証明書ファイルを指すよう
<filename class="directory">/usr/local/apache2/conf/ssl.conf</filename>
を修正します。
</para>

<screen>
#   Server Certificate:
#   Point SSLCertificateFile at a PEM encoded certificate.  If
#   the certificate is encrypted, then you will be prompted for a
#   pass phrase.  Note that a kill -HUP will prompt again.  Keep
#   in mind that if you have both an RSA and a DSA certificate you
#   can configure both in parallel (to also allow the use of DSA
#   ciphers, etc.)
<emphasis role="strong">SSLCertificateFile /usr/local/apache2/conf/ssl.crt/server.crt</emphasis>
#SSLCertificateFile /usr/local/apache2/conf/ssl.crt/server-dsa.crt

#   Server Private Key:
#   If the key is not combined with the certificate, use this
#   directive to point at the key file.  Keep in mind that if
#   you've both a RSA and a DSA private key you can configure
#   both in parallel (to also allow the use of DSA ciphers, etc.)
<emphasis role="strong">SSLCertificateKeyFile /usr/local/apache2/conf/ssl.key/private.key</emphasis>
#SSLCertificateKeyFile /usr/local/apache2/conf/ssl.key/server-dsa.key
</screen>
</sect3>
</sect2>


<sect2><title><!-- Removing passphrase from the RSA Private Key -->RSA 秘密鍵のパスフレーズを解除</title>
<para><!-- RSA Private Key stored on the webserver is usually encrypted, and you need a passphrase to parse the file. That is why you
are prompted for a passphrase when start Apache with modssl:
-->
ウェブサーバに格納される RSA 秘密鍵は、通常暗号化されており、
そのファイルを解読するにはパスフレーズを必要とします。そのため、
mod_ssl 付きで Apache を起動する際にパスフレーズを要求されるのです。
</para>

<para>
<screen>
<command># apachectl startssl</command>
<command>Apache/1.3.23 mod_ssl/2.8.6 (Pass Phrase Dialog)</command>
<command>Some of your private key files are encrypted for security reasons.</command>
<command>In order to read them you have to provide us with the pass phrases.</command>
<command>Server your.server.dom:443 (RSA)</command>
<command>Enter pass phrase:</command>
</screen>
</para>

<para><!-- Encrypting the RSA Private Key is very important. If a cracker gets hold of your "Unencrypted RSA Private Key" he/she can easily impersonate your webserver. If the Key is encrypted, the cracker can not do anything without brute forcing the passphrase. Use of a strong (ie: long) passphrase is encouraged. 
-->
RSA 秘密鍵を暗号化するのはとても重要なことです。もし誰かがあなたの
「暗号化されていない RSA 秘密鍵」を手に入れれば、彼/彼女は容易にあなたの
ウェブサーバを偽装できます。秘密鍵が暗号化されていれば、
ハッカーはパスフレーズをブルートフォース攻撃で破りでもしない限り
何もできません。強力な (つまり長い) パスフレーズを使用されることを
お勧めします。
</para>

<para><!-- However encrypting the Key can sometimes be nuisance, since you will be prompted for a passphrase everytime you start the web-server. Especially if you are using rc scripts to start the webserver at boot time. The prompt for a passphrase will stop the boot process, waiting for your input.
-->
しかし、ウェブサーバを起動する度にパスフレーズを要求されるわけですから、
鍵を暗号化するのが悩ましい場合もあります。特にブート時の
ウェブサーバの起動に rc スクリプトを利用していると、
パスフレーズを要求されて入力待ちとなり、
ブートプロセスが止まってしまいます。
</para>

<para><!-- You can get rid of the passphrase prompt easily by decrypting the Key. However make sure that no one can hold of this Key. I would 
recommend Hardening and Securing guidelines be followed before decrypting the Key on the webserver.
-->
秘密鍵の(パスフレースによる)暗号化をやめれば、パスフレーズの要求は
簡単に止められます。ただし、誰もこの鍵を手に入れられないようにしてください。
私としては、ウェブサーバ上で秘密鍵を復号化する前に、セキュリティの
ガイドラインを厳しくし、安全化することをお勧めします。
</para>

<para><!-- To decrypt the Key:
-->
鍵を復号化するには、
</para>
<para><!-- First make a copy of the encrypted key
-->
まず暗号化された鍵の複製を作成します。
</para>
<para><screen><command># cp server.key server.key.cryp</command></screen></para>
<para><!-- Then re-write the key with encryption. You will be prompted for the original encrypted Key passphrase
-->
その後で暗号化されている鍵を書き換えてください。元の暗号化された鍵の
パスフレーズを要求されます。
</para>
<para><screen><command># /usr/local/ssl/bin/openssl rsa -in server.key.cryp -out server.key</command>
read RSA key
Enter PEM pass phrase:
writing RSA key
</screen>
</para> 

<para>
<!--
One way to secure the decrypted Private Key is to make readable only by the root:
-->
復号化された秘密鍵を安全化する一つの手法として、それを root
からしか見えなくするというのがあります。
<screen>
<command># chmod 400 server.key</command>
</screen>
</para>
</sect2>

<sect2><title><!-- Trusted Certificate Authorities -->信頼できる認証局</title>
<para><!-- The following is list of Certificate Authorities that are trusted by the various browsers:
-->
以下が、いろいろなブラウザに信頼されている認証局のリストです。
</para>
<orderedlist numeration="lowerroman">
	<listitem>
		<para><ulink url="http://www.baltimore.com/">Baltimore</ulink></para>
	</listitem>
	<listitem>
		<para><ulink url="http://www.entrust.com/">Entrust</ulink></para>
	</listitem>

	<listitem>
		<para><ulink url="http://www.thawte.com">Thawte</ulink></para>
	</listitem>
	<listitem>
		<para><ulink url="http://www.verisign.com">Verisign</ulink></para>
	</listitem>
</orderedlist>


</sect2>      
</sect1>

<!-- Added for Japanese version -->
  <sect1 id="japanese">
    <title>日本語訳について</title>

    <indexterm>
      <primary>disk!japanese</primary>
    </indexterm>

    <para>
      日本語訳は Linux Japanese FAQ Project が行いました。
      翻訳に関するご意見は JF プロジェクト &lt;JF@linux.or.jp&gt; 宛に連絡
      してください。
    </para>

    <para>
    <variablelist><title>v4.1.0j</title>
      <varlistentry><term>翻訳:</term>
      <listitem>
        <para>
           yomoyomo <email>ymgrtq@ma.neweb.ne.jp</email>
        </para>
      </listitem>
      </varlistentry>

      <varlistentry><term>校正:</term>
      <listitem>
        <itemizedlist>
          <listitem><para>
            中野 武雄さん <email>nakano@apm.seikei.ac.jp</email>
          </para></listitem>
          <listitem><para>
            Seiji Kaneko さん <email>skaneko@a2.mbn.or.jp</email>
          </para></listitem>
          <listitem><para>
            佐野 武俊さん <email>kgh12351@nifty.ne.jp</email>
          </para></listitem>
          <listitem><para>
            松田 陽一さん <email>matsuda@palnet.or.jp</email>
          </para></listitem>
        </itemizedlist>
      </listitem>
    </varlistentry>

    </variablelist>
    </para>

  </sect1>

<glossary id="glossary"><title><!-- Glossary of PKI Terms -->PKI 用語辞典</title>

<glossdiv><title>A</title>

	<glossentry id="asymmetric_crypt"><glossterm><!-- Asymmetric Cryptography -->非対称暗号方式</glossterm>
<glossdef>
	<para><!-- In this Cryptography a Key Pair - Private and Public Key is used. Private Key is kept secret and the Public Key is Widely distrbuted.
-->
この暗号方式では、秘密鍵と公開鍵の鍵ペアを使用します。
秘密鍵は秘匿し、公開鍵は広範に配布されます。
</para>
</glossdef>
</glossentry>
</glossdiv>

	
<glossdiv><title>C</title>

<glossentry id="ca"><glossterm><!-- Certificate Authority (CA) -->認証局(Certificate Authority (CA))</glossterm>
	<acronym>CA</acronym>
<glossdef>
	<para><!-- Issuer of the Digital Certificate. Also validates the Identity of the End-Entity that posseses the Digital Certificate.
-->
デジタル証明書の発行者。デジタル証明書を所有するエンドエンティティの
同一性の確認も行う。
</para>
</glossdef>
</glossentry>

<glossentry id="csr"><glossterm><!-- Certificate Signing Request (CSR) -->証明書署名要求(Certificate Signing Request (CSR))</glossterm>
	<acronym>CSR</acronym>
<glossdef>
	<para><!-- Certificate Signing Request (CSR) is what you send to a Certifiate Authority (CA) to get enrolled. A CSR contains the Public Key of the End-Entity that is a requesting the Digital Certificate.
-->
証明書署名要求(CSR)は、認証局(CA)への登録に際して送信するものです。
CSR には、デジタル証明書を要求しているエンドエンティティの
公開鍵が含まれます。
</para>
</glossdef>
</glossentry>

<glossentry id="cn"><glossterm>Common Name (CN)</glossterm>
	<acronym>CN</acronym>
<glossdef>
	<para><!-- Common Name is the name of the End-Entity e.g. Saqib Ali. If the End-Entity is a WebServer the CN is the Fully Qualified Domain Name (FQDN) of the WebServer
-->
Common Name は、例えば Saqib Ali といったエンドエンティティの名前です。
もしそのエンドエンティティがウェブサーバなら、
CN はそのウェブサーバの Fully Qualified Domain Name (FQDN) になります。
</para>
</glossdef>
</glossentry>


</glossdiv>

<glossdiv><title>D</title>

	<glossentry id="dig_cert"><glossterm><!-- Digital Certificate -->デジタル証明書</glossterm>

<glossdef>
	<para><!-- Public Key of the End-Entity + the identifying information of the End-Entity (owner of the Public Key). It certifies the Identity of the owner (End-Entity). It is signed by Issuing CA.
-->
エンドエンティティの公開鍵＋そのエンドエンティティ
(公開鍵の所有者)の識別情報。その所有者(エンドエンティティ)
の同一性を証明します。発行 CA により署名されます。
</para>
</glossdef>
</glossentry>

<glossentry id="dig_sign"><glossterm><!-- Digital Signature -->デジタル署名</glossterm>
<glossdef>
	<para><!-- A Digital Signature is created by signing the Message Digest using the Private Key. It ensures the Identity of the Sender, and the Integrity of the Data.
-->
デジタル署名は、秘密鍵を使用したメッセージダイジェストを署名
することにより作成されます。デジタル署名は、送信者の同一性と、
そのデータの完全性を保証します。
</para>
</glossdef>
</glossentry>
</glossdiv>

<glossdiv><title>E</title>
<glossentry id="end_entity"><glossterm><!-- End-Entity -->エンドエンティティ</glossterm>
<glossdef>
	<para><!-- An entity that participates in the PKI. Usually a Server, Service, Router, or a Person. A CA is not a End-Entity. An RA is an End-Entity to the CA
-->
PKI に参加するエンティティ。通常はサーバ、サービス、ルータ、
もしくは人です。CA はエンドエンティティではありません。
RA は CA に対するエンドエンティティです。
</para>
</glossdef>
</glossentry>
</glossdiv>


<glossdiv><title>P</title>

<glossentry id="private_key"><glossterm><!-- Private Key -->秘密鍵</glossterm>
<glossdef>
	<para><!-- Private Key is the Key in Asymmetric Cryptography that is kept secret by the owner (End-Entity). Can be used for encryption or decryption
-->
秘密鍵は非対称暗号方式で使用する鍵であり、その所有者
（エンドエンティティ）により秘匿されるものです。
秘密鍵は、暗号化、復号化に使用できます。
</para>
</glossdef>
</glossentry>

<glossentry id="public_key"><glossterm><!-- Public Key -->公開鍵</glossterm>
<glossdef>
	<para><!-- Public Key is the Key in Asymmetric Cryptography that is widely distributed. Can be used for encryption or decryption
-->
公開鍵は非対称暗号方式で使用する鍵であり、広範に配布されます。
公開鍵は、暗号化、復号化に使用できます。
</para>
</glossdef>
</glossentry>
	<glossentry id="pki"><glossterm><!-- Public Key Infrastructure (PKI) -->公開鍵基盤(Public Key Infrastructure (PKI))</glossterm>
		<acronym>PKI</acronym>
<glossdef>
	<para><!-- Public Key Infrastructure -->公開鍵基盤</para>
</glossdef>
</glossentry>
</glossdiv>


<glossdiv><title>S</title>
	<glossentry id="sslayer"><glossterm>Secure Socket Layer (SSL)</glossterm>
	<acronym>SSL</acronym>
<glossdef>
	<para><!-- Secure Socket Layer (SSL) is a security protocol that provides authentication (Digital Certificate), confidentiality (encryption), and data integrity (Message Digest - MD5, SHA etc).
-->
Secure Socket Layer (SSL)は、認証(デジタル証明書)、機密性(暗号化)、
そしてデータ完全性(メッセージダイジェスト - MD5、SHA など)
を提供するセキュリティプロトコルです。
</para>
</glossdef>
</glossentry>
<glossentry id="symmetric_crypt"><glossterm><!-- Symmetric Cryptography -->対称暗号方式</glossterm>
<glossdef>
	<para><!-- In this cryptography the message the encrypted and decrypted by the same key. (((n^2-n))/2) keys are required for n users who want to participate in this system of cryptography. 
-->
この暗号方式では、メッセージは同一の鍵により暗号化、
復号化されます。n 人のユーザがこの暗号方式を採用するシステム
に参加したい場合、(((n^2-n))/2) 個の鍵が必要になります。
</para>
</glossdef>
</glossentry>

</glossdiv>


</glossary>

</article>

