diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/guide.tex | 58 | ||||
-rw-r--r-- | doc/introduction.tex | 2 |
2 files changed, 46 insertions, 14 deletions
diff --git a/doc/guide.tex b/doc/guide.tex index b2034f2b4..5e0ec7694 100644 --- a/doc/guide.tex +++ b/doc/guide.tex @@ -343,7 +343,7 @@ Alternatively, the latest development source code can be retrieved from the Git \begin{verbatim} git clone git://github.com/processone/ejabberd.git ejabberd cd ejabberd -git checkout -b 2.1.x origin/2.1.x +./autogen.sh \end{verbatim} @@ -3930,9 +3930,9 @@ modules: \makesubsection{modprivacy}{\modprivacy{}} \ind{modules!\modprivacy{}}\ind{Blocking Communication}\ind{Privacy Rules}\ind{protocols!RFC 3921: XMPP IM} -This module implements Blocking Communication (also known as Privacy Rules) -as defined in section 10 from XMPP IM. If end users have support for it in -their \XMPP{} client, they will be able to: +This module implements \footahref{http://xmpp.org/rfcs/rfc3921.html\#privacy}{Blocking Communication} +(also known as Privacy Rules). +If end users have support for it in their \XMPP{} client, they will be able to: \begin{quote} \begin{itemize} \item Retrieving one's privacy lists. @@ -4330,10 +4330,10 @@ It is important to include the last / character in the URL, otherwise the subpages URL will be incorrect. \makesubsection{modroster}{\modroster{}} -\ind{modules!\modroster{}}\ind{roster management}\ind{protocols!RFC 3921: XMPP IM} +\ind{modules!\modroster{}}\ind{roster management}\ind{protocols!RFC 6121: XMPP IM} This module implements roster management as defined in -\footahref{http://xmpp.org/rfcs/rfc3921.html\#roster}{RFC 3921: XMPP IM}. +\footahref{http://tools.ietf.org/html/rfc6121\#section-2}{RFC 6121: XMPP IM}. It also supports Roster Versioning (\xepref{0237}). Options: @@ -5403,15 +5403,10 @@ The \term{ejabberdctl commands} are: The \term{ejabberdctl} script can be restricted to require authentication and execute some \term{ejabberd commands}; see \ref{accesscommands}. -Add the option to the file \term{ejabberd.yml}. -In this example there is no restriction: -\begin{verbatim} -ejabberdctl_access_commands: [] -\end{verbatim} If account \term{robot1@example.org} is registered in \ejabberd{} with password \term{abcdef} (which MD5 is E8B501798950FC58AAD83C8C14978E), -and \term{ejabberd.yml} contains this setting: +and your old-format configuration file contains this setting: \begin{verbatim} {hosts, ["example.org"]}. {acl, bots, {user, "robot1", "example.org"}}. @@ -5599,8 +5594,17 @@ The most interesting ones are: \makesubsection{accesscommands}{Restrict Execution with AccessCommands} -The frontends can be configured to restrict access to certain commands. +The frontends can be configured to restrict access to certain commands +using the \term{AccessCommands}. In that case, authentication information must be provided. + +This option allows quite complex settings, so it does not use the YAML format, +instead it uses the Erlang format. +If you want to set that option, +then you must move the frontend definition to another config file +and include it using the \term{include\_config\_file} option +(see section~\ref{includeconfigfile} and the example below). + In each frontend the \term{AccessCommands} option is defined in a different place. But in all cases the option syntax is the same: \begin{verbatim} @@ -5658,6 +5662,34 @@ See another list of restrictions (the corresponding ACL and ACCESS are not shown ] \end{verbatim} +In summary, you put the frontends configurations in a CFG file using Erlang format, for example a file called \term{additional.cfg}: +\begin{verbatim} +{ejabberdctl_access_commands, [ {ctlaccess, [registered_users, register], []} ]}. + +{listen, [ + {4560, ejabberd_xmlrpc, [{maxsessions, 10}, {timeout, 5000}, + {access_commands, [ + {ctlaccess, [registered_users], [{host, "localhost"}]} + ]} + ]} + ]}. + +{modules, [ + {mod_rest, [ + {allowed_ips, [ {127,0,0,1}, {192,168,1,12} ]}, + {allowed_destinations, [ "nolan@localhost", "admin@example.com" ]}, + {allowed_stanza_types, [ "message", "presence", "iq" ]}, + {access_commands, [ + {ctlaccess, [registered_users], [{host, "localhost"}]} + ]} + ]} + ]}. +\end{verbatim} +and then add this line at the end of your main ejabberd configuration file, usually called \term{ejabberd.yml}: +\begin{verbatim} +include_config_file: "/etc/ejabberd/additional.cfg" +\end{verbatim} + \makesection{webadmin}{Web Admin} \ind{web admin} diff --git a/doc/introduction.tex b/doc/introduction.tex index f695b9ce2..b6f4b6c93 100644 --- a/doc/introduction.tex +++ b/doc/introduction.tex @@ -69,7 +69,7 @@ Peter Saint-Andr\'e, Executive Director of the Jabber Software Foundation} \item \marking{Internationalized:} \ejabberd{} leads in internationalization. Hence it is very well suited in a globalized world. Related features are: \begin{itemize} \item Translated to 25 languages. %%\improved{} -\item Support for \footahref{http://www.ietf.org/rfc/rfc3490.txt}{IDNA}. +\item Support for \footahref{http://tools.ietf.org/html/rfc3490}{IDNA}. \end{itemize} \item \marking{Open Standards:} \ejabberd{} is the first Open Source Jabber server claiming to fully comply to the XMPP standard. |