1 -- Prosody Configuration File
3 -- If it wasn't already obvious, -- starts a comment, and all
4 -- text after it on a line is ignored by Prosody.
6 -- The config is split into sections, a global section, and one
7 -- for each defined host that we serve. You can add as many host
8 -- sections as you like.
10 -- Lists are written { "like", "this", "one" }
11 -- Lists can also be of { 1, 2, 3 } numbers, and other things.
12 -- Either commas, or semi-colons; may be used
15 -- A table is a list of values, except each value has a name. An
16 -- example table would be:
18 -- ssl = { key = "keyfile.key", certificate = "certificate.cert" }
20 -- Whitespace (that is tabs, spaces, line breaks) is mostly
23 -- be placed anywhere that you deem fitting.
25 -- Tip: You can check that the syntax of this file is correct when you
26 -- have finished by running: luac -p prosody.cfg.lua
27 -- If there are any errors, it will let you know what and where they
31 -- The only thing left to do is rename this file to remove the .dist
32 -- ending, and fill in the
33 -- blanks. Good luck, and happy Jabbering!
35 -- Server-wide settings go in this section
38 -- This is a (by default, empty) list of accounts that are admins for the
39 -- server. Note that you must create the accounts separately (see
40 -- http://prosody.im/doc/creating_accounts)
41 -- Example: admins = { "user1@example.com", "user2@example.net" }
44 -- Enable use of libevent for better performance under high load
45 -- Requires optional 'luaevent-prosody' package
46 --use_libevent = true;
48 -- This is the list of modules Prosody will load on startup. It looks for
49 -- mod_modulename.lua in the plugins folder, so make sure that exists too.
52 "roster"; -- Allow users to have a roster. Recommended ;)
53 "saslauth"; -- Authentication for clients and servers. Recommended if
54 -- you want to log in.
55 "dialback"; -- s2s dialback support
56 "disco"; -- Service discovery
57 "posix"; -- POSIX functionality, daemonizes, enables syslog, etc.
59 -- Not essential, but recommended
60 "private"; -- Private XML storage (for room bookmarks, etc.)
61 "vcard"; -- Allow users to set vCards
62 "privacy"; -- Support privacy lists
63 --"tls"; -- Support for secure TLS on c2s/s2s connections
64 -- Requires optional 'luasec' package
65 --"compression"; -- Stream compression for client-to-server streams
66 -- Requires optional 'lua-zlib' package
69 "legacyauth"; -- Legacy authentication. Only used by some old
71 "version"; -- Replies to server version requests
72 "uptime"; -- Report how long server has been running
73 "time"; -- Let others know the time here on this server
74 "ping"; -- Replies to XMPP pings with pongs
75 "pep"; -- Enables users to publish their mood, activity, playing
77 "register"; -- Allow users to register on this server using a client
78 -- and change passwords
80 -- Other specific functionality
81 --"console"; -- telnet to port 5582
82 -- (needs console_enabled = true)
83 --"bosh"; -- Enable BOSH clients, aka "Jabber over HTTP"
84 --"httpserver"; -- Serve static files from a directory over
86 --"groups"; -- Shared roster support
87 --"announce"; -- Send announcement to all online users
88 --"welcome"; -- Welcome users who register accounts
89 --"watchregistrations"; -- Alert admins of registrations
92 -- These modules are auto-loaded, should you for (for some mad
93 -- reason) want to disable them then uncomment them below.
100 -- Disable account creation by default, for security
101 -- For more information see http://prosody.im/doc/creating_accounts
102 allow_registration
= false;
104 --These are the SSL/TLS-related settings.
106 -- key = "/etc/prosody/certs/localhost.key";
107 -- certificate = "/etc/prosody/certs/localhost.cert";
110 --c2s_require_encryption = false
111 --s2s_require_encryption = false
113 -- Logging configuration
115 -- Log all error messages to prosody.err
116 { levels
= { min = "error" }, to
= "file", timestamps
= true,
117 filename
= "/var/log/prosody/prosody.err" };
119 -- Log everything except "debug" messages to prosody.log
120 { levels
= { min = "info" }, to
= "file", timestamps
= true,
121 filename
= "/var/log/prosody/prosody.log" };
123 -- Log everything to prosody.dbg
124 --{ levels = { min = "debug" }, to = "file", timestamps = true,
125 --filename = "/var/log/prosody/prosody.dbg" };
128 -- Required for proper deamonization
129 pidfile
= "/var/run/prosody/prosody.pid"
131 -- This allows clients to connect to localhost. No harm in it.
134 -- Section for example.com
135 -- (replace example.com with your domain name)
138 enabled
= false -- This will disable the host, preserving the config, but
139 -- denying connections
141 -- Assign this host a certificate for TLS, otherwise it would use the one
142 -- set in the global section (if any). Note that old-style SSL on port 5223
143 -- only supports one certificate, and will always use the global one.
145 -- key = "/etc/prosody/certs/example.com.key";
146 -- certificate = "/etc/prosody/certs/example.com.crt";
149 -- Set up a MUC (multi-user chat) room server on conference.example.com:
150 --Component "conference.example.com" "muc"
152 -- Set up a SOCKS5 bytestream proxy for server-proxied file transfers:
153 --Component "proxy.example.com "proxy65"