SlideShare a Scribd company logo
Jabber
Sistema di messaggistica istantanea


             Rosario Esposito1
         Francesco Maria Taurino1,2
             Gennaro Tortone1


                INFN - Napoli1
              INFM - UDR Napoli2



        Workshop CCR 2003 – Paestum
Messaggi istantanei

I sistemi di messaggistica istantanea (IM) permettono agli
utenti di determinare se un altro utente, amico o collega,
e' “on line”, e di scambiare con questo messaggi o file
istantaneamente.


Combinano quindi l'urgenza di una telefonata con le
funzionalita' della posta elettronica.



                         CCR 2003 – Paestum               2
Servizi di IM

Molti dei sistemi IM piu' popolari forniscono una vasta
serie di servizi:
   Instant messaging – spedizione e ricezione di messaggi
    istantanei
   Chat – creazione di chat room
   File – scambio di file fra gli utenti
   Talk – comunicazione vocale su Internet



                           CCR 2003 – Paestum                3
Jabber (1/2)

   Jabber e' una piattaforma indipendente              di
    messaggisitica basata su XML e con licenza GPL
   Jabber e' un sistema distribuito, in cui server Jabber
    indipendenti accettano messaggi dai client e li
    trasferiscono ad altri server
   Alcuni server Jabber possono diventare gateway
    verso altri sistemi IM (ICQ, AOL, M$ Messenger)



                         CCR 2003 – Paestum              4
Jabber (2/2)

Una tipica architettura Jabber consiste di 3
componenti

      Client Jabber
      Server Jabber
      Transports


                       CCR 2003 – Paestum      5
Client Jabber

   Un client puo' essere un qualunque applicativo
    capace di comunicazioni TCP/IP
   I client comunicano direttamente con i server
    scambiando messaggi in formato XML
   Sono disponibili client evoluti e ricchi di features
    per tutti i piu' diffusi sistemi operativi



                        CCR 2003 – Paestum             6
Server Jabber

   Permette la registrazione e l'autenticazione degli
    utenti
   Conserva i messaggi per gli utenti off-line
   Conserva le contact list e i settaggi degli utenti
    in oggetti XML chiamati “roster”
   Utilizza il DNS per localizzare gli altri server
    Jabber, oppure i “Transports” per i server di altri
    sistemi IM
                        CCR 2003 – Paestum            7
Jabber Transports

   I “Transports” di Jabber permettono le
    comunicazioni      verso server    non-jabber,
    permettendo agli utenti di ricevere e spedire
    messaggi da e verso i sistemi IM proprietari,
    come ICQ, Yahoo, AOL
   Trasformano i messaggi da XML nei formati
    proprietari e viceversa


                      CCR 2003 – Paestum         8
Jabber: Architettura                      (1/2)



       Ricalca la struttura del sistema di posta elettronica
            jabber.mydomain.it                                jabber.otherdomain.org




                                    INTERNET

me@jabber.mydomain.it                                         friend@jabber.otherdomain.org


                                 CCR 2003 – Paestum                                    9
Jabber: Architettura                     (2/2)



   L'utente Me@jabber.mydomain.it invia un IM a
    friend@jabber.otherdomain.org
   Il messaggio e' gestito dal server
    jabber.mydomain.it
   jabber.mydomain.it apre una connessione verso il
    server jabber.otherdomain.org e gli consegna il
    messaggio
   jabber.otherdomain.org consegna il messaggio
    all'utente friend@jabber.otherdomain.org
                         CCR 2003 – Paestum           10
Jabber ID

   Gli ID di Jabber sono molto simili agli indirizzi di
    posta elettronica e sono espressi nel formato
        user@jabber.mydomain.it
   Gli utenti dei sistemi IM non jabber possono essere
    raggiunti anteponendo il transport al nome del
    server
    Esempio:
        123456@ICQ.jabber.mydomain.it


                          CCR 2003 – Paestum               11
Presenza

   Gli utenti decidono la loro “presenza” sulla rete.
    Possono decidere se essere disponibili, occupati,
    lontani dal pc, invisibili
   E' possibile permettere o meno a determinati
    utenti di conoscere il proprio stato sulla rete
   E' possibile personalizzare lo stato della “presenza”
    con informazioni come la localita', l'attiviata'
    attuale, la disponibilita' alle chat


                         CCR 2003 – Paestum                 12
