XMPP: differenze tra le versioni

Da EigenWiki.
Vai alla navigazione Vai alla ricerca
(Inseriti un po' di contenuti)
(sezionamento, gajim++)
Riga 1: Riga 1:
XMPP è un protocollo di chat federato, questo vuol dire che chiunque abbia un'istanza di un server XMPP può comunicare con il resto della rete anche se gli account di chat sono su server diversi.
'''XMPP''' è un protocollo di chat federato: questo vuol dire che chiunque abbia un'istanza di un server XMPP può comunicare con il resto dell'intera rete anche se gli account di chat sono su server diversi.  


Abbiamo installato [https://en.wikipedia.org/wiki/Prosody_(software) Prosody] sopra [[Zenzero]]
XMPP permette la messaggistica istantanea (chat) singola o a gruppi, ha una rubrica per i contatti, ed è tanto estensibile da permettere scambio di file, comunicazioni criptate, e molto altro ancora.


== Il nostro servizio XMPP ==
Abbiamo installato [https://en.wikipedia.org/wiki/Prosody_(software) Prosody] sopra [[Zenzero]].
Il server che abbiamo installato ha però 2 restrizioni importanti:  
Il server che abbiamo installato ha però 2 restrizioni importanti:  
* I client possono connettersi solo se supportano la cifratura SSL della connessione fra client e server
* I client possono connettersi solo se supportano la cifratura SSL della connessione fra client e server;
* I server (per la federazione) possono connettersi solo se supportano la cifratura della connessione fra server e server.
* I server (per la federazione) possono connettersi solo se supportano la cifratura della connessione fra server e server.
Queste limitazioni esistono perché siamo fermamente convinti che le comunicazioni debbano avvenire in modalità protetta.
Abbiamo scelto di inserire queste limitazioni perché siamo fermamente convintu che le comunicazioni debbano avvenire in modalità protetta.


Siccome il servizio è ancora in fase di sperimentazione non permettiamo ancora la registrazione 'in-band', se vuoi un'account scrivi a info[at]eigenlab[dot]org.
Siccome il servizio è ancora in fase di sperimentazione non permettiamo ancora la registrazione 'in-band', se vuoi un'account scrivi a <code>info[at]eigenlab[dot]org</code>.


=== Estensioni ===
Abbiamo installato alcuni moduli per implementare alcune XEP, qui una lista parziale ed in aggiornamento:
Abbiamo installato alcuni moduli per implementare alcune XEP, qui una lista parziale ed in aggiornamento:
* MUC [http://xmpp.org/extensions/xep-0045.html  XEP-0045] <code>conference.eigenlab.org</code> per le chat di gruppo.
* SMACKS [https://modules.prosody.im/mod_smacks.html XEP-0198] per riesumare una sessione interrotta per la caduta della connessione.
* MAM [https://modules.prosody.im/mod_mam.html XEP-0313] per l'archiviazione dei messaggi sul server fino ad una settimana così da poterli recuperare se sì è offline per un po'. Ogni utente può scegliere la sua configurazione per questo modulo.
* Carbons [https://modules.prosody.im/mod_carbons.html  XEP-0280] Per poter ricevere le conversazioni su tutti i dispositivi che supportano questa estensione. In questo modo è possibile chattare al pc e continuare poi sul telefono o sul portatile, come permettono di fare anche altri client di chat moderni.
* [https://modules.prosody.im/mod_csi.html CSI], [https://modules.prosody.im/mod_throttle_presence.html throttle presence] e [https://modules.prosody.im/mod_filter_chatstates.html filter_chatstates]. Una serie di moduli specifici per i dispositivi mobile, permettono di decidere se ricevere o meno le notifiche di presenza di un contatto o quelle tipo ''"il contatto sta scrivendo"'' quando il dispositivo è in tasca/in uno stato di basso consumo/ecc...


* MUC a.k.a. [http://xmpp.org/extensions/xep-0045.html  XEP-0045] <code>conference.eigenlab.org</code> per le chat di gruppo
== Guida ==
* SMACKS a.k.a. [https://modules.prosody.im/mod_smacks.html XEP-0198] Per il resume di una sessione interrotta per la caduta della connessione
Come si fa in generale a:
* MAM a.k.a. [https://modules.prosody.im/mod_mam.html XEP-0313] Per l'archiviazione dei messaggi sul server fino ad una settimana così da poterli recuperare se sì è offline per un po'. Il modulo è configurabile per utente
* cambiare la password?
* Carbons a.k.a. [https://modules.prosody.im/mod_carbons.html  XEP-0280] Per poter ricevere le conversazioni su tutti i device che supportano la XEP. In questo modo è possibile chattare al pc e continuare poi sul telefono o sul portatile come con altri client di chat moderni.
* trovare nuovi contatti / chatroom?
* CSI, Throttle_presence e filter_chatstarter a.k.a. [https://modules.prosody.im/mod_csi.html CSI], [https://modules.prosody.im/mod_throttle_presence.html throttle presence] e [https://modules.prosody.im/mod_filter_chatstates.html filter_chatstates] Una serie di moduli specifici per i dispositivi mobile, permettono di decidere se ricevere o meno le notifiche di presenza di un contatto o quelle di 'il contatto sta scrivendo' quando il dispositivo è in tasca/in uno stato di basso consumo/ecc...
* gestione sullo smartfono?


== Guida ==
=== Gajim ===
pasticcera mi sdubbi alquanto col tuo deplorevole ardore
[https://gajim.org/ Gajim] è il più completo client desktop per numero di plugin e di XEP recenti supportate.
 
Aprendolo per la prima volta devi configurare il tuo account dal menu <code>Modifica → account</code>. C'è sempre un account 'Local' ma non so a cosa serva. Tu aggiungi un nuovo account e metti l'ID Jabber seguito da <code>@eigenlab.org</code> e la password dell'utenza che ti sei fatta creare. Finito.
 
Ora ti resta solo da aggiungere in rubrica le persone con cui chattare: dal menu <code>Azioni → aggiungi un contatto</code> inserisci l'ID Jabber del tuo amico <code>pippo@eigenlab.org</code> per "chiedergli l'amicizia" e quando anche lui te l'avrà accordata potrete chattare.


=== Alcuni programmi che abbiamo provato ===
Se trascini un contatto sopra un'altro compare l'utilissima opzione "invia contatto di Beppe a Anna" (e anche una più criptica "rendi metacontatti". Mah.)
''‎[01:02:10] ‎kiba‎: FYI per ricevere i messaggi su tutti i dispositivi bisogna selezionare in gajim account->general->"receive conversation from other resources"''


* Gajim : Il più completo client desktop per numero di plugin e di XEP recenti supportate
Per ricevere i messaggi su tutti i dispositivi connessi allo stesso account bisogna selezionare <code>Account → Generale → Receive conversations from other resources</code>.
* Conversations : Il migliore client per Android per numero di XEP integrate
* Telepathy : Integrato in KDE manca di opzioni per la configurazione, supporta OTR ma non le carbon copy ed il message archiving
* Pidgin :
* XabberDev :


=== Sicurezza: OTR, PGP OMEMO===
=== Conversations===
Il migliore client per Android per numero di XEP integrate.
===Telepathy===
Integrato in KDE, manca di opzioni per la configurazione, supporta OTR ma non le carbon copy ed il message archiving.
===Pidgin===
Pidgin.
===XabberDev===
XabberDev.


Con [https://en.wikipedia.org/wiki/Off-the-Record_Messaging OTR] é quasi impossibile avere le conversazioni cifrate fra dispositivi diversi usati dallo stesso account mentre con [https://gajim.org/ Gajim] (desktop) e [https://conversations.im/ Conversations]  (Android) è possibile usare [https://conversations.im/omemo/ OMEMO], un nuovo protocollo di cifratura sviluppato per Signal che permette una cifratura indolore anche fra device diversi l'unica pecca è che ancora poco supportato dai client.  
== Sicurezza: OTR, PGP OMEMO==
Con [https://en.wikipedia.org/wiki/Off-the-Record_Messaging OTR] é quasi impossibile avere le conversazioni cifrate fra ''dispositivi diversi usati dallo stesso account'', mentre con [https://gajim.org/ Gajim] (desktop) e [https://conversations.im/ Conversations]  (Android) è possibile usare [https://conversations.im/omemo/ OMEMO], un nuovo protocollo di cifratura sviluppato per Signal che permette una cifratura indolore anche fra device diversi. L'unica pecca è che ancora poco supportato da altri client.  


Per poterlo usare in Gajim va installato un plugin dal menu interno al programma; alla prima connessione con un cliente che supporta omemo verrà richiesto se fidarsi della chiave con cui si è presentato, è buona norma verificare la chiave attraverso un mezzo diverso.  
Per poterlo usare in Gajim va installato un plugin dal menu interno al programma; alla prima connessione con un cliente che supporta omemo verrà richiesto se fidarsi della chiave con cui si è presentato, è buona norma verificare la chiave attraverso un mezzo diverso.  
Conversation lo supporta di default, anche qui bisogna verificare la chiave del contatto.
Conversation lo supporta di default, anche qui bisogna verificare la chiave del contatto.


Per poter ricevere i messaggi sia su Gajim che su Conversations usando OMEMO bisogna fidarsi delle proprie chiavi su entrambi i device, si può abilitare andando sul proprio profilo utente e confermando la chiave
Per poter ricevere i messaggi sia su Gajim che su Conversations usando OMEMO bisogna fidarsi delle proprie chiavi su entrambi i device, si può abilitare andando sul proprio profilo utente e confermando la chiave.





Versione delle 07:01, 2 dic 2016

XMPP è un protocollo di chat federato: questo vuol dire che chiunque abbia un'istanza di un server XMPP può comunicare con il resto dell'intera rete anche se gli account di chat sono su server diversi.

XMPP permette la messaggistica istantanea (chat) singola o a gruppi, ha una rubrica per i contatti, ed è tanto estensibile da permettere scambio di file, comunicazioni criptate, e molto altro ancora.

Il nostro servizio XMPP

Abbiamo installato Prosody sopra Zenzero. Il server che abbiamo installato ha però 2 restrizioni importanti:

  • I client possono connettersi solo se supportano la cifratura SSL della connessione fra client e server;
  • I server (per la federazione) possono connettersi solo se supportano la cifratura della connessione fra server e server.

Abbiamo scelto di inserire queste limitazioni perché siamo fermamente convintu che le comunicazioni debbano avvenire in modalità protetta.

Siccome il servizio è ancora in fase di sperimentazione non permettiamo ancora la registrazione 'in-band', se vuoi un'account scrivi a info[at]eigenlab[dot]org.

Estensioni

Abbiamo installato alcuni moduli per implementare alcune XEP, qui una lista parziale ed in aggiornamento:

  • MUC XEP-0045 conference.eigenlab.org per le chat di gruppo.
  • SMACKS XEP-0198 per riesumare una sessione interrotta per la caduta della connessione.
  • MAM XEP-0313 per l'archiviazione dei messaggi sul server fino ad una settimana così da poterli recuperare se sì è offline per un po'. Ogni utente può scegliere la sua configurazione per questo modulo.
  • Carbons XEP-0280 Per poter ricevere le conversazioni su tutti i dispositivi che supportano questa estensione. In questo modo è possibile chattare al pc e continuare poi sul telefono o sul portatile, come permettono di fare anche altri client di chat moderni.
  • CSI, throttle presence e filter_chatstates. Una serie di moduli specifici per i dispositivi mobile, permettono di decidere se ricevere o meno le notifiche di presenza di un contatto o quelle tipo "il contatto sta scrivendo" quando il dispositivo è in tasca/in uno stato di basso consumo/ecc...

Guida

Come si fa in generale a:

  • cambiare la password?
  • trovare nuovi contatti / chatroom?
  • gestione sullo smartfono?

Gajim

Gajim è il più completo client desktop per numero di plugin e di XEP recenti supportate.

Aprendolo per la prima volta devi configurare il tuo account dal menu Modifica → account. C'è sempre un account 'Local' ma non so a cosa serva. Tu aggiungi un nuovo account e metti l'ID Jabber seguito da @eigenlab.org e la password dell'utenza che ti sei fatta creare. Finito.

Ora ti resta solo da aggiungere in rubrica le persone con cui chattare: dal menu Azioni → aggiungi un contatto inserisci l'ID Jabber del tuo amico pippo@eigenlab.org per "chiedergli l'amicizia" e quando anche lui te l'avrà accordata potrete chattare.

Se trascini un contatto sopra un'altro compare l'utilissima opzione "invia contatto di Beppe a Anna" (e anche una più criptica "rendi metacontatti". Mah.)

Per ricevere i messaggi su tutti i dispositivi connessi allo stesso account bisogna selezionare Account → Generale → Receive conversations from other resources.

Conversations

Il migliore client per Android per numero di XEP integrate.

Telepathy

Integrato in KDE, manca di opzioni per la configurazione, supporta OTR ma non le carbon copy ed il message archiving.

Pidgin

Pidgin.

XabberDev

XabberDev.

Sicurezza: OTR, PGP OMEMO

Con OTR é quasi impossibile avere le conversazioni cifrate fra dispositivi diversi usati dallo stesso account, mentre con Gajim (desktop) e Conversations (Android) è possibile usare OMEMO, un nuovo protocollo di cifratura sviluppato per Signal che permette una cifratura indolore anche fra device diversi. L'unica pecca è che ancora poco supportato da altri client.

Per poterlo usare in Gajim va installato un plugin dal menu interno al programma; alla prima connessione con un cliente che supporta omemo verrà richiesto se fidarsi della chiave con cui si è presentato, è buona norma verificare la chiave attraverso un mezzo diverso. Conversation lo supporta di default, anche qui bisogna verificare la chiave del contatto.

Per poter ricevere i messaggi sia su Gajim che su Conversations usando OMEMO bisogna fidarsi delle proprie chiavi su entrambi i device, si può abilitare andando sul proprio profilo utente e confermando la chiave.