10-config 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. #!/usr/bin/with-contenv bash
  2. if [[ ! -f /config/saslauthd.conf ]]; then
  3. cp /defaults/saslauthd.conf /config/
  4. fi
  5. if [[ ! -f /etc/saslauthd.conf ]]; then
  6. tpl /config/saslauthd.conf > /etc/saslauthd.conf
  7. mkdir -pm777 /var/run/saslauthd
  8. adduser prosody sasl
  9. echo >> /etc/ldap/ldap.conf "TLS_REQCERT allow"
  10. fi
  11. PROSODY_CFG="/config/prosody.cfg.lua"
  12. if [[ ! -d /config/data ]]; then
  13. mkdir -pm 750 /config/data
  14. fi
  15. if [[ "$(stat -c %U /config)" != "prosody" ]]; then
  16. chown -R prosody /config
  17. fi
  18. if [[ "$(stat -c %U /prosody-plugins)" != "prosody" ]]; then
  19. chown -R prosody /prosody-plugins
  20. fi
  21. if [[ "$(stat -c %U /prosody-plugins-custom)" != "prosody" ]]; then
  22. chown -R prosody /prosody-plugins-custom
  23. fi
  24. if [[ ! -f $PROSODY_CFG ]]; then
  25. cp -r /defaults/* /config
  26. tpl /defaults/prosody.cfg.lua > $PROSODY_CFG
  27. tpl /defaults/conf.d/jitsi-meet.cfg.lua > /config/conf.d/jitsi-meet.cfg.lua
  28. if [[ -z $JICOFO_COMPONENT_SECRET || -z $JICOFO_AUTH_PASSWORD ]]; then
  29. echo 'FATAL ERROR: Jicofo component secret and auth password must be set'
  30. exit 1
  31. fi
  32. prosodyctl --config $PROSODY_CFG register $JICOFO_AUTH_USER $XMPP_AUTH_DOMAIN $JICOFO_AUTH_PASSWORD
  33. if [[ -z $JVB_AUTH_PASSWORD ]]; then
  34. echo 'FATAL ERROR: JVB auth password must be set'
  35. exit 1
  36. fi
  37. OLD_JVB_AUTH_PASSWORD=passw0rd
  38. if [[ "$JVB_AUTH_PASSWORD" == "$OLD_JVB_AUTH_PASSWORD" ]]; then
  39. echo 'FATAL ERROR: JVB auth password must be changed, check the README'
  40. exit 1
  41. fi
  42. prosodyctl --config $PROSODY_CFG register $JVB_AUTH_USER $XMPP_AUTH_DOMAIN $JVB_AUTH_PASSWORD
  43. if [[ ! -z $JIBRI_XMPP_USER ]] && [[ ! -z $JIBRI_XMPP_PASSWORD ]]; then
  44. OLD_JIBRI_XMPP_PASSWORD=passw0rd
  45. if [[ "$JIBRI_XMPP_PASSWORD" == "$OLD_JIBRI_XMPP_PASSWORD" ]]; then
  46. echo 'FATAL ERROR: Jibri auth password must be changed, check the README'
  47. exit 1
  48. fi
  49. prosodyctl --config $PROSODY_CFG register $JIBRI_XMPP_USER $XMPP_AUTH_DOMAIN $JIBRI_XMPP_PASSWORD
  50. fi
  51. if [[ ! -z $JIBRI_RECORDER_USER ]] && [[ ! -z $JIBRI_RECORDER_PASSWORD ]]; then
  52. OLD_JIBRI_RECORDER_PASSWORD=passw0rd
  53. if [[ "$JIBRI_RECORDER_PASSWORD" == "$OLD_JIBRI_RECORDER_PASSWORD" ]]; then
  54. echo 'FATAL ERROR: Jibri recorder password must be changed, check the README'
  55. exit 1
  56. fi
  57. prosodyctl --config $PROSODY_CFG register $JIBRI_RECORDER_USER $XMPP_RECORDER_DOMAIN $JIBRI_RECORDER_PASSWORD
  58. fi
  59. if [[ ! -z $JIGASI_XMPP_USER ]] && [[ ! -z $JIGASI_XMPP_PASSWORD ]]; then
  60. OLD_JIGASI_XMPP_PASSWORD=passw0rd
  61. if [[ "$JIGASI_XMPP_PASSWORD" == "$OLD_JIGASI_XMPP_PASSWORD" ]]; then
  62. echo 'FATAL ERROR: Jigasi auth password must be changed, check the README'
  63. exit 1
  64. fi
  65. prosodyctl --config $PROSODY_CFG register $JIGASI_XMPP_USER $XMPP_AUTH_DOMAIN $JIGASI_XMPP_PASSWORD
  66. fi
  67. fi
  68. mkdir -p /config/certs
  69. if [[ ! -f /config/certs/$XMPP_DOMAIN.crt ]]; then
  70. # echo for using all default values
  71. echo | prosodyctl --config $PROSODY_CFG cert generate $XMPP_DOMAIN
  72. fi
  73. if [[ ! -f /config/certs/$XMPP_AUTH_DOMAIN.crt ]]; then
  74. # echo for using all default values
  75. echo | prosodyctl --config $PROSODY_CFG cert generate $XMPP_AUTH_DOMAIN
  76. fi
  77. # certs will be created in /config/data
  78. mv /config/data/*.{crt,key} /config/certs/ || true
  79. rm -f /config/data/*.cnf