Roster

   I roster, che alcuni IM chiamano anche “buddy list”,
    sono le liste degli utenti e delle autorizzazioni che
    risiedono sui server Jabber
   Un utente puo' accedere al proprio roster da tutti
    i client
   Vengono salvati in file XML o in database SQL, ma
    resi disponibili SOLTANTO in XML



                         CCR 2003 – Paestum              13
Chat room

   Con alcune implementazioni di server Jabber e'
    possibile creare delle chat room
   Sono “stanze” simili ai canali IRC, in cui i messaggi
    fra gli utenti sono resi immediatamente visibili a
    tutti i presenti nella “stanza”
   E' una opzione disponibile per alcuni server
   Richiedono poca banda in piu' rispetto alle
    connessioni uno a uno

                          CCR 2003 – Paestum                14
Sicurezza

   Le connessioni verso i server Jabber sono
    tipicamente in chiaro
   E' possibile utilizzare SSL
   Le password possono essere spedite in chiaro
    oppure utilizzare MD5 o SHA1
   La connessione sempre attiva garantisce la sessione
    corrente con il server


                           CCR 2003 – Paestum         15
Il protocollo Jabber

   XMPP : Extensible Messaging and Presence Protocol
   E' una delle proposte fatte all' IETF per la
    standardizzazione dei protocolli di IM
   Definisce regole sugli stream XML, i tipi di dati, le
    registrazioni, la gestione dei roster, i trasferimenti di
    file, le chat multi user, le comunicazioni server to
    server, la presenza



                          CCR 2003 – Paestum               16
JabberD

   E' la prima implementazione open source di un
    server Jabber
   Le prime versioni risalgono al gennaio 1999
   La versione attuale 1.4.2 e' quella di riferimento
   La versione 2 e' attualmente in alfa
   Features aggiuntive, come chat, user directory,
    transports, NON fanno parte dello sviluppo del
    server

                         CCR 2003 – Paestum              17
JabberD - Requirements

   Linux, *BSD, AIX, Solaris, Mac OSX, Windows
   Per 500 utenti connessi contemporaneamente
    e' sufficiente un PII 400 con 512 MB di ram
   Una connessione tipica richiede 15 bps, quindi
    1000 utenti = 15 kbps
   Su router/firewall : porte 5222 e 5223 per le
    connessioni client to server e 5269 per quelle
    server to server

                        CCR 2003 – Paestum           18
JabberD – Add on

   Mu-conference – Multi User conference
   Jud – Jabberd User Directory (permette di cercare
    gli utenti registrati su un server)
   JIT – Jabber ICQ Transport
   MSN-tng – MSN Transport
   Sono disponibili altri transport per gli IM piu'
    diffusi, ma sono ancora molto instabili


                         CCR 2003 – Paestum             19
Alcuni Client

   Gabber – http://gabber.sf.net
   Gaim (multiprotocol) – http://gaim.sf.net
   Kopete (multiprotocol) – http://kopete.kde.org
   PSI (multiplatform) – http://psi.affinix.com
   TkAbber (multiplatform) – http://tkabber.jabber.ru
   Exodus (windows) – http://exodus.jabberstudio.org
   Yabber (windows) – http://www.yabber.org


                         CCR 2003 – Paestum          20
Screenshot


       Exodus



                     Kopete
                          JABBER

                            ICQ

                            MSN


             CCR 2003 – Paestum    21
Altre applicazioni di Jabber

   La piattaforma Jabber e' molto flessibile ed e'
    utilizzabile in ambienti diversi dall'IM
   E' possibile creare applicazioni che si registrano sui
    server Jabber e utilizzano questo protocollo basato
    su XML per scambiarsi messaggi relativi al loro stato
   Esempio : controllare lo stato di un apparato che
    invia messaggi di presenza verso un server Jabber



                         CCR 2003 – Paestum             22
Non solo PHONE

   L'utility phone del VMS permetteva di raggiungere
    “istantaneamente” i nostri colleghi delle altre sedi
   Jabber fornisce questa funzionalita', e non e' legato
    al login su macchine centrali
   Permette di “esserci”, di essere raggiungibili anche
    se si e' fuori in missione, magari aggiungendo al
    nostro stato di presenza la localita' in cui ci
    troviamo


                         CCR 2003 – Paestum                23
