User Tools

Site Tools


servers:linux:prosody

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
servers:linux:prosody [2025/09/11 06:43] – external edit 127.0.0.1servers:linux:prosody [2026/05/15 03:08] (current) Sean Rhone
Line 7: Line 7:
 ===== Prerequisites ===== ===== Prerequisites =====
  
-  * [[distros:ubuntu_server Ubuntu Server]] +  * [[linux:distros:server:opensuse_tumbleweed_server|openSUSE Tumbleweed (Server)]] 
-  * [[servers:nginx:lets_encrypt | Let's Encrypt]] +  * [[servers:linux:nginx:lets_encrypt|Certbot (Let's Encrypt)]]
- +
-===== Notes ===== +
- +
-  * https://check.messaging.one/result.php?domain=chat.realmofespionage.xyz&type=client +
-  * https://check.messaging.one/submit.php?domain=chat.realmofespionage.xyz&type=server+
  
 ====== Dependencies ====== ====== Dependencies ======
Line 19: Line 14:
 **** ****
  
-  sudo apt install 'prosody'+  sudo zypper install 'prosody'
  
 ====== Firewall ====== ====== Firewall ======
Line 25: Line 20:
   * 5222/tcp is XMPP c2s ((client to server communications)) and needs forwarded from the router   * 5222/tcp is XMPP c2s ((client to server communications)) and needs forwarded from the router
   * 5269/tcp is XMPP s2s ((server to server communications)) and needs forwarded from the router   * 5269/tcp is XMPP s2s ((server to server communications)) and needs forwarded from the router
 +  * [[linux:notes:firewalld|Firewalld Notes]]
  
-  sudo -'/etc/ufw/applications.d/custom' && sudo ufw allow 'prosody-custom' +  sudo firewall-cmd --add-service='xmpp-client--permanent && sudo firewall-cmd --add-service='xmpp-server' --permanent && sudo firewall-cmd --reload
- +
-<code> +
-[prosody-custom] +
-title=prosody-custom +
-description=Prosody XMPP C2S and S2S +
-ports=5222,5269/tcp</code>+
  
 ====== Settings ====== ====== Settings ======
  
-===== General =====+  * https://prosody.im/doc/configure
  
-  Should be set out-the-box+===== Modular ===== 
 + 
 +  echo 'Include "conf.d/*.cfg.lua"' | sudo tee --append '/etc/prosody/prosody.cfg.lua' > '/dev/null'
  
   sudo -e '/etc/prosody/prosody.cfg.lua'   sudo -e '/etc/prosody/prosody.cfg.lua'
- 
-  Include "conf.d/*.cfg.lua" 
  
 ===== RoE | Chat ===== ===== RoE | Chat =====
  
-  sudo -e '/etc/prosody/conf.avail/roe-chat.cfg.lua'+  sudo mkdir -p '/etc/prosody/conf.d' && sudo -e '/etc/prosody/conf.d/roe-chat.cfg.lua' && sudo chown -R 'prosody':'prosody' '/etc/prosody/conf.d'
  
-  admins = { "espionage724@chat.realmofespionage.xyz" } +<code> 
-   +admins = { "espionage724@chat.realmofespionage.xyz" }
-  ssl = { +
-          key = "/etc/prosody/certs/privkey.pem"; +
-          certificate = "/etc/prosody/certs/fullchain.pem"; +
-          protocol = "tlsv1_2"; +
-          ciphers = "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256"; +
-  } +
-   +
-  c2s_require_encryption = true +
-   +
-  s2s_secure_auth = true +
-   +
-  authentication = "internal_hashed" +
-   +
-  VirtualHost "chat.realmofespionage.xyz"+
  
-==== Enable Host ====+ssl 
 +key "/etc/prosody/certs/privkey.pem"; 
 +certificate "/etc/prosody/certs/fullchain.pem"; 
 +protocol "tlsv1_2"; 
 +ciphers "ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256"; 
 +}
  
-****+c2s_require_encryption = true 
 + 
 +s2s_secure_auth = true 
 + 
 +authentication = "internal_hashed" 
 + 
 +VirtualHost "chat.realmofespionage.xyz"
  
-  sudo rm -f '/etc/prosody/conf.d/roe-chat.cfg.lua' && sudo ln -s '/etc/prosody/conf.avail/roe-chat.cfg.lua' '/etc/prosody/conf.d/roe-chat.cfg.lua'+-- End</code>
  
 ====== Let's Encrypt SSL Cert ====== ====== Let's Encrypt SSL Cert ======
Line 77: Line 64:
 **** ****
  
-  sudo cp '/etc/letsencrypt/live/realmofespionage.xyz/fullchain.pem' '/etc/letsencrypt/live/realmofespionage.xyz/privkey.pem' '/etc/prosody/certs' && sudo chgrp 'prosody' '/etc/prosody/certs/fullchain.pem' '/etc/prosody/certs/privkey.pem' && sync+  sudo cp '/etc/letsencrypt/live/realmofespionage.xyz/fullchain.pem' '/etc/letsencrypt/live/realmofespionage.xyz/privkey.pem' '/etc/prosody/certs' && sudo chown 'prosody':'prosody' '/etc/prosody/certs/fullchain.pem' '/etc/prosody/certs/privkey.pem'
  
 ===== Certbot Automation ===== ===== Certbot Automation =====
Line 105: Line 92:
 ====== Create User ====== ====== Create User ======
  
-****+  sudo su 'prosody' -s '/bin/bash'
  
-  sudo -H -u 'prosody' prosodyctl adduser 'espionage724@chat.realmofespionage.xyz'+  prosodyctl adduser 'espionage724@chat.realmofespionage.xyz'
  
 ====== Services ====== ====== Services ======
Line 212: Line 199:
  
   rm -R ~/'prosody-files-'*'.tar.gz' && sync   rm -R ~/'prosody-files-'*'.tar.gz' && sync
 +
 +====== Resources ======
 +
 +  * https://connect.xmpp.net/
 +  * https://inspect.xmpp.net/
 +  * https://observe.jabber.network/
 +
 +====== TODO ======
 +
 +  * https://prosody.im/doc/backups
  
/usr/local/www/wiki/data/attic/servers/linux/prosody.1757587393.txt.gz · Last modified: by 127.0.0.1

Except where otherwise noted, content on this wiki is licensed under the following license: CC0 1.0 Universal
CC0 1.0 Universal Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki