[ejabberd] migration de Cfg/ vers Python/

darcs-hash:20100913114202-8fbb1-220f41100de68b74eed1734bef20d5194312225b.gz
This commit is contained in:
Olivier Huber 2010-09-13 13:42:02 +02:00
parent 97189a0a4b
commit 4200ba7cd2
13 changed files with 940 additions and 910 deletions

View file

@ -1,113 +0,0 @@
#
# In this file you can configure options that are passed
# to the erlang runtime system when starting ejabberd
#
# POLL: Kernel polling ([true|false])
#
# The kernel polling option requires support in the kernel.
# Additionaly, you need to enable this feature while compiling Erlang.
#
# Default: false
#
#POLL=false
# SMP: SMP support ([enable|auto|disable])
#
# Explanation in Erlang/OTP documentation:
# enable: starts the Erlang runtime system with SMP support enabled.
# This may fail if no runtime system with SMP support is available.
# auto: starts the Erlang runtime system with SMP support enabled if it
# is available and more than one logical processor are detected.
# disable: starts a runtime system without SMP support.
#
# Default: disable
#
#SMP=disable
# ERL_MAX_PORTS: Maximum number of simultaneously open Erlang ports
#
# ejabberd consumes two or three ports for every connection, either
# from a client or from another Jabber server. So take this into
# account when setting this limit.
#
# Default: 32000
# Maximum: 268435456
#
#ERL_MAX_PORTS=32000
# PROCESSES: Maximum number of Erlang processes
#
# Erlang consumes a lot of lightweight processes. If there is a lot of activity
# on ejabberd so that the maximum number of proccesses is reached, people will
# experiment greater latency times. As these processes are implemented in
# Erlang, and therefore not related to the operating system processes, you do
# not have to worry about allowing a huge number of them.
#
# Default: 250000
# Maximum: 268435456
#
#PROCESSES=250000
# ERL_MAX_ETS_TABLES: Maximum number of ETS and Mnesia tables
#
# The number of concurrent ETS and Mnesia tables is limited. When the limit is
# reached, errors will appear in the logs:
# ** Too many db tables **
# You can safely increase this limit when starting ejabberd. It impacts memory
# consumption but the difference will be quite small.
#
# Default: 1400
#
#ERL_MAX_ETS_TABLES=1400
# ERL_OPTIONS: Additional Erlang options
#
# The next variable allows to specify additional options passed to erlang while
# starting ejabberd. Some useful options are -noshell, -detached, -heart. When
# ejabberd is started from an init.d script options -noshell and -detached are
# added implicitly. See erl(1) for more info.
#
# Default: empty
#
#ERL_OPTIONS=""
# ERL_FULLSWEEP_AFTER: The maximum number of generational collections before
# forcing a fullsweep
#
# The Erlang runtime system uses a generational garbage collection scheme,
# using an "old heap" for data that has survived at least one garbage
# collection. When there is no more room on the old heap, a fullsweep garbage
# collection will be done.
#
# The fullsweep_after option makes it possible to specify the maximum number
# of generational collections before forcing a fullsweep even if there is
# still room on the old heap. Setting the number to zero effectively disables
# the general collection algorithm, meaning that all live data is copied at
# every garbage collection.
#
# To reduce memory usage, you can set environment variable ERL_FULLSWEEP_AFTER
# to zero. But in this case ejabberd may work slower.
#
# Default: 65535
#
#ERL_FULLSWEEP_AFTER=65535
# ERLANG_NODE: Erlang node for ejabberd server
#
# The next variable allows to explicitly specify erlang node for ejabberd
# It can be given in different formats:
# ERLANG_NODE=ejabberd
# Lets erlang add hostname to the node (ejabberd uses short name in this case)
# ERLANG_NODE=ejabberd@hostname
# Erlang uses node name as is (so make sure that hostname is a real
# machine hostname or you'll not be able to control ejabberd)
# ERLANG_NODE=ejabberd@hostname.domainname
# The same as previous, but erlang will use long hostname
# (see erl (1) manual for details)
#
# Default: ejabberd
#
#ERLANG_NODE=ejabberd

View file

@ -1,3 +0,0 @@
<FileInfo>
<Info owner='root' group='adm' perms='0644'/>
</FileInfo>

View file

