Config files of the spootle prosody server.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
This repo is archived. You can view files and clone it, but cannot push or open issues/pull-requests.
 
 

142 lines
4.1 KiB

-- Prosody XMPP Server Configuration
---------- Server-wide settings ----------
-- general --
pidfile = "/var/run/prosody/prosody.pid"
admins = { "admin@spootle.de" }
contact_info = {
abuse = { "mailto:jeybe@mailbox.org" };
admin = { "mailto:jeybe@mailbox.org" };
};
-- network --
--certs
certificates = "certs"
https_certificate = "/etc/prosody/certs/spootle.de.crt"
--XMPP over HTTPS
legacy_ssl_ports = 5223
ssl = {
key = "certs/spootle.de.key";
certificate = "certs/spootle.de.crt";
}
--force encryption
c2s_require_encryption = true
s2s_require_encryption = true
s2s_secure_auth = true
-- storage --
authentication = "internal_hashed"
storage = "sql"
sql = {
driver = "MySQL";
database = "dbauth";
username = "dbauth";
password = "secretpassword";
host = "localhost";
}
-- log / stats --
log = {
error = "/var/log/prosody/prosody.err";
}
-- modules --
plugin_paths = { "/prosody-modules/" }
modules_enabled = {
-- Generally required
"roster"; -- For roster
"saslauth"; -- For authentication
"tls"; -- For tls support
"dialback"; -- s2s dialback support
"disco"; -- Service discovery
-- Not essential, but recommended
"carbons"; -- Keep multiple clients in sync
"pep"; -- send updates or events to users in roster
"private"; -- Private XML storage (for room bookmarks, etc.)
"blocklist"; -- For blockling users
"vcard4"; -- User profiles (stored in PEP)
"vcard_legacy"; -- Conversion between legacy vCard and PEP Avatar, vcard
-- Nice to have
"version"; -- Replies to server version requests
"uptime"; -- Report how long server has been running
"time"; -- Let others know the time here on this server
"ping"; -- Replies to XMPP pings with pongs
"register"; -- in-band registration, in-band passwort changes
"mam"; -- keep message archive
"csi_simple"; -- Simple Mobile optimizations
-- Admin interfaces
"admin_adhoc"; -- administration via client and ad-hoc commands
-- HTTP modules
"bosh"; -- Enable BOSH clients, aka "Jabber over HTTP"
"websocket"; -- BOSH with less overhead
-- Other specific functionality
"limits"; -- Enable bandwidth limiting for XMPP connections
"server_contact_info"; -- Publish contact information for this service
"watchregistrations"; -- Alert admins of registrations
-- Additional
"smacks"; -- Stream management for unreliable networks
"cloud_notify"; -- Push notification support
"http_upload_external"; -- file upload support
"bookmarks"; -- fetch and redirect private xml to pep
"block_registrations"; -- rules for usernames
"log_auth"; -- log ip for failed auths
"register_web" -- web registration
}
-- module config --
--MAM
archive_expires_after = "4w"
--http_upload_external
http_upload_external_base_url = "https://upload.spootle.de/"
http_upload_external_secret = "secretpassword"
http_upload_external_file_size_limit = 1024*1024*75
--bosh
cross_domain_bosh = true
--registration
allow_registration = false
registration_throttle_max = 5
registration_throttle_period = 45
--watchregistrations
registration_notification = "Neue Registrierung: $username auf $host"
--block_registrations
block_registrations_users = { "admin", "admins", "serveradmin", "serveradmins", "root", "xmpp", "jabber", "jannikbubeck", "jannik.bubeck", "jannik-bubeck", "jannik_bubeck", "bubeck-jannik", "bubeck.jannik", "bubeck_jannik" }
block_registrations_require = "^[a-zA-Z0-9_.-]+$"
block_registrations_matching = {
"master$"
}
--register_web
register_web_template = "/etc/prosody/register-template"
--limits
limits = {
c2s = {
rate = "10kb/s";
burst = "2s";
};
s2sin = {
rate = "100kb/s";
burst = "5s";
};
}
----------- Virtual hosts -----------
VirtualHost "spootle.de"
http_external_url = "https://spootle.de:5281"
-- components --
--MUC
Component "conference.spootle.de" "muc"
name = "Spootle.de Chatroom"
restrict_room_creation = "local"
max_history_messages = 200
muc_tombstones = true
muc_tombstone_expiry = 86400 * 31
modules_enabled = { "muc_mam"; "muc_limits"; "vcard_muc" }
muc_event_rate = 1
muc_burst_factor = 6
muc_max_nick_length = 23
--SOCKS65 Bytestreams
Component "proxy.spootle.de" "proxy65"