====== Comandi prosodyctl con esempi ======
===== shell prosodyctl =====
Lanciare una shell:
# prosodyctl shell
* **Eliminare nodo pubsub** (il segno ">" all'inizio è importante ma anche pericoloso, poiché vi lascia fare qualsiasi cosa!):
''>prosody.hosts["pubsub.example.tld"].modules.pubsub.service:delete("blog", true)''
* **Eliminare TUTTI i nodi pubsub**:
''>local service = prosody.hosts["pubsub.example.tld"].modules.pubsub.service; for node in pairs(select(2, assert(service:get_nodes(true)))) do service:delete(node, true); end''
* **Controlla le sottoscrizioni ai nodi per utente**:
''>prosody.hosts["pubsub.example.tld"].modules.pubsub.service.subscriptions["user@example.tld"]''
* **Cambiare affiliazione su un nodo pubsub** (rendere un utente proprietario):
''>prosody.hosts["pubsub.example.tld"].modules.pubsub.service:set_affiliation("blog",true,"user@example.tld","owner")''
* **Eliminare sottoscrizione ad un nodo**:
''>prosody.hosts["pubsub.example.tld"].modules.pubsub.service:remove_subscription("blog",true,"user@example.tld")
''
* **Sottoscrivere un nodo**:
''>prosody.hosts["pubsub.example.tld"].modules.pubsub.service:add_subscription("blog",true,"user@example.tld")
''
===== comandi prosodyctl =====
* **Chiedere l'aiuto in linea**:
''# prosodyctl shell help''
* **Listare gli utenti registrati**:
''# prosodyctl shell user list example.tld''
* **Listare le stanze esistenti**:
''# prosodyctl shell muc list [component name]''
* **Attivare un componente**:
''# prosodyctl shell host activate some.component.example.tld''
* **Generare un invito**: crea un nuovo invito usando i comandi "ad-hoc" nel tuo client XMPP (ove disponibili), mentre sei connesso con account admin, oppure usa il seguente comando
''# prosodyctl mod_invites generate example.tld''
* **Importare automaticamente i certificati**: prosodyctl può importare e attivare i certificati in un comando singolo:
''# prosodyctl --root cert import HOSTNAME /path/to/certificates''
Certificati e rispettive chiavi saranno copiati in ''/etc/prosody/certs'' e successivamente la configurazione di prosody verrà ricaricata automaticamente. Il parametro ''--root'' permetterà al comando di scrivere in percorsi normalmente non accessibili all'utente, come è ad esempio ''/etc/prosody''. Si possono indicare sia host names che path multipli, a patto che gli hostname vengano indicati prima dei path.
Questo comando può essere inserito in ''cron'' o passato come "callback" per automatizzare il rinnovo dei certificati ad esempio con ''certbot'' o altri client per "Let's Encrypt"
* **Importare tutti i certificati**:
''# prosodyctl --root cert import /etc/letsencrypt/live''
===== Reimpostare password dimenticata =====
# prosodyctl install --server=https://modules.prosody.im/rocks/ mod_password_reset
Ricaricare la configurazione prosody dopo aver installato il modulo e poi usare i comandi ad-hoc per generare un link di reset password per uno specifico JID.
----
Il presente testo è la traduzione in Italiano del testo che trovate nel blog [[https://blog.woodpeckersnest.space/2024/09/14/roughnecks/prosodyctl-commands-examples/|An average guy's IT (mis)adventures]]
~~NOTOC~~