@ -1,519 +0,0 @@
%%%
%%% Debian ejabberd configuration file
%%% This config must be in UTF-8 encoding
%%%
%%% The parameters used in this configuration file are explained in more detail
%%% in the ejabberd Installation and Operation Guide.
%%% Please consult the Guide in case of doubts, it is available at
%%% /usr/share/doc/ejabberd/guide.html
%%% ===================================
%%% OVERRIDE OPTIONS STORED IN DATABASE
%%
%% Override global options (shared by all ejabberd nodes in a cluster).
%%
%%override_global.
%%
%% Override local options (specific for this particular ejabberd node).
%%
%%override_local.
%%
%% Remove the Access Control Lists before new ones are added.
%%
%%override_acls.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%% Options which are set by Debconf and managed by ucf
%% Admin user
{acl, admin, {user, "regala", "crans.org"}}.
{acl, admin, {user, "regala", "jabber.crans.org"}}.
%% Hostname
{hosts, ["xmpp.crans.org", "jabber.crans.org", "crans.org"]}.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%% This configuration file contains Erlang terms.
%%% In case you want to understand the syntax, here are the concepts:
%%%
%%% - The character to comment a line is %
%%%
%%% - Each term ends in a dot, for example:
%%% override_global.
%%%
%%% - A tuple has a fixed definition, its elements are
%%% enclosed in {}, and separated with commas:
%%% {loglevel, 4}.
%%%
%%% - A list can have as many elements as you want,
%%% and is enclosed in [], for example:
%%% [http_poll, web_admin, tls]
%%%
%%% - A keyword of ejabberd is a word in lowercase.
%%% The strings are enclosed in "" and can have spaces, dots...
%%% {language, "en"}.
%%% {ldap_rootdn, "dc=example,dc=com"}.
%%%
%%% - This term includes a tuple, a keyword, a list and two strings:
%%% {hosts, ["jabber.example.net", "im.example.com"]}.
%%%
%%% =========
%%% DEBUGGING
%%
%% loglevel: Verbosity of log files generated by ejabberd.
%% 0: No ejabberd log at all (not recommended)
%% 1: Critical
%% 2: Error
%% 3: Warning
%% 4: Info
%% 5: Debug
%%
{loglevel, 4}.
%%
%% watchdog_admins: If an ejabberd process consumes too much memory,
%% send live notifications to those Jabber accounts.
%%
%%{watchdog_admins, ["bob@example.com"]}.
%%% ================
%%% SERVED HOSTNAMES
%%
%% hosts: Domains served by ejabberd.
%% You can define one or several, for example:
%% {hosts, ["example.net", "example.com", "example.org"]}.
%%
%% (This option is defined by debconf earlier)
%% {hosts, ["localhost"]}.
%%
%% route_subdomains: Delegate subdomains to other Jabber server.
%% For example, if this ejabberd serves example.org and you want
%% to allow communication with a Jabber server called im.example.org.
%%
%%{route_subdomains, s2s}.
%%% ===============
%%% LISTENING PORTS
%%
%% listen: Which ports will ejabberd listen, which service handles it
%% and what options to start it with.
%%
{listen,
[
{5222, ejabberd_c2s, [
{access, c2s},
{shaper, c2s_shaper},
{max_stanza_size, 65536},
starttls, {certfile, "/etc/ejabberd/ejabberd.pem"}
]},
%%
%% To enable the old SSL connection method (deprecated) in port 5223:
%%
{5223, ejabberd_c2s, [
{access, c2s},
{shaper, c2s_shaper},
{max_stanza_size, 65536},
tls, {certfile, "/etc/ejabberd/ejabberd.pem"}
]},
{5269, ejabberd_s2s_in, [
{shaper, s2s_shaper},
{max_stanza_size, 131072}
]},
%% External MUC jabber-muc (but internal mod_muc is better :))
%%{5554, ejabberd_service, [
%% {ip, {127, 0, 0, 1}},
%% {access, all},
%% {shaper_rule, fast},
%% {host, "muc.localhost", [{password, "secret"}]}
%% ]},
%% Jabber ICQ Transport
{5555, ejabberd_service, [
{ip, {127, 0, 0, 1}},
{access, all},
{shaper_rule, fast},
{hosts, ["icq.crans.org", "sms.crans.org"],
[{password, "B2kOQ9Fd28"}]}
]},
%% AIM Transport
{5556, ejabberd_service, [
{ip, {127, 0, 0, 1}},
{access, all},
{shaper_rule, fast},
{host, "aim.crans.org", [{password, "B2kOQ9Fd28"}]}
]},
%% MSN Transport
{5557, ejabberd_service, [
{ip, {127, 0, 0, 1}},
{access, all},
{shaper_rule, fast},
{host, "msn.crans.org", [{password, "RK8cx4f03"}]}
]},
%% Yahoo! Transport
{5558, ejabberd_service, [
{ip, {127, 0, 0, 1}},
{access, all},
{shaper_rule, fast},
{host, ["yahoo.crans.org", "chat.yahoo.crans.org"],
[{password, "secretoupas"}]}
]},
%% External JUD (internal is more powerful,
%% but doesn't allow to register users from other servers)
%%{5559, ejabberd_service, [
%% {ip, {127, 0, 0, 1}},
%% {access, all},
%% {shaper_rule, fast},
%% {host, "jud.localhost", [{password, "secret"}]}
%% ]},
{5280, ejabberd_http, [
http_poll,
web_admin
]}
]}.
%%
%% s2s_use_starttls: Enable STARTTLS + Dialback for S2S connections.
%% Allowed values are: true or false.
%% You must specify a certificate file.
%%
{s2s_use_starttls, true}.
%%
%% s2s_certfile: Specify a certificate file.
%%
{s2s_certfile, "/etc/ejabberd/ejabberd.pem"}.
%%
%% domain_certfile: Specify a different certificate for each served hostname.
%%
%%{domain_certfile, "example.org", "/path/to/example_org.pem"}.
%%{domain_certfile, "example.com", "/path/to/example_com.pem"}.
%%
%% S2S whitelist or blacklist
%%
%% Default s2s policy for undefined hosts.
%%
%%{s2s_default_policy, allow}.
%%
%% Allow or deny communication with specific servers.
%%
%%{{s2s_host, "goodhost.org"}, allow}.
%%{{s2s_host, "badhost.org"}, deny}.
%%% ==============
%%% AUTHENTICATION
%%
%% auth_method: Method used to authenticate the users.
%% The default method is the internal.
%% If you want to use a different method,
%% comment this line and enable the correct ones.
%%
%%{auth_method, internal}.
%%
%% Authentication using external script
%% Make sure the script is executable by ejabberd.
%%
%%{auth_method, external}.
%%{extauth_program, "/path/to/authentication/script"}.
%%
%% Authentication using ODBC
%% Remember to setup a database in the next section.
%%
%%{auth_method, odbc}.
%%
%% Authentication using PAM
%%
%%{auth_method, pam}.
%%{pam_service, "pamservicename"}.
%%
%% Authentication using LDAP
%%
{auth_method, ldap}.
%%
%% List of LDAP servers:
{ldap_servers, ["ldap.adm.crans.org"]}.
%%
%% Encryption of connection to LDAP servers (LDAPS):
%%{ldap_encrypt, tls}.
%%
%% Port connect to LDAP server:
%%{ldap_port, 636}.
%%
%% LDAP manager:
{ldap_rootdn, "cn=readonly,dc=crans,dc=org"}.
%%
%% Password to LDAP manager:
{ldap_password, "**FUCK A DUCK**"}.
%%
%% Search base of LDAP directory:
{ldap_base, "dc=crans,dc=org"}.
%%
%% LDAP attribute that holds user ID:
{ldap_uids, [{"uid", "%u"}, {"mailAlias","%u"}]}.
%%
%% LDAP filter:
{ldap_filter, "(objectClass=cransAccount)"}.
%%
%% Anonymous login support:
%% auth_method: anonymous
%% anonymous_protocol: sasl_anon | login_anon | both
%% allow_multiple_connections: true | false
%%
%%{host_config, "public.example.org", [{auth_method, anonymous},
%% {allow_multiple_connections, false},
%% {anonymous_protocol, sasl_anon}]}.
%%
%% To use both anonymous and internal authentication:
%%
%%{host_config, "public.example.org", [{auth_method, [internal, anonymous]}]}.
{host_config, "crans.org", [{auth_method, ldap}]}.
{host_config, "jabber.crans.org", [{auth_method, internal}]}.
%%% ==============
%%% DATABASE SETUP
%% ejabberd uses by default the internal Mnesia database,
%% so you can avoid this section.
%% This section provides configuration examples in case
%% you want to use other database backends.
%% Please consult the ejabberd Guide for details about database creation.
%%
%% MySQL server:
%%
%%{odbc_server, {mysql, "server", "database", "username", "password"}}.
%%
%% If you want to specify the port:
%%{odbc_server, {mysql, "server", 1234, "database", "username", "password"}}.
%%
%% PostgreSQL server:
%%
%%{odbc_server, {pgsql, "server", "database", "username", "password"}}.
%%
%% If you want to specify the port:
%%{odbc_server, {pgsql, "server", 1234, "database", "username", "password"}}.
%%
%% If you use PostgreSQL, have a large database, and need a
%% faster but inexact replacement for "select count(*) from users"
%%
%%{pgsql_users_number_estimate, true}.
%%
%% ODBC compatible or MSSQL server:
%%
%%{odbc_server, "DSN=ejabberd;UID=ejabberd;PWD=ejabberd"}.
%%
%% Number of connections to open to the database for each virtual host
%%
%%{odbc_pool_size, 10}.
%%
%% Interval to make a dummy SQL request to keep alive the connections
%% to the database. Specify in seconds: for example 28800 means 8 hours
%%
%%{odbc_keepalive_interval, undefined}.
%%% ===============
%%% TRAFFIC SHAPERS
%%
%% The "normal" shaper limits traffic speed to 1.000 B/s
%%
{shaper, normal, {maxrate, 1000}}.
%%
%% The "fast" shaper limits traffic speed to 50.000 B/s
%%
{shaper, fast, {maxrate, 50000}}.
%%% ====================
%%% ACCESS CONTROL LISTS
%%
%% The 'admin' ACL grants administrative privileges to Jabber accounts.
%% You can put as many accounts as you want.
%%
%%{acl, admin, {user, "aleksey", "localhost"}}.
%%{acl, admin, {user, "ermine", "example.org"}}.
%%
%% Blocked users
%%
%%{acl, blocked, {user, "baduser", "example.org"}}.
%%{acl, blocked, {user, "test"}}.
%%
%% Local users: don't modify this line.
%%
{acl, local, {user_regexp, ""}}.
%%
%% More examples of ACLs
%%
%%{acl, jabberorg, {server, "jabber.org"}}.
%%{acl, aleksey, {user, "aleksey", "jabber.ru"}}.
%%{acl, test, {user_regexp, "^test"}}.
%%{acl, test, {user_glob, "test*"}}.
%%% ============
%%% ACCESS RULES
%% Define the maximum number of time a single user is allowed to connect:
{access, max_user_sessions, [{10, all}]}.
%% This rule allows access only for local users:
{access, local, [{allow, local}]}.
%% Only non-blocked users can use c2s connections:
{access, c2s, [{deny, blocked},
{allow, all}]}.
%% For all users except admins used "normal" shaper
{access, c2s_shaper, [{none, admin},
{normal, all}]}.
%% For all S2S connections used "fast" shaper
{access, s2s_shaper, [{fast, all}]}.
%% Only admins can send announcement messages:
{access, announce, [{allow, admin}]}.
%% Only admins can use configuration interface:
{access, configure, [{allow, admin}]}.
%% Admins of this server are also admins of MUC service:
{access, muc_admin, [{allow, admin}]}.
%% All users are allowed to use MUC service:
{access, muc, [{allow, all}]}.
%% No username can be registered via in-band registration:
%% To enable in-band registration, replace 'deny' with 'allow'
% (note that if you remove mod_register from modules list then users will not
% be able to change their password as well as register).
% This setting is default because it's more safe.
{access, register, [{deny, all}]}.
%% Everybody can create pubsub nodes
{access, pubsub_createnode, [{allow, all}]}.
%%% ================
%%% DEFAULT LANGUAGE
%%
%% language: Default language used for server messages.
%%
{language, "en"}.
%%% =======
%%% MODULES
%%
%% Modules enabled in all ejabberd virtual hosts.
%%
{modules,
[
{mod_adhoc, []},
{mod_announce, [{access, announce}]}, % requires mod_adhoc
{mod_caps, []},
{mod_configure,[]}, % requires mod_adhoc
{mod_ctlextra, []},
{mod_disco, []},
%%{mod_echo, [{host, "echo.localhost"}]},
{mod_irc, []},
{mod_last, []},
{mod_muc, [
%%{host, "conference.@HOST@"},
{access, muc},
{access_create, muc},
{access_persistent, muc},
{access_admin, muc_admin},
{max_users, 500}
]},
%%{mod_muc_log,[]},
{mod_offline, []},
{mod_privacy, []},
{mod_private, []},
{mod_proxy65, [
{access, local},
{shaper, c2s_shaper}
]},
{mod_pubsub, [ % requires mod_caps
{access_createnode, pubsub_createnode},
{plugins, ["default", "pep"]}
]},
{mod_register, [
%%
%% After successful registration, the user receives
%% a message with this subject and body.
%%
{welcome_message, {"Welcome!",
"Welcome to a Jabber service powered by Debian. "
"For information about Jabber visit "
"http://www.jabber.org"}},
%% Replace it with 'none' if you don't want to send such message:
%%{welcome_message, none},
%%
%% When a user registers, send a notification to
%% these Jabber accounts.
%%
%%{registration_watchers, ["admin1@example.org"]},
{access, register}
]},
{mod_roster, []},
%%{mod_service_log,[]},
%%{mod_shared_roster,[]},
{mod_stats, []},
{mod_time, []},
{mod_vcard, []},
{mod_version, []}
]}.
%%% $Id: ejabberd.cfg.example 1178 2008-02-08 18:28:36Z badlop $
%%% Local Variables:
%%% mode: erlang
%%% End:
%%% vim: set filetype=erlang tabstop=8:

View file

@ -1,3 +0,0 @@
<FileInfo>
<Info owner='ejabberd' group='adm' perms='0640'/>
</FileInfo>

View file

@ -1,3 +0,0 @@
<FileInfo>
<Info owner='pyaimt' group='adm' perms='0640'/>
</FileInfo>

View file

@ -1,185 +0,0 @@
<pyaimt>
<!-- The JabberID of the transport. -->
<jid>aim.crans.org</jid>
<!-- The JabberID of the conference room handler. -->
<!-- GROUPCHAT IS NOT STABLE YET -->
<confjid>chatrooms.aim.crans.org</confjid>
<!-- The component JID of the transport. Unless you're doing clustering, leave this alone -->
<!-- <compjid>aim1</compjid> -->
<!-- The IP address of the main Jabber server -->
<mainServer>127.0.0.1</mainServer>
<!-- The JID of the main Jabber server -->
<mainServerJID>crans.org</mainServerJID>
<!-- The website of the Jabber service -->
<website>http://xmpp.crans.org:5280/</website>
<!-- The TCP port to connect to the Jabber server on -->
<!-- (this is the default for Jabberd2) -->
<port>5556</port>
<!-- The TCP port that the web admin interface will answer on -->
<!-- (uncomment to enable) -->
<!-- <webport>12345</webport> -->
<!-- The authentication token to use when connecting to the Jabber server -->
<secret>B2kOQ9Fd28</secret>
<!-- The default language to use (for error/status messages) -->
<lang>fr</lang>
<!-- The hostname of the AOL login server you wish to connect to -->
<aimServer>login.oscar.aol.com</aimServer>
<!-- The port of the AOL server you wish to connect to -->
<aimPort>5190</aimPort>
<!-- The name of Socks Proxy if connecting thru a proxy -->
<!-- <socksProxyServer>im-proxy2</socksProxyServer> -->
<!-- The Socks Proxy port to use when connecting thru a proxy -->
<!-- <socksProxyPort>1080</socksProxyPort> -->
<!-- Send greeting on login (enter text to be sent to users here) -->
<!-- <sessionGreeting>enter message here</sessionGreeting> -->
<!-- Send message on successful registration -->
<!-- <registerMessage>You have successfully registered with PyAIMt</registerMessage> -->
<!-- Allow users of AIM gateway to chat with ICQ users -->
<!-- (uncomment to enable) -->
<!-- <crossChat/> -->
<!-- Disable registration with the transport -->
<!-- (uncomment to disable) -->
<!-- <disableRegister/> -->
<!-- Enable automatic invitation to reconnect on restart -->
<!-- (uncomment to enable) -->
<!-- <enableAutoInvite/> -->
<!-- Disable xhtml support (messages with fonts and colors) -->
<!-- (uncomment to disable) -->
<!-- <disableXHTML/> -->
<!-- Disable mail notifications -->
<!-- (uncomment to disable) -->
<!-- <disableMailNotifications/> -->
<!-- Disable use of default avatar if none is specified -->
<!-- (uncomment to disable) -->
<!-- <disableDefaultAvatar/> -->
<!-- Disable use of iq-based avatars (JEP-0008) -->
<!-- (uncomment to disable) -->
<!-- <disableIQAvatars/> -->
<!-- Disable use of vcard-based avatars (JEP-0153) -->
<!-- (uncomment to disable) -->
<!-- <disableVCardAvatars/> -->
<!-- Disable use of PEP-based avatars (JEP-0084) -->
<!-- (uncomment to disable) -->
<!-- NOT IMPLEMENTED YET -->
<!-- <disablePEPAvatars/> -->
<!-- You can choose which users you wish to have as administrators. These users can perform some tasks with Ad-Hoc commands that others cannot -->
<admins>
<!--<jid>admin@host.com</jid>-->
</admins>
<!-- You can select which event loop PyAIMt will use. It's probably safe to leave this as the default -->
<!-- Use epoll for high-load Linux servers running kernel 2.6 or above -->
<!--<reactor>epoll</reactor>-->
<!-- Use kqueue for high-load FreeBSD servers -->
<!--<reactor>kqueue</reactor>-->
<!-- Use poll for high-load Unix servers -->
<!--<reactor>poll</reactor>-->
<!-- You can select which spool storage method you wish to use -->
<!-- Available methods are: -->
<!-- xmlfiles: single xml files in the spool directory in hashed dirs (default)-->
<!-- legacyaimtransport: compatible with c-based aim transport, less functionality -->
<!-- mysql: registration information stored in a MySQL database -->
<!--<xdbDriver>xmlfiles</xdbDriver>-->
<!-- For MySQL -->
<!--<xdbDriver>mysql</xdbDriver>-->
<!--<xdbDriver_mysql>-->
<!--<username>pyaimt</username>-->
<!--<password>pyaimt</password>-->
<!--<database>pyaimt</database>-->
<!--<server>localhost</server>-->
<!--<format>encrypted</format>--> <!-- Enable encryption of passwords -->
<!--</xdbDriver_mysql>-->
<!-- For XMLFiles -->
<!--<xdbDriver>xmlfiles</xdbDriver>-->
<!--<xdbDriver_xmlfiles>-->
<!--<format>encrypted</format>--> <!-- Enable encryption of passwords -->
<!--</xdbDriver_xmlfiles>-->
<!-- Only grab avatars when a chat is initiated. -->
<!-- <avatarsOnlyOnChat/> -->
<!-- Disable all avatar functionality. Might be necessary if you -->
<!-- do not have PIL installed. -->
<!-- <disableAvatars/> -->
<!-- Disable automatic send (via im) of away message when away set. -->
<!-- Note that away messages are -in addition to- the away status -->
<!-- message. -->
<!-- <disableAwayMessage/> -->
<!-- Use Jabber.com's XCP component protocol extensions. -->
<!-- <useXCP/> -->
<!-- SASL username used to bind to Jabber server. -->
<!-- secret, above, is used for sasl password -->
<!-- NOTE: This does not work with Twisted > 2.2.0. -->
<!-- <saslUsername>username</saslUsername> -->
<!-- Use external component binding. -->
<!-- This dodges the need to manually configure all jids that talk to this transport. -->
<!-- Jabberd2 requires saslUsername and useRouteWrap for this to work. -->
<!-- Wildfire as of 2.6.0 requires just this. -->
<!-- <useComponentBinding/> -->
<!-- Wrap stanzas in <route> stanza. -->
<!-- Jabberd2 requires this for useComponentBinding. -->
<!-- <useRouteWrap/> -->
<!-- JID of message archive service -->
<!-- <messageArchiveJID>datasink.example.org</messageArchiveJID> -->
<!-- If registration authentication is used, enter the method -->
<!-- Auth configs often require additional options to be specified. -->
<!-- See associated config entries per authRegister example. -->
<!-- NOTE: limited to LDAP for now -->
<!-- THIS IS UNTESTED AS OF YET -->
<!-- <authRegister>LDAP</authRegister> -->
<!-- For LDAP auth, make sure to uncomment <authRegister_LDAP> -->
<!-- and </authRegister_LDAP> and fill out the options in between. -->
<!-- <authRegister_LDAP> -->
<!-- The fqdn or ip address of the LDAP server -->
<!-- <server>ldap.example.org</server> -->
<!-- The Root DN to be used to perform LDAP searches -->
<!-- <rootDN>CN=Administrator,CN=Users,DC=example,DC=org</rootDN> -->
<!-- The password for the Root DN -->
<!-- <password>SECRET</password> -->
<!-- The Base DN to search for users -->
<!-- <baseDN>DC=example,DC=org</baseDN> -->
<!-- The attribute to search for the user ID. -->
<!-- 'samAccountname' in Windows, 'uid' on most other systems -->
<!-- <uidAttr>samAccountname</uidAttr> -->
<!-- </authRegister_LDAP> -->
</pyaimt>

