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.

prosody.cfg.lua-jvb.example 5.5KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154
  1. plugin_paths = { "/usr/share/jitsi-meet/prosody-plugins/" }
  2. -- domain mapper options, must at least have domain base set to use the mapper
  3. muc_mapper_domain_base = "jitmeet.example.com";
  4. external_service_secret = "__turnSecret__";
  5. external_services = {
  6. { type = "stun", host = "jitmeet.example.com", port = 3478 },
  7. { type = "turn", host = "jitmeet.example.com", port = 3478, transport = "udp", secret = true, ttl = 86400, algorithm = "turn" },
  8. { type = "turns", host = "jitmeet.example.com", port = 5349, transport = "tcp", secret = true, ttl = 86400, algorithm = "turn" }
  9. };
  10. cross_domain_bosh = false;
  11. consider_bosh_secure = true;
  12. -- https_ports = { }; -- Remove this line to prevent listening on port 5284
  13. -- by default prosody 0.12 sends cors headers, if you want to disable it uncomment the following (the config is available on 0.12.1)
  14. --http_cors_override = {
  15. -- bosh = {
  16. -- enabled = false;
  17. -- };
  18. -- websocket = {
  19. -- enabled = false;
  20. -- };
  21. --}
  22. -- https://ssl-config.mozilla.org/#server=haproxy&version=2.1&config=intermediate&openssl=1.1.0g&guideline=5.4
  23. ssl = {
  24. protocol = "tlsv1_2+";
  25. ciphers = "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384"
  26. }
  27. unlimited_jids = {
  28. "focusUser@auth.jitmeet.example.com",
  29. "jvb@auth.jitmeet.example.com"
  30. }
  31. VirtualHost "jitmeet.example.com"
  32. -- enabled = false -- Remove this line to enable this host
  33. authentication = "anonymous"
  34. -- Properties below are modified by jitsi-meet-tokens package config
  35. -- and authentication above is switched to "token"
  36. --app_id="example_app_id"
  37. --app_secret="example_app_secret"
  38. -- Assign this host a certificate for TLS, otherwise it would use the one
  39. -- set in the global section (if any).
  40. -- Note that old-style SSL on port 5223 only supports one certificate, and will always
  41. -- use the global one.
  42. ssl = {
  43. key = "/etc/prosody/certs/jitmeet.example.com.key";
  44. certificate = "/etc/prosody/certs/jitmeet.example.com.crt";
  45. }
  46. av_moderation_component = "avmoderation.jitmeet.example.com"
  47. speakerstats_component = "speakerstats.jitmeet.example.com"
  48. conference_duration_component = "conferenceduration.jitmeet.example.com"
  49. -- we need bosh
  50. modules_enabled = {
  51. "bosh";
  52. "pubsub";
  53. "ping"; -- Enable mod_ping
  54. "speakerstats";
  55. "external_services";
  56. "conference_duration";
  57. "muc_lobby_rooms";
  58. "muc_breakout_rooms";
  59. "av_moderation";
  60. }
  61. c2s_require_encryption = false
  62. lobby_muc = "lobby.jitmeet.example.com"
  63. breakout_rooms_muc = "breakout.jitmeet.example.com"
  64. main_muc = "conference.jitmeet.example.com"
  65. -- muc_lobby_whitelist = { "recorder.jitmeet.example.com" } -- Here we can whitelist jibri to enter lobby enabled rooms
  66. Component "conference.jitmeet.example.com" "muc"
  67. restrict_room_creation = true
  68. storage = "memory"
  69. modules_enabled = {
  70. "muc_meeting_id";
  71. "muc_domain_mapper";
  72. "polls";
  73. --"token_verification";
  74. "muc_rate_limit";
  75. }
  76. admins = { "focusUser@auth.jitmeet.example.com" }
  77. muc_room_locking = false
  78. muc_room_default_public_jids = true
  79. Component "breakout.jitmeet.example.com" "muc"
  80. restrict_room_creation = true
  81. storage = "memory"
  82. modules_enabled = {
  83. "muc_meeting_id";
  84. "muc_domain_mapper";
  85. --"token_verification";
  86. "muc_rate_limit";
  87. "polls";
  88. }
  89. admins = { "focusUser@auth.jitmeet.example.com" }
  90. muc_room_locking = false
  91. muc_room_default_public_jids = true
  92. -- internal muc component
  93. Component "internal.auth.jitmeet.example.com" "muc"
  94. storage = "memory"
  95. modules_enabled = {
  96. "ping";
  97. }
  98. admins = { "focusUser@auth.jitmeet.example.com", "jvb@auth.jitmeet.example.com" }
  99. muc_room_locking = false
  100. muc_room_default_public_jids = true
  101. VirtualHost "auth.jitmeet.example.com"
  102. modules_enabled = {
  103. "limits_exception";
  104. }
  105. authentication = "internal_hashed"
  106. -- Proxy to jicofo's user JID, so that it doesn't have to register as a component.
  107. Component "focus.jitmeet.example.com" "client_proxy"
  108. target_address = "focusUser@auth.jitmeet.example.com"
  109. Component "speakerstats.jitmeet.example.com" "speakerstats_component"
  110. muc_component = "conference.jitmeet.example.com"
  111. Component "conferenceduration.jitmeet.example.com" "conference_duration_component"
  112. muc_component = "conference.jitmeet.example.com"
  113. Component "avmoderation.jitmeet.example.com" "av_moderation_component"
  114. muc_component = "conference.jitmeet.example.com"
  115. Component "lobby.jitmeet.example.com" "muc"
  116. storage = "memory"
  117. restrict_room_creation = true
  118. muc_room_locking = false
  119. muc_room_default_public_jids = true
  120. modules_enabled = {
  121. "muc_rate_limit";
  122. "polls";
  123. }
  124. -- Enables dial-in for Jitsi meet components customers
  125. -- Note: make sure you have the following packages installed: lua-basexx, liblua5.3-dev, libssl-dev, luarocks
  126. -- and execute $ sudo luarocks install luajwtjitsi 3.0-0
  127. VirtualHost "jigasi.meet.jitsi"
  128. enabled = false -- Jitsi meet components customers remove this line
  129. modules_enabled = {
  130. "ping";
  131. "bosh";
  132. }
  133. authentication = "token"
  134. app_id = "jitsi";
  135. asap_key_server = "https://jaas-public-keys.jitsi.net/jitsi-components/prod-8x8"
  136. asap_accepted_issuers = { "jaas-components" }
  137. asap_accepted_audiences = { "jigasi.jitmeet.example.com" }