292 lines
9.8 KiB
Plaintext
292 lines
9.8 KiB
Plaintext
--------------------------------------------------------------------------------
|
|
---- VNCtalk Prosody/XMPP Settings
|
|
--------------------------------------------------------------------------------
|
|
|
|
daemonize = false;
|
|
|
|
pidfile = "/var/run/prosody/prosody.pid"; -- Required for init scripts and prosodyctl
|
|
|
|
-- Enable use of libevent for better performance under high load
|
|
-- For more information see: http://prosody.im/doc/libevent
|
|
-- use_libevent = true;
|
|
network_backend = "epoll";
|
|
|
|
|
|
allow_registration = false;
|
|
|
|
network_default_read_size = 8192; -- Increase buffer size to allow jitsi meet and file transfers. Default 4096.
|
|
|
|
-- for docker only!
|
|
run_as_root = true;
|
|
|
|
admins = {
|
|
"admin@${prosodyDomain}"
|
|
}
|
|
|
|
plugin_paths = {
|
|
"/usr/local/lib/prosody/modules",
|
|
"/usr/lib/prosody/modules",
|
|
}
|
|
|
|
modules_enabled = {
|
|
"roster"; -- Allow users to have a roster. Recommended ;)
|
|
"saslauth"; -- Authentication for clients and servers. Recommended if you want to log in.
|
|
"tls"; -- Add support for secure TLS on c2s/s2s connections
|
|
"dialback"; -- s2s dialback support
|
|
"disco"; -- Service discovery
|
|
"private"; -- Private XML storage (for room bookmarks, etc.)
|
|
"vcard"; -- Allow users to set vCards
|
|
"blocklist"; -- Allow users to block communications with other users
|
|
"smacks";
|
|
"smacks_offline";
|
|
"carbons";
|
|
"carbons_copies";
|
|
"mam";
|
|
"vnc_lastactivity";
|
|
"offline"; -- Store offline messages
|
|
"pubsub";
|
|
"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
|
|
"pep"; -- Enables users to publish their mood, activity, playing music and more
|
|
"vnc_vcard_avatar"; -- publish avatars
|
|
|
|
"adhoc";
|
|
"admin_adhoc"; -- Allows administration via an XMPP client that supports ad-hoc commands
|
|
"admin_telnet"; -- Opens telnet console interface on localhost port 5582
|
|
"posix"; -- POSIX functionality, sends server to background, enables syslog, etc.
|
|
"bosh"; -- Enable mod_bosh
|
|
"websocket";
|
|
"http_altconnect";
|
|
"idlecompat";
|
|
-- "groups"; -- Shared roster support
|
|
|
|
-- Other specific functionality
|
|
"announce"; -- Send announcement to all online users
|
|
"watchregistrations"; -- Alert admins of registrations
|
|
"motd"; -- Send a message to users when they log in
|
|
"legacyauth"; -- Legacy authentication. Only used by some old clients and bots.
|
|
"webpresence";
|
|
"http_rest";
|
|
"csi";
|
|
-- "throttle_presence";
|
|
"filter_chatstates";
|
|
|
|
-- VNCtalk modules
|
|
"vnc_receipts";
|
|
"vnc_remotemucstore";
|
|
|
|
}
|
|
|
|
modules_disabled = {
|
|
-- "c2s"; -- Handle client connections
|
|
-- "s2s"; -- Handle server-to-server connections
|
|
|
|
"archive";
|
|
"register"; -- Allow users to register on this server using a client and change passwords
|
|
}
|
|
|
|
--------------------------------------------------------------------------------
|
|
---- Logging configuration
|
|
--------------------------------------------------------------------------------
|
|
|
|
-- The supported levels are: "debug", "info", "warn", "error".
|
|
log = {
|
|
levels = { "info", "warn", "error" }, to = "console" ;
|
|
}
|
|
|
|
--------------------------------------------------------------------------------
|
|
---- Components Settings
|
|
--------------------------------------------------------------------------------
|
|
|
|
component_ports = { 5347 }
|
|
component_interface = "0.0.0.0";
|
|
--component_interface = "192.168.0.10"; -- Prosody to listen for component connections on port XXXX, coming only to the IP address 192.168.0.10.
|
|
|
|
--------------------------------------------------------------------------------
|
|
---- BOSH Settings
|
|
--------------------------------------------------------------------------------
|
|
|
|
bosh_ports = { 5280 }
|
|
bosh_max_inactivity = 10; --Maximum amount of time in seconds a client may remain silent for, with no requests
|
|
cross_domain_bosh = true; --Allow access from scripts on any site with no proxy (requires a modern browser)
|
|
consider_bosh_secure = true; --Use if proxying HTTPS->HTTP on the server side
|
|
bosh_default_hold = 1; --Maximum number of requests the server will hold open for a client
|
|
bosh_max_requests = 2; --Maximum number of requests a client may make to the server at a time
|
|
-- 2check: internel network in k8s ?
|
|
trusted_proxies = { "127.0.0.1" } --A list of proxies to trust, used to find a client's real IP
|
|
|
|
--------------------------------------------------------------------------------
|
|
---- Websocket Settings
|
|
--------------------------------------------------------------------------------
|
|
|
|
cross_domain_websocket = true; --Allow access from scripts on any site with no proxy (requires a modern browser)
|
|
consider_websocket_secure = true; --Use if proxying HTTPS->HTTP on the server side
|
|
|
|
--------------------------------------------------------------------------------
|
|
---- SSL/TLS Settings
|
|
--------------------------------------------------------------------------------
|
|
|
|
ssl = {
|
|
key = "/etc/prosody-ssl.key";
|
|
certificate = "/etc/prosody-ssl.pem";
|
|
}
|
|
|
|
c2s_require_encryption = true; -- Force clients to use encrypted connections
|
|
s2s_secure_auth = false; -- Force certificate authentication for server-to-server connections
|
|
|
|
--s2s_secure_domains = { "jabber.org" }
|
|
-- list of domains here that will not be required to authenticate using certificates
|
|
--s2s_insecure_domains = { "gmail.com" }
|
|
|
|
allow_anonymous_s2s = true
|
|
|
|
--------------------------------------------------------------------------------
|
|
---- Authentication Settings
|
|
--------------------------------------------------------------------------------
|
|
|
|
authentication = "internal_hashed"
|
|
|
|
--------------------------------------------------------------------------------
|
|
---- Storage Settings
|
|
--------------------------------------------------------------------------------
|
|
|
|
default_storage = "sql"
|
|
storage = "sql"
|
|
|
|
sql = {
|
|
driver = "PostgreSQL",
|
|
host = "${prosodyDBhost}",
|
|
database = "${prosodyDBname}",
|
|
username = "${prosodyDBuser}",
|
|
password = "${prosodyDBpass}",
|
|
}
|
|
|
|
-- storage = { archive2 = "sql2" }
|
|
|
|
sql_manage_tables = true; --allow auto create table
|
|
|
|
-- PEP limit
|
|
|
|
pep_max_items = 256
|
|
|
|
--------------------------------------------------------------------------------
|
|
---- MAM XEP-0313 Settings
|
|
--------------------------------------------------------------------------------
|
|
|
|
max_archive_query_results = 20;
|
|
archive_cleanup_interval = 4*60*60;
|
|
archive_expires_after = "never"
|
|
default_archive_policy = "roster"
|
|
|
|
--------------------------------------------------------------------------------
|
|
---- SMACKS config
|
|
--------------------------------------------------------------------------------
|
|
smacks_hibernation_time = 300;
|
|
smacks_enabled_s2s = false;
|
|
smacks_max_unacked_stanzas = 0;
|
|
smack_max_ack_delay = 60;
|
|
smacks_max_hibernated_sessions = 10;
|
|
smacks_max_old = 10;
|
|
--------------------------------------------------------------------------------
|
|
|
|
--------------------------------------------------------------------------------
|
|
---- MOTD config
|
|
--------------------------------------------------------------------------------
|
|
|
|
motd_jid = "admin@${prosodyDomain}"
|
|
-- motd_text = "Currently the XMPP service is under maintence."
|
|
|
|
|
|
----------- Virtual hosts -----------
|
|
|
|
VirtualHost "${prosodyDomain}"
|
|
enabled = true; -- Remove this line to enable this host
|
|
|
|
admins = { "admin@${prosodyDomain}" }
|
|
|
|
authentication = "http_async"
|
|
-- http_auth_url = "http://10.0.201.48:9544/"
|
|
http_auth_url = "${hybridaAuthUrl}"
|
|
|
|
fcm_api_key = "${fcmApiKey}"
|
|
fcm_api_url = "${fcmApiUrl}"
|
|
del_api_url = "${fcmDelUrl}"
|
|
|
|
|
|
modules_enabled = {
|
|
"bosh";
|
|
"pubsub";
|
|
"ping"; -- Enable mod_ping
|
|
-- "auto_accept_subscriptions";
|
|
"vnc_delfile";
|
|
"vnc_fcm";
|
|
"http_upload_external";
|
|
"alias";
|
|
"vnc_timestamp";
|
|
}
|
|
|
|
modules_disabled = {
|
|
"discoitems"; --manually override the service discovery items for a host
|
|
}
|
|
|
|
http_upload_external_base_url = "${fileShareBaseUrl}"
|
|
http_upload_external_secret = "${fileShareSecret}"
|
|
http_upload_external_file_size_limit = 104857600 -- bytes
|
|
|
|
-- avatar_upload_url = "https://vnctalk.dev.vnc.de/avatarupload/"
|
|
avatar_upload_url = "${avatarUploadUrl}"
|
|
avatar_upload_user = "${avatarUploadUser}"
|
|
avatar_upload_pass = "${avatarUploadPass}"
|
|
|
|
ssl = {
|
|
key = "/etc/prosody-ssl.key";
|
|
certificate = "/etc/prosody-ssl.pem";
|
|
}
|
|
|
|
|
|
|
|
disco_items = {
|
|
-- Do not display/publicy any disco item to avoid information leaking due to public reachable chatroom service.
|
|
}
|
|
|
|
|
|
Component "conference.${prosodyDomain}" "muc"
|
|
component_secret = "Weew0Ooheivei3aizohmalohLieshohs"
|
|
modules_enabled = {
|
|
"muc_mam",
|
|
"vnc_muc_automember",
|
|
"vnc_muc_fcm",
|
|
"vnc_remotemucinvite",
|
|
"vnc_delfile",
|
|
"vnc_e2ehints",
|
|
"vnc_muc_hook",
|
|
"vnc_muc_data",
|
|
"vnc_track_kicks",
|
|
"vcard_muc"; -- allow vcards for muc
|
|
}
|
|
storage = {
|
|
-- This makes mod_mam_muc use the sql2 storage backend (others will use internal)
|
|
-- which at the time of this writing is the only one supporting stanza archives
|
|
muc_log = "sql";
|
|
}
|
|
muc_log_by_default = true; -- Enable logging by default (can be disabled in room config)
|
|
muc_log_all_rooms = true; -- set to true to force logging of all rooms
|
|
|
|
-- This is the largest number of messages that are allowed to be retrieved in one MAM request.
|
|
max_archive_query_results = 20;
|
|
|
|
-- This is the largest number of messages that are allowed to be retrieved when joining a room.
|
|
max_history_messages = 1000;
|
|
fcm_api_key = "${fcmApiKey}"
|
|
fcm_api_url = "${fcmApiUrl}"
|
|
del_api_url = "${fcmDelUrl}"
|
|
|
|
avatar_upload_url = "${avatarUploadUrl}"
|
|
avatar_upload_user = "${avatarUploadUser}"
|
|
avatar_upload_pass = "${avatarUploadPass}"
|
|
storage_host = "${prosodyDomain}";
|
|
|
|
Component "broadcast@${prosodyDomain}" "vnc_broadcast"
|