jabber.na.infn.it (1/2)

   E' un jabber server con iscrizione aperta, ed e' stato
    testato con diversi client su diverse piattaforme
   Attualmente e' configurato per utilizzare le
    connessioni in chiaro, ma verra' a breve reinstallato
    per utilizzare SSL
   Sono stati integrati gli add-on per la user directory
    e la multi-user conference



                         CCR 2003 – Paestum              24
jabber.na.infn.it (2/2)

   Potrebbe essere un utile strumento di
    collaborazione, con la possibilita' di conoscere lo
    stato dei nostri colleghi e di scambiare con loro
    messaggi, porzioni di codice, file, richieste e/o
    consigli, con una efficienza a volte superiore alla
    posta elettronica




                         CCR 2003 – Paestum               25

More Related Content

What's hot

5 Trasporto Affidabile Teoria
5 Trasporto Affidabile Teoria5 Trasporto Affidabile Teoria
5 Trasporto Affidabile TeoriaMajong DevJfu
 
11 Evoluzione
11 Evoluzione11 Evoluzione
11 Evoluzioneacapone
 
Wan data link protocols
Wan data link protocolsWan data link protocols
Wan data link protocolss_Morpheus
 
Le reti - Come il nostro PC è connesso con la Internet.
Le reti - Come il nostro PC è connesso con la Internet.Le reti - Come il nostro PC è connesso con la Internet.
Le reti - Come il nostro PC è connesso con la Internet.
Giovanni Cappellini
 
MPLS nelle (grandi) reti Enterprise
MPLS nelle (grandi) reti EnterpriseMPLS nelle (grandi) reti Enterprise
MPLS nelle (grandi) reti Enterprise
festival ICT 2016
 
Meccanismi per la cooperazione e la prelazione dell'I/O nel kernel Linux
Meccanismi per la cooperazione e la prelazione dell'I/O nel kernel LinuxMeccanismi per la cooperazione e la prelazione dell'I/O nel kernel Linux
Meccanismi per la cooperazione e la prelazione dell'I/O nel kernel LinuxArianna Avanzini
 
Sistemi distribuiti
Sistemi distribuitiSistemi distribuiti
Sistemi distribuiti
Valeria Gennari
 
5 Protocolli Trasporto Parte2
5 Protocolli Trasporto Parte25 Protocolli Trasporto Parte2
5 Protocolli Trasporto Parte2Majong DevJfu
 
10 Reti Accesso
10 Reti Accesso10 Reti Accesso
10 Reti Accessoacapone
 

What's hot (11)

5 Trasporto Affidabile Teoria
5 Trasporto Affidabile Teoria5 Trasporto Affidabile Teoria
5 Trasporto Affidabile Teoria
 
11 Evoluzione
11 Evoluzione11 Evoluzione
11 Evoluzione
 
Introduzione
IntroduzioneIntroduzione
Introduzione
 
Wan data link protocols
Wan data link protocolsWan data link protocols
Wan data link protocols
 
Le reti - Come il nostro PC è connesso con la Internet.
Le reti - Come il nostro PC è connesso con la Internet.Le reti - Come il nostro PC è connesso con la Internet.
Le reti - Come il nostro PC è connesso con la Internet.
 
MPLS nelle (grandi) reti Enterprise
MPLS nelle (grandi) reti EnterpriseMPLS nelle (grandi) reti Enterprise
MPLS nelle (grandi) reti Enterprise
 
Meccanismi per la cooperazione e la prelazione dell'I/O nel kernel Linux
Meccanismi per la cooperazione e la prelazione dell'I/O nel kernel LinuxMeccanismi per la cooperazione e la prelazione dell'I/O nel kernel Linux
Meccanismi per la cooperazione e la prelazione dell'I/O nel kernel Linux
 
Sistemi distribuiti
Sistemi distribuitiSistemi distribuiti
Sistemi distribuiti
 
DataLink LAN
DataLink LANDataLink LAN
DataLink LAN
 
5 Protocolli Trasporto Parte2
5 Protocolli Trasporto Parte25 Protocolli Trasporto Parte2
5 Protocolli Trasporto Parte2
 
10 Reti Accesso
10 Reti Accesso10 Reti Accesso
10 Reti Accesso
 

Viewers also liked

