15 -- A table is a list of values, except each value has a name. An |
15 -- A table is a list of values, except each value has a name. An |
16 -- example table would be: |
16 -- example table would be: |
17 -- |
17 -- |
18 -- ssl = { key = "keyfile.key", certificate = "certificate.cert" } |
18 -- ssl = { key = "keyfile.key", certificate = "certificate.cert" } |
19 -- |
19 -- |
20 -- Whitespace (that is tabs, spaces, line breaks) is mostly insignificant, so |
20 -- Whitespace (that is tabs, spaces, line breaks) is mostly |
|
21 -- insignificant, so |
21 -- can |
22 -- can |
22 -- be placed anywhere that you deem fitting. |
23 -- be placed anywhere that you deem fitting. |
23 -- |
24 -- |
24 -- Tip: You can check that the syntax of this file is correct when you have finished |
25 -- Tip: You can check that the syntax of this file is correct when you |
25 -- by running: luac -p prosody.cfg.lua |
26 -- have finished by running: luac -p prosody.cfg.lua |
26 -- If there are any errors, it will let you know what and where they are, otherwise it |
27 -- If there are any errors, it will let you know what and where they |
27 -- will keep quiet. |
28 -- are, otherwise it will keep quiet. |
28 -- |
29 -- |
29 -- The only thing left to do is rename this file to remove the .dist ending, and fill in the |
30 -- The only thing left to do is rename this file to remove the .dist |
|
31 -- ending, and fill in the |
30 -- blanks. Good luck, and happy Jabbering! |
32 -- blanks. Good luck, and happy Jabbering! |
31 |
33 |
32 -- Server-wide settings go in this section |
34 -- Server-wide settings go in this section |
33 Host "*" |
35 Host "*" |
34 |
|
35 -- This is a (by default, empty) list of accounts that are admins |
|
36 -- for the server. Note that you must create the accounts separately |
|
37 -- (see http://prosody.im/doc/creating_accounts for info) |
|
38 -- Example: admins = { "user1@example.com", "user2@example.net" } |
|
39 admins = { } |
|
40 |
|
41 -- This is the list of modules Prosody will load on startup. |
|
42 -- It looks for mod_modulename.lua in the plugins folder, so make sure that exists too. |
|
43 modules_enabled = { |
|
44 -- Generally required |
|
45 "roster"; -- Allow users to have a roster. Recommended ;) |
|
46 "saslauth"; -- Authentication for clients and servers. Recommended if you want to log in. |
|
47 "tls"; -- Add support for secure TLS on c2s/s2s connections |
|
48 "dialback"; -- s2s dialback support |
|
49 "disco"; -- Service discovery |
|
50 |
|
51 -- Not essential, but recommended |
|
52 "private"; -- Private XML storage (for room bookmarks, etc.) |
|
53 "vcard"; -- Allow users to set vCards |
|
54 |
|
55 -- Nice to have |
|
56 "legacyauth"; -- Legacy authentication. Only used by some old clients and bots. |
|
57 "version"; -- Replies to server version requests |
|
58 "uptime"; -- Report how long server has been running |
|
59 "time"; -- Let others know the time here on this server |
|
60 "ping"; -- Replies to XMPP pings with pongs |
|
61 "pep"; -- Enables users to publish their mood, activity, playing music and more |
|
62 "register"; -- Allow users to register on this server using a client and change passwords |
|
63 |
36 |
64 -- Other specific functionality |
37 -- This is a (by default, empty) list of accounts that are admins for the |
65 --"posix"; -- POSIX functionality, sends server to background, enables syslog, etc. |
38 -- server. Note that you must create the accounts separately (see |
66 --"console"; -- Opens admin telnet interface on localhost port 5582 |
39 -- http://prosody.im/doc/creating_accounts) |
67 --"bosh"; -- Enable BOSH clients, aka "Jabber over HTTP" |
40 -- Example: admins = { "user1@example.com", "user2@example.net" } |
68 --"httpserver"; -- Serve static files from a directory over HTTP |
41 admins = { } |
69 }; |
|
70 |
|
71 -- These modules are auto-loaded, should you |
|
72 -- for (for some mad reason) want to disable |
|
73 -- them then uncomment them below |
|
74 modules_disabled = { |
|
75 -- "presence"; |
|
76 -- "message"; |
|
77 -- "iq"; |
|
78 }; |
|
79 |
42 |
80 -- Disable account creation by default, for security |
43 -- Enable use of libevent for better performance under high load |
81 -- For more information see http://prosody.im/doc/creating_accounts |
44 -- For more information see: http://prosody.im/doc/libevent |
82 allow_registration = false; |
45 --use_libevent = true; |
83 |
46 |
84 -- These are the SSL/TLS-related settings. If you don't want |
47 -- This is the list of modules Prosody will load on startup. It looks for |
85 -- to use SSL/TLS, you may comment or remove this |
48 -- mod_modulename.lua in the plugins folder, so make sure that exists too. |
86 ssl = { |
49 -- Documentation on modules can be found at: http://prosody.im/doc/modules |
87 key = "certs/localhost.key"; |
50 modules_enabled = { |
88 certificate = "certs/localhost.cert"; |
51 -- Generally required |
89 } |
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. |
|
58 |
|
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 --"compression"; -- Stream compression for client-to-server streams |
|
65 |
|
66 -- Nice to have |
|
67 "legacyauth"; -- Legacy authentication. Only used by some old |
|
68 -- clients and bots. |
|
69 "version"; -- Replies to server version requests |
|
70 "uptime"; -- Report how long server has been running |
|
71 "time"; -- Let others know the time here on this server |
|
72 "ping"; -- Replies to XMPP pings with pongs |
|
73 "pep"; -- Enables users to publish their mood, activity, playing |
|
74 -- music and more |
|
75 "register"; -- Allow users to register on this server using a client |
|
76 -- and change passwords |
|
77 |
|
78 -- Other specific functionality |
|
79 --"console"; -- telnet to port 5582 |
|
80 -- (needs console_enabled = true) |
|
81 --"bosh"; -- Enable BOSH clients, aka "Jabber over HTTP" |
|
82 --"httpserver"; -- Serve static files from a directory over |
|
83 -- HTTP |
|
84 --"groups"; -- Shared roster support |
|
85 --"announce"; -- Send announcement to all online users |
|
86 --"welcome"; -- Welcome users who register accounts |
|
87 --"watchregistrations"; -- Alert admins of registrations |
|
88 } |
|
89 |
|
90 -- These modules are auto-loaded, should you for (for some mad |
|
91 -- reason) want to disable them then uncomment them below. |
|
92 modules_disabled = { |
|
93 --"presence"; |
|
94 --"message"; |
|
95 --"iq"; |
|
96 } |
|
97 |
|
98 -- Disable account creation by default, for security |
|
99 -- For more information see http://prosody.im/doc/creating_accounts |
|
100 allow_registration = false; |
|
101 |
|
102 --These are the SSL/TLS-related settings. |
|
103 --ssl = { |
|
104 -- key = "certs/localhost.key"; |
|
105 -- certificate = "certs/localhost.cert"; |
|
106 --} |
|
107 |
|
108 -- Require encryption on client/server connections? |
|
109 --c2s_require_encryption = false |
|
110 --s2s_require_encryption = false |
|
111 |
|
112 -- Logging configuration |
|
113 -- For advanced logging see http://prosody.im/doc/logging |
|
114 log = "prosody.log"; |
|
115 debug = false; -- Log debug messages? |
90 |
116 |
91 -- This allows clients to connect to localhost. No harm in it. |
117 -- This allows clients to connect to localhost. No harm in it. |
92 Host "localhost" |
118 Host "localhost" |
93 |
119 |
94 -- Section for example.com |
120 -- Section for example.com |
95 -- (replace example.com with your domain name) |
121 -- (replace example.com with your domain name) |
96 Host "example.com" |
122 Host "example.com" |
|
123 enabled = false -- This will disable the host, preserving the config, but |
|
124 -- denying connections (remove to enable!) |
97 |
125 |
98 enabled = false -- This will disable the host, preserving the config, but denying connections |
126 -- Assign this host a certificate for TLS, otherwise it would use the one |
99 |
127 -- set in the global section (if any). Note that old-style SSL on port 5223 |
100 -- Assign this host a certificate for TLS, otherwise it would use the one |
128 -- only supports one certificate, and will always use the global one. |
101 -- set in the global section (if any). |
129 --ssl = { |
102 -- Note that old-style SSL on port 5223 only supports one certificate, and will always |
130 -- key = "certs/example.com.key"; |
103 -- use the global one. |
131 -- certificate = "certs/example.com.crt"; |
104 ssl = { |
132 --} |
105 key = "certs/example.com.key"; |
|
106 certificate = "certs/example.com.crt"; |
|
107 } |
|
108 |
133 |
109 -- Set up a MUC (multi-user chat) room server on conference.example.com: |
134 -- Set up a MUC (multi-user chat) room server on conference.example.com: |
110 Component "conference.example.com" "muc" |
135 --Component "conference.example.com" "muc" |
|
136 |
|
137 -- Set up a SOCKS5 bytestream proxy for server-proxied file transfers: |
|
138 --Component "proxy.example.com "proxy65" |