Introduzione
Iniziamo con questo primo progetto che prevede la realizzazione di un sistema di messaggistica completo un po’ come il messenger di microsoft o skype ma senza utilizzare risorse di altri (server on-line) e soprattutto utilizzando software totalmente gratuito.
Un alternativa agli standard più blasonati è sicuramente il protocollo XMPP comunemente conosciuto come jabber, sul sito www.jabber.org potete trovare interessanti link alle varie implementazioni, io ho utilizzato i prodotti realizzati da igniterealtime cioè il server openfire e il client spark con la versione web sparkweb. Ho scelto questo perché mi è sembrato il più completo sia perché cura sia la parte server che la parte client, sia perché è disponibile per la piattaforma linux, windows e MAC consentendoci qualsiasi combinazione di client e server. Quindi andiamo ad iniziare…
1. Procuriamoci i pezzi
Per prima cosa andiamo su www.igniterealtime.org e nella sezione download preleviamo per la nostra versione di sistema operativo il server openfire: quindi per linux preleviamo il pacchetto rpm o deb e dal seguente link
http://www.igniterealtime.org/downloads/index.jsp#openfire
Possiamo anche prelevare il client spark nella versione per il sistema operativo in uso sui client da
http://www.igniterealtime.org/downloads/index.jsp#spark
E il client web da installare nel server al seguente link:
http://red5.4ng.net/red5-0.1.04.zip
2. Installiamo
Lo andiamo ad installare con
rpm –ivh openfire-3.6.3-1.i386.rpm
oppure
dpkg –i openfire_3.6.3_all.deb
una volta installato e avviato il servizio openfire con il comando
/etc/init.d/openfire start
sulla porta 9090 sarà disponibile il sito web di amministrazione del server jabber. La prima volta che si entra parte automaticamente il wizard di configurazione iniziale in caso di errori o per cambiare totalmente la configurazione si può sempre forzare il wizard iniziale modificando il file openfire.xml nella cartella /opt/openfire/conf o /usr/share/openfire/conf a seconda della distribuzione, cambiando in fondo la voce
<setup>true</setup> con <setup>false</setup>
infine il firewall va configurato per permettere le connessioni in ingresso sulla porta 9090 e 9091.
3. Configuriamo il server
Per prima cosa bisogna pianificare il nostro sistema di messaggistica, openfire è molto malleabile e permette per esempio di avere un proprio database interno o appoggiarsi ad uno esterno e soprattutto permette di utilizzare un sistema di autenticazione interno oppure appoggiarsi a servizi LDAP o addirittura Active Directory. Per iniziare usiamo tutto interno a openfire e poi approfondiamo in un’altra sezione l’integrazione con altri servizi.
Partiamo quindi con il wizard, lanciamo in un browser
http://nomeserver:9090
il server ci chiederà come prima cosa il linguaggio da utilizzare

Proseguendo ci chiede il nome del server e le porte di amministrazione di default

In questa schermata bisogna indicare il nome server con cui verrà raggiunto dai client, inoltre il nome server è una parte dell’id dell’utente e ne identifica il dominio quindi facciamo attenzione nel sceglierlo perché dovrà essere indicato così nei dns. A questo punto bisogna indicare il database da utilizzare:

Per ora indichiamo Embedded Database cioè il database interno di openfire senza appoggiarsi ad un server database esterno. Configuriamo ora dove risiederanno gli utenti e i gruppi:

Per ora indichiamo il default cioè utenti e gruppi nel database interno a openfire. Come ultimo passaggio indichiamo l’email e la password dell’amministratore che di default, usando il database interno degli utenti corrisponde all’utente admin.

Il setup è completo:

4. Amministriamo il server Openfire
A questo punto possiamo accedere alla console vera e propria del server lanciando dal browser http://nomeserver:9090 o https://nomeserver:9091

Specifichiamo l’utente admin e la password che abbiamo scelto durante il wizard iniziale e quindi ci colleghiamo:

In questa pagina troviamo le informazioni sullo stato del server e per prima cosa proviamo a creare degli utenti clickando sul menu Users/Groups:

Qui possiamo creare un nuovo utente clickando su Create New User:

I campi richiesti sono lo username e la password, clickando su Create & Create Another si possono inserire utenti in serie senza uscire dalla maschera. Una volta terminato possiamo creare un gruppo clickando sul sottomenu Groups nel menu Users/Groups:

E quindi clickando su Create New Group:

Creato il gruppo openfire passa subito in edit permettendoci di aggiungere utenti al gruppo:

L’utilità piu grande dei gruppi è poter condividere una serie di contatti che openfire chiama roster con gli altri componenti del gruppo, così aggiungendo una persona al gruppo automaticamente l’utente viene aggiunto alla lista contatti di tutti quelli del gruppo, per far questo bisogna clickare su Enable contact list group sharing indicare il nome del gruppo e salvare i settaggi. Ora basta aprire sul firewall la porta 5222 e il server Openfire è pronto per accettare connessioni dai client.
Seguici