View file

@ -1,3 +0,0 @@
<FileInfo>
<Info owner='pymsnt' group='adm' perms='0640'/>
</FileInfo>

View file

@ -1,81 +0,0 @@
<pymsnt>
<!-- This file contains options to be configured by the server administrator. -->
<!-- Please read through all the options in this file -->
<!-- The JabberID of the transport -->
<jid>msn.crans.org</jid>
<!-- The public IP or DNS name of the machine the transport is running on -->
<!-- This is needed for file transfer!! This is also used as the IP address for outgoing connections -->
<host>msn.crans.org</host>
<!-- The component JID of the transport. Unless you're doing clustering, leave this alone -->
<!-- <compjid>msn1</compjid> -->
<!-- The name of the transport in the service discovery list. -->
<!-- <discoName>MSN Transport</discoName> -->
<!-- The Twisted reactor to choose. Pick poll or epoll on Linux, kqueue on BSD. Or leave as default (best found) -->
<!-- <reactor>poll</reactor> -->
<!-- The IP address of the main Jabber server to connect to -->
<mainServer>127.0.0.1</mainServer>
<!-- The TCP port to connect to the Jabber server on (this is the default for Jabberd2) -->
<port>5557</port>
<!-- The authentication token to use when connecting to the Jabber server -->
<secret>RK8cx4f03</secret>
<!-- Use Jabber.com's XCP component protocol extensions. -->
<!-- <useXCP/> -->
<!-- The default language to use -->
<lang>en</lang>
<!-- The website of the Jabber service -->
<website>http://host.com</website>
<!-- Comment out the following options to disable them, or uncomment them to enable them -->
<!-- Send email notification messages to users -->
<mailNotifications/>
<!-- Send greeting on login -->
<!-- <sessionGreeting>You have just started a session with PyMSNt</sessionGreeting> -->
<!-- Send message on successful registration -->
<!-- <registerMessage>You have successfully registered with PyMSNt</registerMessage> -->
<!-- Allow users to register with this transport -->
<allowRegister/>
<!-- Get all avatars. If this is set to true then avatars are grabbed for all your contacts immediately. If false then avatars are only grabbed when you're in a chat with a contact -->
<getAllAvatars/>
<!-- The amount of time a user has to join a groupchat they are invited to before the transport makes them leave the room. (MSN protocol requires autojoining of groupchats) -->
<!-- <groupchatTimeout>120</groupchatTimeout> -->
<!-- File transfer settings -->
<!-- The maximum size of a file transfer (in bytes). For unlimited, comment out, or set to 0 -->
<ftSizeLimit>524288</ftSizeLimit>
<!-- The maximum rate for file transfer (in bytes). For unlimited, comment out, or set to 0 -->
<ftRateLimit>2048</ftRateLimit>
<!-- Please give the port to listen for Jabber socks5 transfers on. -->
<ftJabberPort>8010</ftJabberPort>
<!-- Please give the port to listen for HTTP GETs here (Used in old-style OOB file transfers. Best to leave this disabled unless you know you need it.) -->
<!--<ftOOBPort>8011</ftOOBPort>-->
<!-- Please give the root URL the transport should send to clients. (You can use an Apache reverse proxy to put this on your ordinary website) -->
<!-- Eg, the transport will listen on port 8011 for HTTP GETs to /RANDOM_FILE.ext. You can set apache to forward any requests to http://yourhost.com:80/msn/files/RANDOM_FILE.ext to http://yourhost.com:8011/RANDOM_FILE.ext. This saves you from opening extra ports. -->
<!--<ftOOBRoot>http://host.com/msn/files/</ftOOBRoot>-->
<!-- You can choose which users you wish to have as administrators. These users can perform some tasks with Ad-Hoc commands that others cannot -->
<!--<admins>
<jid>admin@host.com</jid>
</admins>-->
<!-- Log settings -->
<!-- The logging level
0 -> No logging
1 -> Log tracebacks
2 -> Log tracebacks, warnings and errors
3 -> Log all sorts of informational (mostly useless stuff)
4 -> Log the MSN protocol code sent
-->
<debugLevel>2</debugLevel>
</pymsnt>

View file

@ -146,6 +146,7 @@
<Group name="external"/>
<Group name="pgsql-server"/>
<Group name="sqlgrey-localdb"/>
<Group name="ejabberd-services"/>
</Group>
<Group name="fx"

120
Python/etc/default/ejabberd Normal file
View file