APT per RPM
APT per RPMAPT per RPM
APT per RPM
Francesco Taurino
 
Design and implementation of a reliable and cost-effective cloud computing in...
Design and implementation of a reliable and cost-effective cloud computing in...Design and implementation of a reliable and cost-effective cloud computing in...
Design and implementation of a reliable and cost-effective cloud computing in...
Francesco Taurino
 
AAI Locale
AAI LocaleAAI Locale
AAI Locale
Francesco Taurino
 
Unattended
UnattendedUnattended
Unattended
Francesco Taurino
 
Open Security
Open SecurityOpen Security
Open Security
Francesco Taurino
 
Proposte (informatiche) per il comune di Santa Maria Capua Vetere
Proposte (informatiche) per il comune di Santa Maria Capua VetereProposte (informatiche) per il comune di Santa Maria Capua Vetere
Proposte (informatiche) per il comune di Santa Maria Capua VetereFrancesco Taurino
 
Excelsior 2009
Excelsior 2009Excelsior 2009
Excelsior 2009
Francesco Taurino
 
ClearOS - Linux Small Business Server
ClearOS - Linux Small Business ServerClearOS - Linux Small Business Server
ClearOS - Linux Small Business Server
Francesco Taurino
 

Viewers also liked (9)

APT per RPM
APT per RPMAPT per RPM
APT per RPM
 
Design and implementation of a reliable and cost-effective cloud computing in...
Design and implementation of a reliable and cost-effective cloud computing in...Design and implementation of a reliable and cost-effective cloud computing in...
Design and implementation of a reliable and cost-effective cloud computing in...
 
AAI Locale
AAI LocaleAAI Locale
AAI Locale
 
Unattended
UnattendedUnattended
Unattended
 
Open Security
Open SecurityOpen Security
Open Security
 
Proposte (informatiche) per il comune di Santa Maria Capua Vetere
Proposte (informatiche) per il comune di Santa Maria Capua VetereProposte (informatiche) per il comune di Santa Maria Capua Vetere
Proposte (informatiche) per il comune di Santa Maria Capua Vetere
 
Excelsior 2009
Excelsior 2009Excelsior 2009
Excelsior 2009
 
AAI Nazionale
AAI NazionaleAAI Nazionale
AAI Nazionale
 
ClearOS - Linux Small Business Server
ClearOS - Linux Small Business ServerClearOS - Linux Small Business Server
ClearOS - Linux Small Business Server
 

Similar to Jabber

Introduzione ai Web Services
Introduzione ai Web ServicesIntroduzione ai Web Services
Introduzione ai Web Services
Marco Livraghi
 
Confronto fra web services framework (open source)
Confronto fra web services framework (open source)Confronto fra web services framework (open source)
Confronto fra web services framework (open source)Alberto Lagna
 
Presentazione Wap Vs I Mode
Presentazione Wap Vs I ModePresentazione Wap Vs I Mode
Presentazione Wap Vs I Mode
masso87
 
Posta Elettronica E Www
Posta Elettronica E WwwPosta Elettronica E Www
Posta Elettronica E Wwwbity1988
 
J2Me Il Micro Mondo Java
J2Me Il Micro Mondo JavaJ2Me Il Micro Mondo Java
J2Me Il Micro Mondo Java
Antonio Terreno
 
Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
Claudio Cardinali
 
Reti di computer
Reti di computerReti di computer
Reti di computer
TaxiUber
 
Elaborato WebRTC
Elaborato WebRTCElaborato WebRTC
Elaborato WebRTC
Marco Vaiano
 
Il web e la sua evoluzione
Il web e la sua evoluzioneIl web e la sua evoluzione
Il web e la sua evoluzione
Nino Lopez
 
Introduzione ai protocolli tcp/ip ed al Domain Name System
Introduzione ai protocolli tcp/ip ed al Domain Name SystemIntroduzione ai protocolli tcp/ip ed al Domain Name System
Introduzione ai protocolli tcp/ip ed al Domain Name System
RoBisc
 
Aspetto sociale del p2p
Aspetto sociale del p2pAspetto sociale del p2p
Aspetto sociale del p2p
Gregorio Marchi
 
Web services
Web servicesWeb services
Web services
Franco Morelli
 
Dot net framework 2
Dot net framework 2Dot net framework 2
Dot net framework 2
Felice Pescatore
 
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
Marcello Marino
 
