diff options
Diffstat (limited to 'doc/guide.tex')
-rw-r--r-- | doc/guide.tex | 52 |
1 files changed, 50 insertions, 2 deletions
diff --git a/doc/guide.tex b/doc/guide.tex index 8db54c665..ab9d11324 100644 --- a/doc/guide.tex +++ b/doc/guide.tex @@ -305,6 +305,7 @@ To compile \ejabberd{} on a `Unix-like' operating system, you need: \item Erlang pgsql library. Optional. For PostgreSQL authentication or storage. See section \ref{compilepgsql}. \item PAM library. Optional. For Pluggable Authentication Modules (PAM). See section \ref{pam}. \item GNU Iconv 1.8 or higher, for the IRC Transport (mod\_irc). Optional. Not needed on systems with GNU Libc. See section \ref{modirc}. +\item ImageMagick's Convert program. Optional. For CAPTCHA challenges. See section \ref{captcha}. \end{itemize} \makesubsection{download}{Download Source Code} @@ -393,7 +394,7 @@ The files and directories created are, by default: \titem{include/} Erlang header files (*.hrl) \titem{priv/} Additional files required at runtime \begin{description} - \titem{bin/} Binary C programs + \titem{bin/} Executable programs \titem{lib/} Binary system libraries (*.so) \titem{msgs/} Translation files (*.msgs) \end{description} @@ -799,7 +800,7 @@ The available modules, their purpose and the options allowed by each one are: \texttt{shaper}, \texttt{service\_check\_from} \titem{\texttt{ejabberd\_http}} Handles incoming HTTP connections.\\ - Options: \texttt{certfile}, \texttt{http\_bind}, \texttt{http\_poll}, + Options: \texttt{captcha}, \texttt{certfile}, \texttt{http\_bind}, \texttt{http\_poll}, \texttt{request\_handlers}, \texttt{tls}, \texttt{web\_admin}\\ \end{description} @@ -826,6 +827,8 @@ This is a detailed description of each option allowed by the listening modules: Note that you cannot define in a single \term{ejabberd\_service} components of different services: add an \term{ejabberd\_service} for each service, as seen in an example below. + \titem{captcha} \ind{options!http-captcha} + Simple web page that allows a user to fill a CAPTCHA challenge (see section \ref{captcha}). \titem{http\_bind} \ind{options!http\_bind}\ind{protocols!XEP-0206: HTTP Binding}\ind{JWChat}\ind{web-based Jabber client} This option enables HTTP Binding (\xepref{0124} and \xepref{0206}) support. HTTP Bind enables access via HTTP requests to \ejabberd{} from behind firewalls which @@ -1498,6 +1501,51 @@ For example, to set Russian as default language: Appendix \ref{i18ni10n} provides more details about internationalization and localization. +\makesubsection{captcha}{CAPTCHA} +\ind{options!captcha}\ind{captcha} + +Some \ejabberd{} modules can be configured to require a CAPTCHA challenge on certain actions. +If the client does not support CAPTCHA Forms (\xepref{0158}), +a web link is provided so the user can fill the challenge in a web browser. + +An example script is provided that generates the image +using ImageMagick's Convert program. + +The configurable options are: +\begin{description} + \titem{\{captcha\_cmd, Path\}} + Full path to a script that generates the image. + The default value is an empty string: \term{""} + \titem{\{captcha\_host, Host\}} + Host part of the URL sent to the user. + You can include the port number. + The URL sent to the user is formed by: \term{http://Host/captcha/} + The default value is the first hostname configured. +\end{description} + +Additionally, an \term{ejabberd\_http} listener must be enabled with the \term{captcha} option. +See section \ref{listened-module}. + +Example configuration: +\begin{verbatim} +{hosts, ["example.org"]}. + +{captcha_cmd, "/lib/ejabberd/priv/bin/captcha.sh"}. +{captcha_host, "example.org:5280"}. + +{listen, + [ + ... + {5280, ejabberd_http, [ + captcha, + ... + ] + } + +]}. +\end{verbatim} + + \makesubsection{includeconfigfile}{Include Additional Configuration Files} \ind{options!includeconfigfile}\ind{includeconfigfile} |