@ -0,0 +1,120 @@
# -*- coding: utf-8; mode: python -*-
header("Configuration de la node ejabberd")
if has("external"):
@ERLANG_NODE=ejabberd@ovh
else:
@ERLANG_NODE=ejabberd@xmpp
@# GRUIK GRUIK GRUIK -- Michel !
@EJABBERD="/usr/sbin/ejabberd --sasl-log /dev/null"
@
@# POLL: Kernel polling ([true|false])
@#
@# The kernel polling option requires support in the kernel.
@# Additionaly, you need to enable this feature while compiling Erlang.
@#
@# Default: false
@#
@#POLL=false
@
@# SMP: SMP support ([enable|auto|disable])
@#
@# Explanation in Erlang/OTP documentation:
@# enable: starts the Erlang runtime system with SMP support enabled.
@# This may fail if no runtime system with SMP support is available.
@# auto: starts the Erlang runtime system with SMP support enabled if it
@# is available and more than one logical processor are detected.
@# disable: starts a runtime system without SMP support.
@#
@# Default: disable
@#
@#SMP=disable
@
@# ERL_MAX_PORTS: Maximum number of simultaneously open Erlang ports
@#
@# ejabberd consumes two or three ports for every connection, either
@# from a client or from another Jabber server. So take this into
@# account when setting this limit.
@#
@# Default: 32000
@# Maximum: 268435456
@#
@#ERL_MAX_PORTS=32000
@
@# PROCESSES: Maximum number of Erlang processes
@#
@# Erlang consumes a lot of lightweight processes. If there is a lot of activity
@# on ejabberd so that the maximum number of proccesses is reached, people will
@# experiment greater latency times. As these processes are implemented in
@# Erlang, and therefore not related to the operating system processes, you do
@# not have to worry about allowing a huge number of them.
@#
@# Default: 250000
@# Maximum: 268435456
@#
@#PROCESSES=250000
@
@# ERL_MAX_ETS_TABLES: Maximum number of ETS and Mnesia tables
@#
@# The number of concurrent ETS and Mnesia tables is limited. When the limit is
@# reached, errors will appear in the logs:
@# ** Too many db tables **
@# You can safely increase this limit when starting ejabberd. It impacts memory
@# consumption but the difference will be quite small.
@#
@# Default: 1400
@#
@#ERL_MAX_ETS_TABLES=1400
@
@# ERL_OPTIONS: Additional Erlang options
@#
@# The next variable allows to specify additional options passed to erlang while
@# starting ejabberd. Some useful options are -noshell, -detached, -heart. When
@# ejabberd is started from an init.d script options -noshell and -detached are
@# added implicitly. See erl(1) for more info.
@#
@# Default: empty
@#
@#ERL_OPTIONS=""
@
@
@# ERL_FULLSWEEP_AFTER: The maximum number of generational collections before
@# forcing a fullsweep
@#
@# The Erlang runtime system uses a generational garbage collection scheme,
@# using an "old heap" for data that has survived at least one garbage
@# collection. When there is no more room on the old heap, a fullsweep garbage
@# collection will be done.
@#
@# The fullsweep_after option makes it possible to specify the maximum number
@# of generational collections before forcing a fullsweep even if there is
@# still room on the old heap. Setting the number to zero effectively disables
@# the general collection algorithm, meaning that all live data is copied at
@# every garbage collection.
@#
@# To reduce memory usage, you can set environment variable ERL_FULLSWEEP_AFTER
@# to zero. But in this case ejabberd may work slower.
@#
@# Default: 65535
@#
@#ERL_FULLSWEEP_AFTER=65535
@
@# ERLANG_NODE: Erlang node for ejabberd server
@#
@# The next variable allows to explicitly specify erlang node for ejabberd
@# It can be given in different formats:
@# ERLANG_NODE=ejabberd
@# Lets erlang add hostname to the node (ejabberd uses short name in this case)
@# ERLANG_NODE=ejabberd@hostname
@# Erlang uses node name as is (so make sure that hostname is a real
@# machine hostname or you'll not be able to control ejabberd)
@# ERLANG_NODE=ejabberd@hostname.domainname
@# The same as previous, but erlang will use long hostname
@# (see erl (1) manual for details)
@#
@# Default: ejabberd
@#
@#ERLANG_NODE=ejabberd
@

View file