Networking Hand Vocabulary Book
Networking Hand Vocabulary BookNetworking Hand Vocabulary Book
Networking Hand Vocabulary Book
Luca Matteo Ruberto
 
Network essentials
Network essentialsNetwork essentials
Network essentials
Alkemy S.p.A. Milan, Italy
 
Sistemi Middleware - Communications
Sistemi Middleware - CommunicationsSistemi Middleware - Communications
Sistemi Middleware - Communications
Federico Barocci
 

Similar to Jabber (20)

Introduzione ai Web Services
Introduzione ai Web ServicesIntroduzione ai Web Services
Introduzione ai Web Services
 
Confronto fra web services framework (open source)
Confronto fra web services framework (open source)Confronto fra web services framework (open source)
Confronto fra web services framework (open source)
 
Presentazione Wap Vs I Mode
Presentazione Wap Vs I ModePresentazione Wap Vs I Mode
Presentazione Wap Vs I Mode
 
Posta Elettronica E Www
Posta Elettronica E WwwPosta Elettronica E Www
Posta Elettronica E Www
 
J2Me Il Micro Mondo Java
J2Me Il Micro Mondo JavaJ2Me Il Micro Mondo Java
J2Me Il Micro Mondo Java
 
$Rzgejzw
$Rzgejzw$Rzgejzw
$Rzgejzw
 
Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
Server di posta aziendale su protocollo IMAP, antispam, antivirus, webmail, g...
 
Corso web services
Corso web servicesCorso web services
Corso web services
 
Reti di computer
Reti di computerReti di computer
Reti di computer
 
Elaborato WebRTC
Elaborato WebRTCElaborato WebRTC
Elaborato WebRTC
 
Il web e la sua evoluzione
Il web e la sua evoluzioneIl web e la sua evoluzione
Il web e la sua evoluzione
 
Introduzione ai protocolli tcp/ip ed al Domain Name System
Introduzione ai protocolli tcp/ip ed al Domain Name SystemIntroduzione ai protocolli tcp/ip ed al Domain Name System
Introduzione ai protocolli tcp/ip ed al Domain Name System
 
Sip
SipSip
Sip
 
Aspetto sociale del p2p
Aspetto sociale del p2pAspetto sociale del p2p
Aspetto sociale del p2p
 
Web services
Web servicesWeb services
Web services
 
Dot net framework 2
Dot net framework 2Dot net framework 2
Dot net framework 2
 
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
 
Networking Hand Vocabulary Book
Networking Hand Vocabulary BookNetworking Hand Vocabulary Book
Networking Hand Vocabulary Book
 
Network essentials
Network essentialsNetwork essentials
Network essentials
 
Sistemi Middleware - Communications
Sistemi Middleware - CommunicationsSistemi Middleware - Communications
Sistemi Middleware - Communications
 

More from Francesco Taurino

La mia nuvola in azienda o a casa
La mia nuvola in azienda o a casaLa mia nuvola in azienda o a casa
La mia nuvola in azienda o a casa
Francesco Taurino
 
Da 0 all'open per PA e PMI
Da 0 all'open per PA e PMIDa 0 all'open per PA e PMI
Da 0 all'open per PA e PMI
Francesco Taurino
 
