Warning: preg_match(): Unknown modifier '-' in /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php on line 783

Warning: preg_match(): Unknown modifier '-' in /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php on line 783

Warning: preg_match(): Unknown modifier '-' in /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php on line 783

Warning: preg_match(): Unknown modifier '-' in /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php on line 783

Warning: preg_match(): Unknown modifier '-' in /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php on line 783

Warning: preg_match(): Unknown modifier '-' in /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php on line 783

Warning: preg_match(): Unknown modifier '-' in /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php on line 783

Warning: preg_match(): Unknown modifier '-' in /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php on line 783

Warning: Cannot modify header information - headers already sent by (output started at /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php:783) in /home/akl1986/public_html/support/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php:783) in /home/akl1986/public_html/support/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php:783) in /home/akl1986/public_html/support/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php:783) in /home/akl1986/public_html/support/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php:783) in /home/akl1986/public_html/support/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php:783) in /home/akl1986/public_html/support/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php:783) in /home/akl1986/public_html/support/wp-includes/rest-api/class-wp-rest-server.php on line 1794

Warning: Cannot modify header information - headers already sent by (output started at /home/akl1986/public_html/support/wp-content/plugins/redux-framework/redux-core/inc/extensions/metaboxes/class-redux-extension-metaboxes.php:783) in /home/akl1986/public_html/support/wp-includes/rest-api/class-wp-rest-server.php on line 1794
{"id":2758,"date":"2019-12-14T19:10:10","date_gmt":"2019-12-14T19:10:10","guid":{"rendered":"https:\/\/support.aklwebhost.com\/?post_type=manual_kb&p=2758"},"modified":"2019-12-14T19:10:10","modified_gmt":"2019-12-14T19:10:10","slug":"xmpp-and-ejabberd-on-debian","status":"publish","type":"manual_kb","link":"https:\/\/support.aklwebhost.com\/knowledgebase\/xmpp-and-ejabberd-on-debian\/","title":{"rendered":"XMPP and ejabberd on Debian"},"content":{"rendered":"

This setup will show you how to setup an XMPP server with ejabberd and Debian. For the course of this setup, we will assume that you are working with administrative privileges. If you want to use\u00a0sudo<\/code>, then append it where needed.<\/p>\n

First, make sure that your packages are up-to-date. Then install\u00a0ejabberd<\/code>\u00a0from the official Debian repositories:<\/p>\n

apt-get update && apt-get upgrade && apt-get install ejabberd\r\n<\/code><\/pre>\n

Initial configuration can be done via\u00a0debconf<\/code>:<\/p>\n

dpkg-reconfigure ejabberd\r\n<\/code><\/pre>\n

This will prompt you for:<\/p>\n

    \n
  • A hostname –\u00a0yourserver.tld<\/code>.<\/li>\n
  • An administrative user – name it whatever you like.<\/li>\n
  • A password for the administrative user.<\/li>\n<\/ul>\n

    At this point, ejabberd is now functional, but you may want to do some fine-tuning. The configuration file is located under\u00a0\/etc\/ejabberd\/ejabberd.cfg<\/code>. Open this file with your favorite text editor. Here you will see server variables, and you can edit them accordingly.<\/p>\n

    Ejabberd comes with three means of administrating it:<\/p>\n

      \n
    • The command-line tool\u00a0ejabberdctl<\/code>.<\/li>\n
    • The possibility to use your client (Pidgin, for example, supports this).<\/li>\n
    • A web interface listening on\u00a0yourdomain.tld:5280<\/code>.<\/li>\n<\/ul>\n

      If you don’t need the web interface, then you can comment out the following sequence:<\/p>\n

      {5280, ejabberd_http, [\r\n                       %%{request_handlers,\r\n                       %% [\r\n                       %%  {[\"pub\", \"archive\"], mod_http_fileserver}\r\n                       %% ]},\r\n                       %%captcha,\r\n                       http_bind,\r\n                       http_poll,\r\n                       web_admin\r\n                      ]}\r\n<\/code><\/pre>\n

      The built-in certificate of ejabberd is not valid and will prompt a security warning from your client. If possible, you should replace it with a certificate from a valid certificate authority (CA).<\/p>\n

      {s2s_use_starttls, true}.\r\n{s2s_certfile, \"\/path\/to\/your\/certificate.pem\"}.\r\n<\/code><\/pre>\n

      After making any changes to the configuration file, ejabberd needs to be restarted:<\/p>\n

      service ejabberd restart\r\n<\/code><\/pre>\n

      You are now ready to use your new XMPP server. We recommend reviewing the official documentation, as it has a lot of useful features that aren’t covered here. For example, shared rosters and transport functionality for other instant messaging services.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","format":"standard","manualknowledgebasecat":[233,242],"manual_kb_tag":[422],"_links":{"self":[{"href":"https:\/\/support.aklwebhost.com\/wp-json\/wp\/v2\/manual_kb\/2758"}],"collection":[{"href":"https:\/\/support.aklwebhost.com\/wp-json\/wp\/v2\/manual_kb"}],"about":[{"href":"https:\/\/support.aklwebhost.com\/wp-json\/wp\/v2\/types\/manual_kb"}],"author":[{"embeddable":true,"href":"https:\/\/support.aklwebhost.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/support.aklwebhost.com\/wp-json\/wp\/v2\/comments?post=2758"}],"version-history":[{"count":1,"href":"https:\/\/support.aklwebhost.com\/wp-json\/wp\/v2\/manual_kb\/2758\/revisions"}],"predecessor-version":[{"id":2759,"href":"https:\/\/support.aklwebhost.com\/wp-json\/wp\/v2\/manual_kb\/2758\/revisions\/2759"}],"wp:attachment":[{"href":"https:\/\/support.aklwebhost.com\/wp-json\/wp\/v2\/media?parent=2758"}],"wp:term":[{"taxonomy":"manualknowledgebasecat","embeddable":true,"href":"https:\/\/support.aklwebhost.com\/wp-json\/wp\/v2\/manualknowledgebasecat?post=2758"},{"taxonomy":"manual_kb_tag","embeddable":true,"href":"https:\/\/support.aklwebhost.com\/wp-json\/wp\/v2\/manual_kb_tag?post=2758"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}