@ -0,0 +1,550 @@
# -*- coding: utf-8; mode: python -*-
@%%%
@%%% Debian ejabberd configuration file
@%%% This config must be in UTF-8 encoding
@%%%
@%%% The parameters used in this configuration file are explained in more detail
@%%% in the ejabberd Installation and Operation Guide.
@%%% Please consult the Guide in case of doubts, it is available at
@%%% /usr/share/doc/ejabberd/guide.html
@
@%%% ===================================
@%%% OVERRIDE OPTIONS STORED IN DATABASE
@
@%%
@%% Override global options (shared by all ejabberd nodes in a cluster).
@%%
@%%override_global.
@
@%%
@%% Override local options (specific for this particular ejabberd node).
@%%
@%%override_local.
@
@%%
@%% Remove the Access Control Lists before new ones are added.
@%%
@%%override_acls.
@
@
@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@%% Options which are set by Debconf and managed by ucf
@
@%% Admin user
@{acl, admin, {user, "regala", "crans.org"}}.
@{acl, admin, {user, "regala", "jabber.crans.org"}}.
@{acl, admin, {user, "huber", "crans.org"}}.
@{acl, admin, {user, "huber", "jabber.crans.org"}}.
@
@
@
@
@%% Hostname
@{hosts, ["xmpp.crans.org", "jabber.crans.org", "crans.org"]}.
@
@%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@
@%%% This configuration file contains Erlang terms.
@%%% In case you want to understand the syntax, here are the concepts:
@%%%
@%%% - The character to comment a line is %
@%%%
@%%% - Each term ends in a dot, for example:
@%%% override_global.
@%%%
@%%% - A tuple has a fixed definition, its elements are
@%%% enclosed in {}, and separated with commas:
@%%% {loglevel, 4}.
@%%%
@%%% - A list can have as many elements as you want,
@%%% and is enclosed in [], for example:
@%%% [http_poll, web_admin, tls]
@%%%
@%%% - A keyword of ejabberd is a word in lowercase.
@%%% The strings are enclosed in "" and can have spaces, dots...
@%%% {language, "en"}.
@%%% {ldap_rootdn, "dc=example,dc=com"}.
@%%%
@%%% - This term includes a tuple, a keyword, a list and two strings:
@%%% {hosts, ["jabber.example.net", "im.example.com"]}.
@%%%
@
@
@%%% =========
@%%% DEBUGGING
@
@%%
@%% loglevel: Verbosity of log files generated by ejabberd.
@%% 0: No ejabberd log at all (not recommended)
@%% 1: Critical
@%% 2: Error
@%% 3: Warning
@%% 4: Info
@%% 5: Debug
@%%
@{loglevel, 3}.
@
@%%
@%% watchdog_admins: If an ejabberd process consumes too much memory,
@%% send live notifications to those Jabber accounts.
@%%
@{watchdog_admins, ["huber@jabber.crans.org"]}.
@
@
@%%% ================
@%%% SERVED HOSTNAMES
@
@%%
@%% hosts: Domains served by ejabberd.
@%% You can define one or several, for example:
@%% {hosts, ["example.net", "example.com", "example.org"]}.
@%%
@%% (This option is defined by debconf earlier)
@%% {hosts, ["localhost"]}.
@
@%%
@%% route_subdomains: Delegate subdomains to other Jabber server.
@%% For example, if this ejabberd serves example.org and you want
@%% to allow communication with a Jabber server called im.example.org.
@%%
@%%{route_subdomains, s2s}.
@
@
@%%% ===============
@%%% LISTENING PORTS
@
@%%
@%% listen: Which ports will ejabberd listen, which service handles it
@%% and what options to start it with.
@%%
@{listen,
@ [
@ {5222, ejabberd_c2s, [
@ inet6,
@ {access, c2s},
@ {shaper, c2s_shaper},
@ {max_stanza_size, 65536},
@ starttls, {certfile, "/etc/ejabberd/ssl/jabber.pem"}
@ ]},
@
@ %%
@ %% To enable the old SSL connection method (deprecated) in port 5223:
@ %%
@ {5223, ejabberd_c2s, [
@ inet6,
@ {access, c2s},
@ {shaper, c2s_shaper},
@ {max_stanza_size, 65536},
@ tls, {certfile, "/etc/ejabberd/ssl/jabber.pem"}
@ ]},
@
@ {5269, ejabberd_s2s_in, [
@ {shaper, s2s_shaper},
@ {max_stanza_size, 131072}
@ ]},
@
@ %% External MUC jabber-muc (but internal mod_muc is better :))
@ %%{5554, ejabberd_service, [
@ %% {ip, {127, 0, 0, 1}},
@ %% {access, all},
@ %% {shaper_rule, fast},
@ %% {host, "muc.localhost", [{password, "secret"}]}
@ %% ]},
@
@ %% Jabber ICQ Transport
@ {5555, ejabberd_service, [
if has("external"):
@ {ip, {127, 0, 0, 1}},
else:
@ {ip, {10, 231, 136, 8}}, % ip adm d'ovh
@ {access, all},
@ {shaper_rule, fast},
@ {hosts, ["icq.crans.org", "sms.crans.org"],
@ [{password, "B2kOQ9Fd28"}]}
@ ]},
@
@ %% AIM Transport
@% {5556, ejabberd_service, [
@% {ip, {127, 0, 0, 1}},
@% {access, all},
@% {shaper_rule, fast},
@% {host, "aim.crans.org", [{password, "B2kOQ9Fd28"}]}
@% ]},
@
@ %% MSN Transport
@ {5557, ejabberd_service, [
if has("external"):
@ {ip, {127, 0, 0, 1}},
else:
@ {ip, {10, 231, 136, 8}}, % ip adm d'ovh
@ {access, all},
@ {shaper_rule, fast},
@ {host, "msn.crans.org", [{password, "RK8cx4f03"}]}
@ ]},
@
@ %% Yahoo! Transport
@ {5558, ejabberd_service, [
@ {ip, {127, 0, 0, 1}},
@ {access, all},
@ {shaper_rule, fast},
@ {host, ["yahoo.crans.org", "chat.yahoo.crans.org"],
@ [{password, "secretoupas"}]}
@ ]},
@
@ %% External JUD (internal is more powerful,
@ %% but doesn't allow to register users from other servers)
@ %%{5559, ejabberd_service, [
@ %% {ip, {127, 0, 0, 1}},
@ %% {access, all},
@ %% {shaper_rule, fast},
@ %% {host, "jud.localhost", [{password, "secret"}]}
@ %% ]},
@%% Pour le http_poll pas de tls
@ {5280, ejabberd_http, [
@ http_poll]},
@
@%% un peu plus sécurisé
@ {5282, ejabberd_http, [
@ web_admin,
@ tls, {certfile, "/etc/ejabberd/ssl/jabber.pem"}
@ ]}
@
@ ]}.
@
@%%
@%% s2s_use_starttls: Enable STARTTLS + Dialback for S2S connections.
@%% Allowed values are: true or false.
@%% You must specify a certificate file.
@%%
@{s2s_use_starttls, true}.
@
@%%
@%% s2s_certfile: Specify a certificate file.
@%%
@{s2s_certfile, "/etc/ejabberd/ssl/jabber.pem"}.
@
@%%
@%% domain_certfile: Specify a different certificate for each served hostname.
@%%
@%%{domain_certfile, "example.org", "/path/to/example_org.pem"}.
@%%{domain_certfile, "example.com", "/path/to/example_com.pem"}.
@
@%%
@%% S2S whitelist or blacklist
@%%
@%% Default s2s policy for undefined hosts.
@%%
@%%{s2s_default_policy, allow}.
@
@%%
@%% Allow or deny communication with specific servers.
@%%
@%%{{s2s_host, "goodhost.org"}, allow}.
@%%{{s2s_host, "badhost.org"}, deny}.
@
@
@%%% ==============
@%%% AUTHENTICATION
@
@%%
@%% auth_method: Method used to authenticate the users.
@%% The default method is the internal.
@%% If you want to use a different method,
@%% comment this line and enable the correct ones.
@%%
@%%{auth_method, internal}.
@
@%%
@%% Authentication using external script
@%% Make sure the script is executable by ejabberd.
@%%
@%%{auth_method, external}.
@%%{extauth_program, "/path/to/authentication/script"}.
@
@%%
@%% Authentication using ODBC
@%% Remember to setup a database in the next section.
@%%
@%%{auth_method, odbc}.
@
@%%
@%% Authentication using PAM
@%%
@%%{auth_method, pam}.
@%%{pam_service, "pamservicename"}.
@
@%%
@%% Authentication using LDAP
@%%
@{auth_method, ldap}.
@%%
@%% List of LDAP servers:
if has("external"):
@{ldap_servers, ["localhost"]}.
else:
@{ldap_servers, ["ldap.adm.crans.org"]}.
@%%
@%% Encryption of connection to LDAP servers (LDAPS):
@%%{ldap_encrypt, tls}.
@%%
@%% Port connect to LDAP server:
@%%{ldap_port, 636}.
@%%
@%% LDAP manager:
@{ldap_rootdn, "cn=readonly,dc=crans,dc=org"}.
@%%
@%% Password to LDAP manager:
@{ldap_password, "**FUCK A DUCK**"}.
@%%
@%% Search base of LDAP directory:
@{ldap_base, "dc=crans,dc=org"}.
@%%
@%% LDAP attribute that holds user ID:
@{ldap_uids, [{"uid", "%u"}, {"mailAlias","%u"}]}.
@%%
@%% LDAP filter:
@{ldap_filter, "(objectClass=cransAccount)"}.
@
@%%
@%% Anonymous login support:
@%% auth_method: anonymous
@%% anonymous_protocol: sasl_anon | login_anon | both
@%% allow_multiple_connections: true | false
@%%
@%%{host_config, "public.example.org", [{auth_method, anonymous},
@%% {allow_multiple_connections, false},
@%% {anonymous_protocol, sasl_anon}]}.
@%%
@%% To use both anonymous and internal authentication:
@%%
@%%{host_config, "public.example.org", [{auth_method, [internal, anonymous]}]}.
@{host_config, "crans.org", [{auth_method, ldap}]}.
@{host_config, "jabber.crans.org", [{auth_method, internal}]}.
@
@
@%%% ==============
@%%% DATABASE SETUP
@
@%% ejabberd uses by default the internal Mnesia database,
@%% so you can avoid this section.
@%% This section provides configuration examples in case
@%% you want to use other database backends.
@%% Please consult the ejabberd Guide for details about database creation.
@
@%%
@%% MySQL server:
@%%
@%%{odbc_server, {mysql, "server", "database", "username", "password"}}.
@%%
@%% If you want to specify the port:
@%%{odbc_server, {mysql, "server", 1234, "database", "username", "password"}}.
@
@%%
@%% PostgreSQL server:
@%%
@%%{odbc_server, {pgsql, "server", "database", "username", "password"}}.
@%%
@%% If you want to specify the port:
@%%{odbc_server, {pgsql, "server", 1234, "database", "username", "password"}}.
@%%
@%% If you use PostgreSQL, have a large database, and need a
@%% faster but inexact replacement for "select count(*) from users"
@%%
@%%{pgsql_users_number_estimate, true}.
@
@%%
@%% ODBC compatible or MSSQL server:
@%%
@%%{odbc_server, "DSN=ejabberd;UID=ejabberd;PWD=ejabberd"}.
@
@%%
@%% Number of connections to open to the database for each virtual host
@%%
@%%{odbc_pool_size, 10}.
@
@%%
@%% Interval to make a dummy SQL request to keep alive the connections
@%% to the database. Specify in seconds: for example 28800 means 8 hours
@%%
@%%{odbc_keepalive_interval, undefined}.
@
@
@%%% ===============
@%%% TRAFFIC SHAPERS
@
@%%
@%% The "normal" shaper limits traffic speed to 1.000 B/s
@%%
@{shaper, normal, {maxrate, 1000}}.
@
@%%
@%% The "fast" shaper limits traffic speed to 50.000 B/s
@%%
@{shaper, fast, {maxrate, 50000}}.
@
@
@%%% ====================
@%%% ACCESS CONTROL LISTS
@
@%%
@%% The 'admin' ACL grants administrative privileges to Jabber accounts.
@%% You can put as many accounts as you want.
@%%
@%%{acl, admin, {user, "aleksey", "localhost"}}.
@%%{acl, admin, {user, "ermine", "example.org"}}.
@
@%%
@%% Blocked users
@%%
@%%{acl, blocked, {user, "baduser", "example.org"}}.
@%%{acl, blocked, {user, "test"}}.
@
@%%
@%% Local users: don't modify this line.
@%%
@{acl, local, {user_regexp, ""}}.
@
@%%
@%% More examples of ACLs
@%%
@%%{acl, jabberorg, {server, "jabber.org"}}.
@%%{acl, aleksey, {user, "aleksey", "jabber.ru"}}.
@%%{acl, test, {user_regexp, "^test"}}.
@%%{acl, test, {user_glob, "test*"}}.
@
@
@%%% ============
@%%% ACCESS RULES
@
@%% Define the maximum number of time a single user is allowed to connect:
@{access, max_user_sessions, [{10, all}]}.
@
@%% This rule allows access only for local users:
@{access, local, [{allow, local}]}.
@
@%% Only non-blocked users can use c2s connections:
@{access, c2s, [{deny, blocked},
@ {allow, all}]}.
@
@%% For all users except admins used "normal" shaper
@{access, c2s_shaper, [{none, admin},
@ {normal, all}]}.
@
@%% For all S2S connections used "fast" shaper
@{access, s2s_shaper, [{fast, all}]}.
@
@%% Only admins can send announcement messages:
@{access, announce, [{allow, admin}]}.
@
@%% Only admins can use configuration interface:
@{access, configure, [{allow, admin}]}.
@
@%% Admins of this server are also admins of MUC service:
@{access, muc_admin, [{allow, admin}]}.
@
@%% All users are allowed to use MUC service:
@{access, muc, [{allow, all}]}.
@
@%% No username can be registered via in-band registration:
@%% To enable in-band registration, replace 'deny' with 'allow'
@% (note that if you remove mod_register from modules list then users will not
@% be able to change their password as well as register).
@% This setting is default because it's more safe.
@{access, register, [{deny, all}]}.
@
@%% Everybody can create pubsub nodes
@{access, pubsub_createnode, [{allow, all}]}.
@
@
@%%% ================
@%%% DEFAULT LANGUAGE
@
@%%
@%% language: Default language used for server messages.
@%%
@{language, "en"}.
@
@
@%%% =======
@%%% MODULES
@
@%%
@%% Modules enabled in all ejabberd virtual hosts.
@%%
@{modules,
@ [
@ {mod_adhoc, []},
@ {mod_announce, [{access, announce}]}, % requires mod_adhoc
@ {mod_caps, []},
@ {mod_configure,[]}, % requires mod_adhoc
@%% Attention, n'existe plus avec ejabberd >= 2.1.x
@%% Ceci est remplacé par mod_admin_extra
@ {mod_ctlextra, []},
@ {mod_disco, [
@ {extra_domains, ["icq.crans.org",
@ "msn.crans.org"
@ ]}]},
@ %%{mod_echo, [{host, "echo.localhost"}]},
if not has("external"):
@ % À mettre seulement sur un serveur
@ {mod_irc, []},
@ {mod_last, []},
@ {mod_muc, [
@ %%{host, "conference.@HOST@"},
@ {access, muc},
@ {access_create, muc},
@ {access_persistent, muc},
@ {access_admin, muc_admin},
@ {max_users, 500}
@ ]},
@ %%{mod_muc_log,[]},
@ {mod_offline, []},
@ {mod_privacy, []},
@ {mod_private, []},
if not has("external"):
@ % À mettre seulement sur un serveur
@ {mod_proxy65, [
@ {access, local},
@ {shaper, c2s_shaper}
@ ]},
@ {mod_pubsub, [ % requires mod_caps
@ {access_createnode, pubsub_createnode},
@ {plugins, ["default", "pep"]}
@ ]},
@ {mod_register, [
@ %%
@ %% After successful registration, the user receives
@ %% a message with this subject and body.
@ %%
@ {welcome_message, {"Welcome!",
@ "Welcome to a Jabber service powered by Debian. "
@ "For information about Jabber visit "
@ "http://www.jabber.org"}},
@ %% Replace it with 'none' if you don't want to send such message:
@ %%{welcome_message, none},
@
@ %%
@ %% When a user registers, send a notification to
@ %% these Jabber accounts.
@ %%
@ %%{registration_watchers, ["admin1@example.org"]},
@
@ {access, register}
@ ]},
@ {mod_roster, []},
@ %%{mod_service_log,[]},
@ %%{mod_shared_roster,[]},
@ {mod_stats, []},
@ {mod_time, []},
@ {mod_vcard, []},
@ {mod_version, []}
@ ]}.
@
@
@%%% $Id: ejabberd.cfg.example 1178 2008-02-08 18:28:36Z badlop $
@
@%%% Local Variables:
@%%% mode: erlang
@%%% End:
@%%% vim: set filetype=erlang tabstop=8:

186
Python/etc/pyaimt.conf.xml Normal file
View file

@ -0,0 +1,186 @@
# -*- coding: utf-8; mode: python -*-
@<pyaimt>
@ <!-- The JabberID of the transport. -->
@<jid>aim.crans.org</jid>
@ <!-- The JabberID of the conference room handler. -->
@ <!-- GROUPCHAT IS NOT STABLE YET -->
@ <confjid>chatrooms.aim.crans.org</confjid>
@
@ <!-- The component JID of the transport. Unless you're doing clustering, leave this alone -->
@ <!-- <compjid>aim1</compjid> -->
@
@ <!-- The IP address of the main Jabber server -->
@ <mainServer>127.0.0.1</mainServer>
@
@ <!-- The JID of the main Jabber server -->
@ <mainServerJID>crans.org</mainServerJID>
@
@ <!-- The website of the Jabber service -->
@ <website>http://jabber.crans.org</website>
@
@ <!-- The TCP port to connect to the Jabber server on -->
@ <!-- (this is the default for Jabberd2) -->
@ <port>5556</port>
@
@ <!-- The TCP port that the web admin interface will answer on -->
@ <!-- (uncomment to enable) -->
@ <!-- <webport>12345</webport> -->
@
@ <!-- The authentication token to use when connecting to the Jabber server -->
@ <secret>B2kOQ9Fd28</secret>
@
@ <!-- The default language to use (for error/status messages) -->
@ <lang>fr</lang>
@
@ <!-- The hostname of the AOL login server you wish to connect to -->
@ <aimServer>login.oscar.aol.com</aimServer>
@
@ <!-- The port of the AOL server you wish to connect to -->
@ <aimPort>5190</aimPort>
@
@ <!-- The name of Socks Proxy if connecting thru a proxy -->
@ <!-- <socksProxyServer>im-proxy2</socksProxyServer> -->
@
@ <!-- The Socks Proxy port to use when connecting thru a proxy -->
@ <!-- <socksProxyPort>1080</socksProxyPort> -->
@
@ <!-- Send greeting on login (enter text to be sent to users here) -->
@ <!-- <sessionGreeting>enter message here</sessionGreeting> -->
@
@ <!-- Send message on successful registration -->
@ <!-- <registerMessage>You have successfully registered with PyAIMt</registerMessage> -->
@
@ <!-- Allow users of AIM gateway to chat with ICQ users -->
@ <!-- (uncomment to enable) -->
@ <!-- <crossChat/> -->
@
@ <!-- Disable registration with the transport -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableRegister/> -->
@
@ <!-- Enable automatic invitation to reconnect on restart -->
@ <!-- (uncomment to enable) -->
@ <!-- <enableAutoInvite/> -->
@
@ <!-- Disable xhtml support (messages with fonts and colors) -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableXHTML/> -->
@
@ <!-- Disable mail notifications -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableMailNotifications/> -->
@
@ <!-- Disable use of default avatar if none is specified -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableDefaultAvatar/> -->
@
@ <!-- Disable use of iq-based avatars (JEP-0008) -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableIQAvatars/> -->
@
@ <!-- Disable use of vcard-based avatars (JEP-0153) -->
@ <!-- (uncomment to disable) -->
@ <!-- <disableVCardAvatars/> -->
@
@ <!-- Disable use of PEP-based avatars (JEP-0084) -->
@ <!-- (uncomment to disable) -->
@ <!-- NOT IMPLEMENTED YET -->
@ <!-- <disablePEPAvatars/> -->
@
@ <!-- You can choose which users you wish to have as administrators. These users can perform some tasks with Ad-Hoc commands that others cannot -->
@ <admins>
@ <!--<jid>admin@host.com</jid>-->
@ </admins>
@
@
@ <!-- You can select which event loop PyAIMt will use. It's probably safe to leave this as the default -->
@
@ <!-- Use epoll for high-load Linux servers running kernel 2.6 or above -->
@ <!--<reactor>epoll</reactor>-->
@
@ <!-- Use kqueue for high-load FreeBSD servers -->
@ <!--<reactor>kqueue</reactor>-->
@
@ <!-- Use poll for high-load Unix servers -->
@ <!--<reactor>poll</reactor>-->
@
@ <!-- You can select which spool storage method you wish to use -->
@ <!-- Available methods are: -->
@ <!-- xmlfiles: single xml files in the spool directory in hashed dirs (default)-->
@ <!-- legacyaimtransport: compatible with c-based aim transport, less functionality -->
@ <!-- mysql: registration information stored in a MySQL database -->
@ <!--<xdbDriver>xmlfiles</xdbDriver>-->
@
@ <!-- For MySQL -->
@ <!--<xdbDriver>mysql</xdbDriver>-->
@ <!--<xdbDriver_mysql>-->
@ <!--<username>pyaimt</username>-->
@ <!--<password>pyaimt</password>-->
@ <!--<database>pyaimt</database>-->
@ <!--<server>localhost</server>-->
@ <!--<format>encrypted</format>--> <!-- Enable encryption of passwords -->
@ <!--</xdbDriver_mysql>-->
@
@ <!-- For XMLFiles -->
@ <!--<xdbDriver>xmlfiles</xdbDriver>-->
@ <!--<xdbDriver_xmlfiles>-->
@ <!--<format>encrypted</format>--> <!-- Enable encryption of passwords -->
@ <!--</xdbDriver_xmlfiles>-->
@
@ <!-- Only grab avatars when a chat is initiated. -->
@ <!-- <avatarsOnlyOnChat/> -->
@
@ <!-- Disable all avatar functionality. Might be necessary if you -->
@ <!-- do not have PIL installed. -->
@ <!-- <disableAvatars/> -->
@
@ <!-- Disable automatic send (via im) of away message when away set. -->
@ <!-- Note that away messages are -in addition to- the away status -->
@ <!-- message. -->
@ <!-- <disableAwayMessage/> -->
@
@ <!-- Use Jabber.com's XCP component protocol extensions. -->
@ <!-- <useXCP/> -->
@
@ <!-- SASL username used to bind to Jabber server. -->
@ <!-- secret, above, is used for sasl password -->
@ <!-- NOTE: This does not work with Twisted > 2.2.0. -->
@ <!-- <saslUsername>username</saslUsername> -->
@
@ <!-- Use external component binding. -->
@ <!-- This dodges the need to manually configure all jids that talk to this transport. -->
@ <!-- Jabberd2 requires saslUsername and useRouteWrap for this to work. -->
@ <!-- Wildfire as of 2.6.0 requires just this. -->
@ <!-- <useComponentBinding/> -->
@
@ <!-- Wrap stanzas in <route> stanza. -->
@ <!-- Jabberd2 requires this for useComponentBinding. -->
@ <!-- <useRouteWrap/> -->
@
@ <!-- JID of message archive service -->
@ <!-- <messageArchiveJID>datasink.example.org</messageArchiveJID> -->
@
@ <!-- If registration authentication is used, enter the method -->
@ <!-- Auth configs often require additional options to be specified. -->
@ <!-- See associated config entries per authRegister example. -->
@ <!-- NOTE: limited to LDAP for now -->
@
@ <!-- THIS IS UNTESTED AS OF YET -->
@ <!-- <authRegister>LDAP</authRegister> -->
@ <!-- For LDAP auth, make sure to uncomment <authRegister_LDAP> -->
@ <!-- and </authRegister_LDAP> and fill out the options in between. -->
@ <!-- <authRegister_LDAP> -->
@ <!-- The fqdn or ip address of the LDAP server -->
@ <!-- <server>ldap.example.org</server> -->
@ <!-- The Root DN to be used to perform LDAP searches -->
@ <!-- <rootDN>CN=Administrator,CN=Users,DC=example,DC=org</rootDN> -->
@ <!-- The password for the Root DN -->
@ <!-- <password>SECRET</password> -->
@ <!-- The Base DN to search for users -->
@ <!-- <baseDN>DC=example,DC=org</baseDN> -->
@ <!-- The attribute to search for the user ID. -->
@ <!-- 'samAccountname' in Windows, 'uid' on most other systems -->
@ <!-- <uidAttr>samAccountname</uidAttr> -->
@ <!-- </authRegister_LDAP> -->
@</pyaimt>