LPPP - Linux Per le PMI (piccole e medie imprese) e la PA (Pubblica Amministr...
LPPP - Linux Per le PMI (piccole e medie imprese) e la PA (Pubblica Amministr...LPPP - Linux Per le PMI (piccole e medie imprese) e la PA (Pubblica Amministr...
LPPP - Linux Per le PMI (piccole e medie imprese) e la PA (Pubblica Amministr...
Francesco Taurino
 
Francesco M. Taurino - Relazione tecnica e pubblicazioni
Francesco M. Taurino - Relazione tecnica e pubblicazioniFrancesco M. Taurino - Relazione tecnica e pubblicazioni
Francesco M. Taurino - Relazione tecnica e pubblicazioni
Francesco Taurino
 
Presentazione del nuovo sito web del Comune di Santa Maria Capua Vetere
Presentazione del nuovo sito web del Comune di Santa Maria Capua VeterePresentazione del nuovo sito web del Comune di Santa Maria Capua Vetere
Presentazione del nuovo sito web del Comune di Santa Maria Capua Vetere
Francesco Taurino
 
Open Source
Open SourceOpen Source
Open Source
Francesco Taurino
 
Applicazioni open source
Applicazioni open sourceApplicazioni open source
Applicazioni open source
Francesco Taurino
 
Una rete aziendale con Linux
Una rete aziendale con LinuxUna rete aziendale con Linux
Una rete aziendale con Linux
Francesco Taurino
 
Linux
LinuxLinux
AAI
AAI AAI
Xen e OpenVirtuozzo
Xen e OpenVirtuozzoXen e OpenVirtuozzo
Xen e OpenVirtuozzo
Francesco Taurino
 
Back to Mainframe
Back to MainframeBack to Mainframe
Back to Mainframe
Francesco Taurino
 
NetDisco
NetDiscoNetDisco
LTSP
LTSPLTSP
Nessus
NessusNessus
SysMan
SysManSysMan
Condor
CondorCondor
Redhat RHCE Certification
Redhat RHCE CertificationRedhat RHCE Certification
Redhat RHCE Certification
Francesco Taurino
 
PfSense Cluster
PfSense ClusterPfSense Cluster
PfSense Cluster
Francesco Taurino
 
Monitoraggio ambientale a basso costo - 2
Monitoraggio ambientale a basso costo - 2Monitoraggio ambientale a basso costo - 2
Monitoraggio ambientale a basso costo - 2
Francesco Taurino
 

More from Francesco Taurino (20)

La mia nuvola in azienda o a casa
La mia nuvola in azienda o a casaLa mia nuvola in azienda o a casa
La mia nuvola in azienda o a casa
 
Da 0 all'open per PA e PMI
Da 0 all'open per PA e PMIDa 0 all'open per PA e PMI
Da 0 all'open per PA e PMI
 
LPPP - Linux Per le PMI (piccole e medie imprese) e la PA (Pubblica Amministr...
LPPP - Linux Per le PMI (piccole e medie imprese) e la PA (Pubblica Amministr...LPPP - Linux Per le PMI (piccole e medie imprese) e la PA (Pubblica Amministr...
LPPP - Linux Per le PMI (piccole e medie imprese) e la PA (Pubblica Amministr...
 
Francesco M. Taurino - Relazione tecnica e pubblicazioni
Francesco M. Taurino - Relazione tecnica e pubblicazioniFrancesco M. Taurino - Relazione tecnica e pubblicazioni
Francesco M. Taurino - Relazione tecnica e pubblicazioni
 
Presentazione del nuovo sito web del Comune di Santa Maria Capua Vetere
Presentazione del nuovo sito web del Comune di Santa Maria Capua VeterePresentazione del nuovo sito web del Comune di Santa Maria Capua Vetere
Presentazione del nuovo sito web del Comune di Santa Maria Capua Vetere
 
Open Source
Open SourceOpen Source
Open Source
 
Applicazioni open source
Applicazioni open sourceApplicazioni open source
Applicazioni open source
 
Una rete aziendale con Linux
Una rete aziendale con LinuxUna rete aziendale con Linux
Una rete aziendale con Linux
 
Linux
LinuxLinux
Linux
 
AAI
AAI AAI
AAI
 
Xen e OpenVirtuozzo
Xen e OpenVirtuozzoXen e OpenVirtuozzo
Xen e OpenVirtuozzo
 
Back to Mainframe
Back to MainframeBack to Mainframe
Back to Mainframe
 
NetDisco
NetDiscoNetDisco
NetDisco
 
LTSP
LTSPLTSP
LTSP
 
Nessus
NessusNessus
Nessus
 
SysMan
SysManSysMan
SysMan
 
Condor
CondorCondor
Condor
 
Redhat RHCE Certification
Redhat RHCE CertificationRedhat RHCE Certification
Redhat RHCE Certification
 
PfSense Cluster
PfSense ClusterPfSense Cluster
PfSense Cluster
 
Monitoraggio ambientale a basso costo - 2
Monitoraggio ambientale a basso costo - 2Monitoraggio ambientale a basso costo - 2
Monitoraggio ambientale a basso costo - 2
 

Jabber

  • 1. Jabber Sistema di messaggistica istantanea Rosario Esposito1 Francesco Maria Taurino1,2 Gennaro Tortone1 INFN - Napoli1 INFM - UDR Napoli2 Workshop CCR 2003 – Paestum
  • 2. Messaggi istantanei I sistemi di messaggistica istantanea (IM) permettono agli utenti di determinare se un altro utente, amico o collega, e' “on line”, e di scambiare con questo messaggi o file istantaneamente. Combinano quindi l'urgenza di una telefonata con le funzionalita' della posta elettronica. CCR 2003 – Paestum 2
  • 3. Servizi di IM Molti dei sistemi IM piu' popolari forniscono una vasta serie di servizi:  Instant messaging – spedizione e ricezione di messaggi istantanei  Chat – creazione di chat room  File – scambio di file fra gli utenti  Talk – comunicazione vocale su Internet CCR 2003 – Paestum 3
  • 4. Jabber (1/2)  Jabber e' una piattaforma indipendente di messaggisitica basata su XML e con licenza GPL  Jabber e' un sistema distribuito, in cui server Jabber indipendenti accettano messaggi dai client e li trasferiscono ad altri server  Alcuni server Jabber possono diventare gateway verso altri sistemi IM (ICQ, AOL, M$ Messenger) CCR 2003 – Paestum 4
  • 5. Jabber (2/2) Una tipica architettura Jabber consiste di 3 componenti  Client Jabber  Server Jabber  Transports CCR 2003 – Paestum 5
  • 6. Client Jabber  Un client puo' essere un qualunque applicativo capace di comunicazioni TCP/IP  I client comunicano direttamente con i server scambiando messaggi in formato XML  Sono disponibili client evoluti e ricchi di features per tutti i piu' diffusi sistemi operativi CCR 2003 – Paestum 6
  • 7. Server Jabber  Permette la registrazione e l'autenticazione degli utenti  Conserva i messaggi per gli utenti off-line  Conserva le contact list e i settaggi degli utenti in oggetti XML chiamati “roster”  Utilizza il DNS per localizzare gli altri server Jabber, oppure i “Transports” per i server di altri sistemi IM CCR 2003 – Paestum 7
  • 8. Jabber Transports  I “Transports” di Jabber permettono le comunicazioni verso server non-jabber, permettendo agli utenti di ricevere e spedire messaggi da e verso i sistemi IM proprietari, come ICQ, Yahoo, AOL  Trasformano i messaggi da XML nei formati proprietari e viceversa CCR 2003 – Paestum 8
  • 9. Jabber: Architettura (1/2) Ricalca la struttura del sistema di posta elettronica jabber.mydomain.it jabber.otherdomain.org INTERNET me@jabber.mydomain.it friend@jabber.otherdomain.org CCR 2003 – Paestum 9
  • 10. Jabber: Architettura (2/2)  L'utente Me@jabber.mydomain.it invia un IM a friend@jabber.otherdomain.org  Il messaggio e' gestito dal server jabber.mydomain.it  jabber.mydomain.it apre una connessione verso il server jabber.otherdomain.org e gli consegna il messaggio  jabber.otherdomain.org consegna il messaggio all'utente friend@jabber.otherdomain.org CCR 2003 – Paestum 10
  • 11. Jabber ID  Gli ID di Jabber sono molto simili agli indirizzi di posta elettronica e sono espressi nel formato user@jabber.mydomain.it  Gli utenti dei sistemi IM non jabber possono essere raggiunti anteponendo il transport al nome del server Esempio: 123456@ICQ.jabber.mydomain.it CCR 2003 – Paestum 11
  • 12. Presenza  Gli utenti decidono la loro “presenza” sulla rete. Possono decidere se essere disponibili, occupati, lontani dal pc, invisibili  E' possibile permettere o meno a determinati utenti di conoscere il proprio stato sulla rete  E' possibile personalizzare lo stato della “presenza” con informazioni come la localita', l'attiviata' attuale, la disponibilita' alle chat CCR 2003 – Paestum 12
  • 13. Roster  I roster, che alcuni IM chiamano anche “buddy list”, sono le liste degli utenti e delle autorizzazioni che risiedono sui server Jabber  Un utente puo' accedere al proprio roster da tutti i client  Vengono salvati in file XML o in database SQL, ma resi disponibili SOLTANTO in XML CCR 2003 – Paestum 13
  • 14. Chat room  Con alcune implementazioni di server Jabber e' possibile creare delle chat room  Sono “stanze” simili ai canali IRC, in cui i messaggi fra gli utenti sono resi immediatamente visibili a tutti i presenti nella “stanza”  E' una opzione disponibile per alcuni server  Richiedono poca banda in piu' rispetto alle connessioni uno a uno CCR 2003 – Paestum 14
  • 15. Sicurezza  Le connessioni verso i server Jabber sono tipicamente in chiaro  E' possibile utilizzare SSL  Le password possono essere spedite in chiaro oppure utilizzare MD5 o SHA1  La connessione sempre attiva garantisce la sessione corrente con il server CCR 2003 – Paestum 15
  • 16. Il protocollo Jabber  XMPP : Extensible Messaging and Presence Protocol  E' una delle proposte fatte all' IETF per la standardizzazione dei protocolli di IM  Definisce regole sugli stream XML, i tipi di dati, le registrazioni, la gestione dei roster, i trasferimenti di file, le chat multi user, le comunicazioni server to server, la presenza CCR 2003 – Paestum 16
  • 17. JabberD  E' la prima implementazione open source di un server Jabber  Le prime versioni risalgono al gennaio 1999  La versione attuale 1.4.2 e' quella di riferimento  La versione 2 e' attualmente in alfa  Features aggiuntive, come chat, user directory, transports, NON fanno parte dello sviluppo del server CCR 2003 – Paestum 17
  • 18. JabberD - Requirements  Linux, *BSD, AIX, Solaris, Mac OSX, Windows  Per 500 utenti connessi contemporaneamente e' sufficiente un PII 400 con 512 MB di ram  Una connessione tipica richiede 15 bps, quindi 1000 utenti = 15 kbps  Su router/firewall : porte 5222 e 5223 per le connessioni client to server e 5269 per quelle server to server CCR 2003 – Paestum 18
  • 19. JabberD – Add on  Mu-conference – Multi User conference  Jud – Jabberd User Directory (permette di cercare gli utenti registrati su un server)  JIT – Jabber ICQ Transport  MSN-tng – MSN Transport  Sono disponibili altri transport per gli IM piu' diffusi, ma sono ancora molto instabili CCR 2003 – Paestum 19
  • 20. Alcuni Client  Gabber – http://gabber.sf.net  Gaim (multiprotocol) – http://gaim.sf.net  Kopete (multiprotocol) – http://kopete.kde.org  PSI (multiplatform) – http://psi.affinix.com  TkAbber (multiplatform) – http://tkabber.jabber.ru  Exodus (windows) – http://exodus.jabberstudio.org  Yabber (windows) – http://www.yabber.org CCR 2003 – Paestum 20
  • 21. Screenshot Exodus Kopete JABBER ICQ MSN CCR 2003 – Paestum 21
  • 22. Altre applicazioni di Jabber  La piattaforma Jabber e' molto flessibile ed e' utilizzabile in ambienti diversi dall'IM  E' possibile creare applicazioni che si registrano sui server Jabber e utilizzano questo protocollo basato su XML per scambiarsi messaggi relativi al loro stato  Esempio : controllare lo stato di un apparato che invia messaggi di presenza verso un server Jabber CCR 2003 – Paestum 22
  • 23. Non solo PHONE  L'utility phone del VMS permetteva di raggiungere “istantaneamente” i nostri colleghi delle altre sedi  Jabber fornisce questa funzionalita', e non e' legato al login su macchine centrali  Permette di “esserci”, di essere raggiungibili anche se si e' fuori in missione, magari aggiungendo al nostro stato di presenza la localita' in cui ci troviamo CCR 2003 – Paestum 23
  • 24. jabber.na.infn.it (1/2)  E' un jabber server con iscrizione aperta, ed e' stato testato con diversi client su diverse piattaforme  Attualmente e' configurato per utilizzare le connessioni in chiaro, ma verra' a breve reinstallato per utilizzare SSL  Sono stati integrati gli add-on per la user directory e la multi-user conference CCR 2003 – Paestum 24
  • 25. jabber.na.infn.it (2/2)  Potrebbe essere un utile strumento di collaborazione, con la possibilita' di conoscere lo stato dei nostri colleghi e di scambiare con loro messaggi, porzioni di codice, file, richieste e/o consigli, con una efficienza a volte superiore alla posta elettronica CCR 2003 – Paestum 25