View file

@ -0,0 +1,83 @@
# -*- coding: utf-8; mode: python -*-
@<pymsnt>
@<!-- This file contains options to be configured by the server administrator. -->
@<!-- Please read through all the options in this file -->
@
@<!-- The JabberID of the transport -->
@<jid>msn.crans.org</jid>
@<!-- The public IP or DNS name of the machine the transport is running on -->
@<!-- This is needed for file transfer!! This is also used as the IP address for outgoing connections -->
@<host>msn.crans.org</host>
@<compjid>msn1</compjid>
@<!-- The component JID of the transport. Unless you're doing clustering, leave this alone -->
@<!-- The name of the transport in the service discovery list. -->
@<discoName>MSN Transport</discoName>
@
@
@<!-- The Twisted reactor to choose. Pick poll or epoll on Linux, kqueue on BSD. Or leave as default (best found) -->
@<!-- <reactor>poll</reactor> -->
@
@
@<!-- The IP address of the main Jabber server to connect to -->
@<mainServer>127.0.0.1</mainServer>
@<!-- The TCP port to connect to the Jabber server on (this is the default for Jabberd2) -->
@<port>5557</port>
@<!-- The authentication token to use when connecting to the Jabber server -->
@<secret>RK8cx4f03</secret>
@<!-- Use Jabber.com's XCP component protocol extensions. -->
@<!-- <useXCP/> -->
@
@
@<!-- The default language to use -->
@<lang>en</lang>
@<!-- The website of the Jabber service -->
@<website>http://jabber.crans.org</website>
@
@
@<!-- Comment out the following options to disable them, or uncomment them to enable them -->
@<!-- Send email notification messages to users -->
@<mailNotifications/>
@<!-- Send greeting on login -->
@<!-- <sessionGreeting>You have just started a session with PyMSNt</sessionGreeting> -->
@<!-- Send message on successful registration -->
@<!-- <registerMessage>You have successfully registered with PyMSNt</registerMessage> -->
@<!-- Allow users to register with this transport -->
@<allowRegister/>
@<!-- Get all avatars. If this is set to true then avatars are grabbed for all your contacts immediately. If false then avatars are only grabbed when you're in a chat with a contact -->
@<getAllAvatars/>
@<!-- The amount of time a user has to join a groupchat they are invited to before the transport makes them leave the room. (MSN protocol requires autojoining of groupchats) -->
@<!-- <groupchatTimeout>120</groupchatTimeout> -->
@
@
@<!-- File transfer settings -->
@<!-- The maximum size of a file transfer (in bytes). For unlimited, comment out, or set to 0 -->
@<ftSizeLimit>100000000</ftSizeLimit>
@<!-- The maximum rate for file transfer (in bytes). For unlimited, comment out, or set to 0 -->
@<ftRateLimit>1024000</ftRateLimit>
@<!-- Please give the port to listen for Jabber socks5 transfers on. -->
@<ftJabberPort>8010</ftJabberPort>
@<!-- Please give the port to listen for HTTP GETs here (Used in old-style OOB file transfers. Best to leave this disabled unless you know you need it.) -->
@<!--<ftOOBPort>8011</ftOOBPort>-->
@<!-- Please give the root URL the transport should send to clients. (You can use an Apache reverse proxy to put this on your ordinary website) -->
@<!-- Eg, the transport will listen on port 8011 for HTTP GETs to /RANDOM_FILE.ext. You can set apache to forward any requests to http://yourhost.com:80/msn/files/RANDOM_FILE.ext to http://yourhost.com:8011/RANDOM_FILE.ext. This saves you from opening extra ports. -->
@<!--<ftOOBRoot>http://host.com/msn/files/</ftOOBRoot>-->
@
@<!-- You can choose which users you wish to have as administrators. These users can perform some tasks with Ad-Hoc commands that others cannot -->
@<admins>
@<jid>huber@jabber.crans.org</jid>
@</admins>
@
@
@<!-- Log settings -->
@
@<!-- The logging level
@0 -> No logging
@1 -> Log tracebacks
@2 -> Log tracebacks, warnings and errors
@3 -> Log all sorts of informational (mostly useless stuff)
@4 -> Log the MSN protocol code sent
@-->
@<debugLevel>3</debugLevel>
@
@</pymsnt>