Month: ottobre 2009

Multi User Conferencing (MU-conferenza) per Jabber (Jabberd2)

Multi User Conferencing (MU-conferenza) per Jabber (Jabberd2)

Introduzione ~

Consulta il seguente articolo di installare / configurare Jabberd2 …

How to configure Jabber (jabberd2) with MySQL,PAM as auth database

Requisito ~

* I seguenti pacchetti sono chiamati a compilare MU-conferenza …

root @ laptop: ~ # apt-get install libglib2.0-0 libglib2.0-dev
root @ laptop: ~ # apt-get install libidn11 libidn11-dev
root @ laptop: ~ # apt-get install expat lib64expat1 lib64expat1-dev libexpat1-dev liblua5.1-expat-dev liblua5.1-expat0

Fase 1] Come compilare “MU-Conference” —

* Download “MU-conferenza” dal seguente URL – https: / / gna.org / progetti / mu-conference /

root @ laptop: / var / src # wget-c http://download.gna.org/mu-conference/mu-conference_0.8.tar.gz
root @ laptop: / var / src # tar xvfz mu-conference_0.8.tar.gz
root @ laptop: / var / src # cd mu-conference_0.8 /
root @ laptop: / var/src/mu-conference_0.8 #

* Compilare MU-conferenza

root @ laptop: / var/src/mu-conference_0.8 # make
cd src /; fare
make [1]: Entering directory `/ var/src/mu-conference_0.8/src ‘
jabberd cd; fare
make [2]: Entering directory `/ var/src/mu-conference_0.8/src/jabberd ‘

… ..

root @ laptop: / var/src/mu-conference_0.8 # echo $?
0
root @ laptop: / var/src/mu-conference_0.8 #

Fase 2] Configurare MU-Conferenza —

* Ora copiare il MU “Conferenza” binari alla directory di installazione Jabberd2 —

root @ laptop: ~ # cp / usr/local/jabberd-2.2.9/bin / var/src/mu-conference_0.8/src/mu-conference /
root @ laptop: ~ # chown Jabber: Jabber / usr/local/jabberd-2.2.9/bin/mu-conference
root @ laptop: ~ # ls-l / usr/local/jabberd-2.2.9/bin/mu-conference
-rwxr-xr-x 1 Jabber Jabber 191904 2009-10-12 18:59 / usr/local/jabberd-2.2.9/bin/mu-conference
root @ laptop: ~ #

root @ laptop: ~ # / usr/local/jabberd-2.2.9/bin/mu-conference-help
Jabber Component Runtime – 0.2.4
(c) 2003-2004 Paul Curtis

/ usr/local/jabberd-2.2.9/bin/mu-conference: opzione non valida – ‘-‘
Uso: mu-conferenza [-B] [-s] [-h] [d-level]-c FILE
-B Mettere il demone in background
-s Mostra messaggi di debug su stderr
-h Stampa questo aiuto
-d LIVELLO Impostare il livello di output di debug
-c FILE impostare il file di configurazione, argomento obbligatorio
root @ laptop: ~ #

* Crea directory di spool per “MU-conferenza”. La mu-componente conferenza richiede una directory di spool in cui memorizzare le informazioni sala conferenze.

root @ laptop: ~ # mkdir / usr/local/jabberd-2.2.9/var/spool
root @ laptop: ~ # chown Jabber: Jabber / usr/local/jabberd-2.2.9/var/spool

NOTA ~ “Jabber: Jabber” user / nome del gruppo di server Jabberd2.

* Copiare il file di configurazione di “MU-Conference” di directory di installazione Jabberd2 e modificare l’impostazione —

root @ laptop: ~ # cp / var/src/mu-conference_0.8/muc-default.xml / usr/local/jabberd-2.2.9/etc/mu-conference.xml
root @ laptop: ~ # chown Jabber: Jabber / usr/local/jabberd-2.2.9/etc/mu-conference.xml
root @ laptop: ~ #

root @ laptop: ~ # vi / usr/local/jabberd-2.2.9/etc/mu-conference.xml

<name> conf.laptop.ubuntu.me </ name>
<host> conf.laptop.ubuntu.me </ host>
<IP> localhost </ ip>
<port> 5347 </ port>
<secret> secret </ secret>

<spool> / usr/local/jabberd-2.2.9/var/spool </ spool>
<logdir> / usr/local/jabberd-2.2.9/var/log </ logdir>
<pidfile> / usr/local/jabberd-2.2.9/var/run/mu-conference.pid </ pidfile>

<loglevel> 255 </ loglevel>

<sadmin>
<user> admin@laptop.ubuntu.me </ user>
</ sadmin>


… ..
root @ laptop: ~ #

* Ora riavviare il server Jabberd2 e quindi avviare “MU-Conference” …

root @ laptop: ~ # su Jabber-l-s / bin / bash-c “/ usr/local/jabberd-2.2.9/bin/mu-conference-B-C / usr/local/jabberd-2.2.9 / etc / mu-conference.xml ”
root @ laptop: ~ #

* Si prega di controllare l’articolo di cui sopra, vale a dire init script di avvio ‘/ etc/init.d/jabberd2’ inizia mu-conferenza.

root @ laptop: ~ # tail-f / usr/local/jabberd-2.2.9/var/log/mu-conference.log
Mon Oct 12 19:19:40 2009 main.c: 168 (principale): Jabber Component Runtime – 0.2.4 di partenza.
Mon Oct 12 19:19:40 2009 MU-Conferenza: [conference.c: 1076 (conferenza)]-mu carico conferenza – Service ID: conf.laptop.ubuntu.me

Mon Oct 12 19:19:40 2009 MU-Conferenza: [conference.c: 1157 (conferenza)] Aggiunta admin@laptop.ubuntu.me sadmin
Mon Oct 12 19:19:40 2009 MU-Conferenza: [xdb.c: 319 (xdb_rooms_get)] ha chiesto di ottenere camere da xdb
Mon Oct 12 19:19:40 2009 MU-Conferenza: [xdb.c: 418 (xdb_rooms_get)] salto .. Non ci sono risultati
Mon Oct 12 19:19:40 2009 main.c: 219 (principale): ciclo principale di partenza.
Mon Oct 12 19:19:40 2009 jcr_base_connect.c: 34 (jcr_socket_connect): Tentativo di connessione a localhost: 5347
Mon Oct 12 19:19:40 2009 jcr_base_connect.c: 87 (jcr_send_start_stream): flusso XML di apertura: sent 173 bytes
Mon Oct 12 19:19:40 2009 jcr_main_stream_error.c: 50 (jcr_main_new_stream): stream server connesso.
Mon Oct 12 19:19:40 2009 jcr_deliver.c: 51 (jcr_queue_deliver): thread di consegna dei pacchetti di partenza.

fatto!

Fase 3] Test “MU-Conference” —

* Nel menu “PSI” client di messaggistica istantanea, goto ‘Generale’ e poi cliccare su ‘Service Discovery’ e controllare l’elenco stanza …
* In “Strumenti ‘e poi Pidgin” client di messaggistica istantanea, goto’ clicca su ‘Lista Room’ sezione.

Una volta individuato il ‘mu-conferenza’ server. Si prega di cliccare su ‘+ Aggiungi Chat’ dal menu ‘Amici’ di pidgin. In caso di scegliere PSI su ‘Join Groupchat’ dal menu ‘generale’ di aggiungere “Conferenza / Room” e poi unirsi alla ‘Confernece Room’.

Gustare,
Arun Bagul

Come configurare Jabber (jabberd2) con MySQL, PAM come database auth

Come configurare Jabber (jabberd2) con MySQL, PAM come database auth

Introduzione —

Jabberd2 è il protocollo XMPP basato Instants Messaging (IM) server. Jabberd2 è altamente scalabile e ad alte prestazioni server Jabber. La bellezza dell’architettura Jabberd2 risiede nel fatto che la sua architettura dei componenti distribuisce servizi attraverso le sei componenti, ognuno dei quali comunica tramite TCP / IP.

1) Router – è la spina dorsale del server Jabber. Si accetta le connessioni da componenti jabberd e passa i pacchetti XML tra i componenti
2) Server to Server (S2S) – componente gestisce la comunicazione con i server esterni. S2S passa i pacchetti tra gli altri componenti e server esterni, ed esegue dial-back per l’autenticazione remota server Jabber.

3) Resolver – atti a sostegno della componente S2S. Risolve i nomi host per S2S come parte di autenticazione dialback.
4) Session Manager (SM) – componente implementa le funzioni di messaggistica istantanea come passare il messaggio, la presenza, registro ed ecc + abbonamento di connessione DB
5) Client Server (C2S) – componente gestisce la comunicazione con i client Jabber come il collegamento, passando per i pacchetti di SM, l’autenticazione e la registrazione degli utenti.
6) core Jabber – la registrazione e la comunicazione plugin di terze parti.

** Per compilare / installare jabberd-2.2.9 abbiamo bisogno seguenti pacchetti su Debian / Ubuntu (simile su RedHat / Fedora o altri sistemi operativi)

– Libpam0g libpam0g-dev (supporto PAM)
– Libssl openssl-dev (supporto TLS / SSL)
– Libudns0 libudns-dev (DNS Resolver Library)
– Libidn11 libidn11 libnet-dev-libidn-perl (libidn fornisce funzionalità necessarie alla manipolazione di stringhe per Jabberd2)
– Mysql-common libdbd-mysql-perl mysql-server-5.1 mysql-client-5.1-dev libmysqlclient16 (DB MySQL l’autenticazione)

** Jabberd2 supporta cinque di autenticazione (user) meccanismo —

* PAM
* Database MySQL
* Berkeley DB
* Database PostgreSQL
* SQLite DB
* OpenLDAP

** Seguenti porte sono utilizzate da jabberd2 —
* Porta 5222 – senza la connessione del client SSL
* Porta 5223 – connessione del client SSL
* Porta 5269 – server a server di connessione
* Port 5347 – jabberd2 router

Step 1] Creazione del sistema di utenti e gruppi per jabberd 2 Server (http://codex.xiaoka.com/wiki/jabberd2:start) —

root @ laptop: ~ # addgroup-jabber sistema
L’aggiunta di gruppo »Jabber ‘(GID 61) …
Fatto.
root @ laptop: ~ #

root @ laptop: ~ # adduser-system-home / usr/local/jabberd-2.2.9 /-bin / shell / false-gid 61 Jabber

* Verifica del sistema di utenti e gruppi … (passi per Ubuntu)

root @ laptop: ~ # ID Jabber
uid = 125 (Jabber) gid = 61 (Jabber) groups = 61 (Jabber)
root @ laptop: ~ #

Step 2] Scarica l’ultima versione di Jabberd2 —

* Estrarre la fonte allora compilazione / installazione come illustrato di seguito con PAM / MYSQL DB per l’autenticazione con SSL

root @ laptop: / var / src / # wget-c http://codex.xiaoka.com/pub/jabberd2/releases/jabberd-2.2.9.tar.bz2

root @ laptop: / var / src # tar jabberd xvfj-2.2.9.tar.bz2

root @ laptop: / var / src # jabberd cd-2.2.9

root @ laptop: / var/src/jabberd-2.2.9 #. / configure-prefix = / usr/local/jabberd-2.2.9 /-enable-debug-enable-mysql-enable-ssl-enable-pam-abilitare -ssl

… ..
il controllo della versione libidn> = 0.3.0 … yes
checking for dns_init in-ludns … sì
controllo usabilità gsasl.h … sì
verificare la presenza gsasl.h … sì
checking for gsasl.h … sì
checking for gsasl_check_version in-lgsasl … sì
il controllo della versione GnuSASL> = 0.2.27 … no
configure: error: no SASL backend disponibile su: gsasl
root @ laptop: / var/src/jabberd-2.2.9 #

Step 3] problema che si pone come “configure: error: no SASL backend disponibile su: gsasl” ~

Non ti preoccupare scaricare l’ultima versione della libreria gsasl dall’URL ~ http://alpha.gnu.org/gnu/gsasl/

* Scarica l’ultima versione di GNU SASL (gsasl) …

root @ laptop: / var / src / wget-c # http://alpha.gnu.org/gnu/gsasl/gsasl-0.2.29.tar.gz

* Estrarre la fonte quindi compilarlo / installarlo …

root @ laptop: / var / src # tar xvfz gsasl-0.2.29.tar.gz
root @ laptop: / var / src # gsasl cd-0.2.29 /
root @ laptop: / var/src/gsasl-0.2.29 #. / configure-prefix = / usr / local / gsasl /
root @ laptop: / var/src/gsasl-0.2.29 # make
root @ laptop: / var/src/gsasl-0.2.29 # make install
root @ laptop: / var/src/gsasl-0.2.29 #

* Verificare la gsasl “versione”

root @ laptop: / var/src/gsasl-0.2.29 # / usr / local / gsasl / bin / gsasl versione
gsasl (GNU SASL) 0.2.29
Copyright (C) 2008 Simon Josefsson.
Licenza GPLv3 +: GNU GPL versione 3 o versione successiva <http://gnu.org/licenses/gpl.html>
Questo software è libero: si è liberi di cambiare e ridistribuirlo.
Non c’è NESSUNA GARANZIA, nei limiti consentiti dalla legge.

Scritto da Simon Josefsson.
root @ laptop: / var/src/gsasl-0.2.29 #

Fase 4] Torna alla sorgente Jabberd2 e iniziare a compilare / installare, come mostrato in seguito —

root @ laptop: / var/src/jabberd-2.2.9 #. / configure-prefix = / usr/local/jabberd-2.2.9 /-enable-debug-enable-mysql-enable-ssl-enable-pam-abilitare -ssl-with-extra-include-path = / usr / local / gsasl / include /-con-extra-libreria-path = / usr / local / gsasl / lib /
root @ laptop: / var/src/jabberd-2.2.9 # make
root @ laptop: / var/src/jabberd-2.2.9 # make install

** Create log e directory runtime ~

root @ laptop: / usr/local/jabberd-2.2.9 # mkdir / usr/local/jabberd-2.2.9/var
root @ laptop: / usr/local/jabberd-2.2.9 # mkdir / usr/local/jabberd-2.2.9/var/run

root @ laptop: / usr/local/jabberd-2.2.9 # ls-l
totale 20
drwxr-xr-x 2 Jabber Jabber 4096 2009-10-11 18:21 bin
drwxr-xr-x 3 Jabber Jabber 4096 2009-10-11 18:21 etc
drwxr-xr-x 3 Jabber Jabber 4096 2009-10-11 18:21 lib
drwxr-xr-x 3 Jabber Jabber 4096 2009-10-11 18:21 parti
drwxr-xr-x 3 Jabber Jabber 4096 2009-10-11 18:42 var
root @ laptop: / usr/local/jabberd-2.2.9 #

Fase 5] jabberd Configure-2.2.9 ~

* Setup (jabberid@laptop.ubuntu.me) Domain Name (hostname del server), l’indirizzo IP, porta e accedere impostazione nel client (c2s.xml) e server (sm.xml) file di configurazione —

NOTA ~ Domain Name non è necessario essere hostname del server. Ma dovrebbe essere risolvibile (DNS) per uno degli IP del server.

root @ laptop: / usr/local/jabberd-2.2.9 # hostname
laptop.ubuntu.me
root @ laptop: / usr/local/jabberd-2.2.9 #

root @ laptop: / usr/local/jabberd-2.2.9 # vi / usr/local/jabberd-2.2.9/etc/sm.xml

<pidfile> / usr/local/jabberd-2.2.9/var/run/sm.pid </ pidfile>

<id> laptop.ubuntu.me </ id>

<IP> 0.0.0.0 </ ip> <! – default: 127.0.0.1 ->
<port> 5347 </ port> <! – default: 5347 ->

<log type=’file’>
<file> / usr/local/jabberd-2.2.9/var/log/sm.log </ file>

root @ laptop: / usr/local/jabberd-2.2.9 # vi / usr/local/jabberd-2.2.9/etc/c2s.xml

<pidfile> / usr/local/jabberd-2.2.9/var/run/c2s.pid </ pidfile>

** Per attivare automaticamente la registrazione (nel file c2s.xml ‘register-enable =’ true ‘è necessaria)
<id register-enable=’true’> laptop.ubuntu.me </ id>

<IP> 0.0.0.0 </ ip>
<port> 5222 </ port>

<log type=’file’>
<file> / usr/local/jabberd-2.2.9/var/log/c2s.log </ file>

root @ laptop: / usr/local/jabberd-2.2.9 # vi / usr/local/jabberd-2.2.9/etc/s2s.xml

<pidfile> / usr/local/jabberd-2.2.9/var/run/s2s.pid </ pidfile>
<log type=’file’>
<file> / usr/local/jabberd-2.2.9/var/log/s2s.log </ file>

Passo 6] Configurare jabberd-2.2.9 per lo stoccaggio e l’autenticazione 9using MySQL DB) —

* Verificare che Jabberd2 “banca dati” non esiste (se esiste né db goccia o il nome del DB cambiamento di db-file setup.mysql). Se non l’esportazione DB MySQL dump da fonte Jabberd2 … ..

root @ laptop: / usr/local/jabberd-2.2.9 # mysql-u root-p </ var/src/jabberd-2.2.9/tools/db-setup.mysql
Parola chiave:
root @ laptop: / usr/local/jabberd-2.2.9 # mysql-u root-p
Parola chiave:
Welcome to the MySQL monitor. Commands end with; o \ g.
Il tuo ID di connessione MySQL è di 176
Server versione: 5.1.31-1ubuntu2 (Ubuntu)

Help Tipo ‘,’ or ‘\ h’ for help. Type ‘\ c’ to clear the buffer.

mysql> show databases;
+————+
| Database |
+————+
| Information_schema |
| Jabberd2 |
| Mysql |
+————+
3 rows in set (0.00 sec)

mysql> use jabberd2;
La lettura delle informazioni da tavola per il completamento di tabella e colonna nomi
È possibile disattivare questa funzione per ottenere un avvio più rapido con-A

Database changed
mysql> show tables;
+——-+
| Tables_in_jabberd2 |
+——-+
| Attiva |
| Authreg |
| Disco-items |
| Logout |
| Motd messaggio |
| Motd volte |
| Privacy-default |
| Privacy-items |
| Privato |
| Coda |
| Roster gruppi |
| Roster-items |
| Status |
| Vacanze-impostazioni |
| Vcard |
+——-+
15 rows in set (0.00 sec)

mysql>

* Creazione di utente mysql per jabberd2 vale a dire ‘jabberd2’ con accesso al DB “jabberd2” —

mysql> GRANT SELECT, INSERT, DELETE, UPDATE ON jabberd2 .* a ‘jabber’ @ ‘localhost’ identified by ‘mypassword’;
Query OK, 0 rows affected (0.00 sec)

mysql> quit
Ciao
root @ laptop: / usr/local/jabberd-2.2.9 #

* Verificare ora l’accesso al DB ~

root @ laptop: / usr/local/jabberd-2.2.9 # mysql-u jabberd2-p
Parola chiave:
Welcome to the MySQL monitor. Commands end with; o \ g.
Il tuo ID di connessione MySQL è 178
Server versione: 5.1.31-1ubuntu2 (Ubuntu)

Help Tipo ‘,’ or ‘\ h’ for help. Type ‘\ c’ to clear the buffer.

mysql> show databases;
+——-+
| Database |
+——-+
| Information_schema |
| Jabberd2 |
+——-+
2 rows in set (0.00 sec)

mysql> quit
Ciao
root @ laptop: / usr/local/jabberd-2.2.9 #

Passo 7] Cambia c2s.xml e sm.xml file di configurazione per il supporto MySQL DB —

root @ laptop: / usr/local/jabberd-2.2.9 # vi / usr/local/jabberd-2.2.9/etc/c2s.xml

<! – Autenticazione / configurazione del database di registrazione ->
<authreg>

<! – Modulo back-end per l’uso ->
<module> mysql </ module>

<! – MySQL configurazione del modulo ->
<mysql>
<! – Host server di database e la porta ->
<host> localhost </ host>
<port> 3306 </ port>

<! – Il nome del database ->
<dbname> jabberd2 </ dbname>
<! – Database username e password ->
<user> jabberd2 </ user>
<pass> mypassword </ pass>

root @ laptop: / usr/local/jabberd-2.2.9 # vi / usr/local/jabberd-2.2.9/etc/sm.xml

<! – Configurazione del database di archiviazione ->
<storage>
<! – Percorso di archiviazione Dynamic ->
<path> / usr/local/jabberd-2.2.9/lib/jabberd </ path>

<! – Per impostazione predefinita, si utilizza il driver di SQLite per tutti stoccaggio ->
<driver> mysql </ driver>

<! – Configurazione del driver MySQL ->
<mysql>
<! – Host server di database e la porta ->
<host> localhost </ host>
<port> 3306 </ port>

<! – Il nome del database ->
<dbname> jabberd2 </ dbname>
<! – Database username e password ->
<user> jabberd2 </ user>
<pass> mypassword </ pass>

** Per attivare automaticamente la registrazione (nel file sm.xml)

<auto-create/>

————

NOTA ~ Non è sufficiente per aggiungere utenti alla tabella ‘authreg’ perché introduce solo gli utenti alla componente C2S, ma non alla componente sm. Voci corrette sono tenuti nella ‘tabella attiva’ pure. E ‘meglio utilizzare un client Jabber per la registrazione degli utenti.

Start Passo 8] Let’s jabberd-2 server (configurazione di prova) —

root @ laptop: ~ # su Jabber-l-s / bin / bash-c “/ usr/local/jabberd-2.2.9/bin/jabberd-b”
root @ laptop: ~ #

* Verificare se le porte sono aperte o non

root @ laptop: ~ # netstat-nlp

Recv proto-Q Send-Q Local Address Foreign Address Stato PID / Program name
tcp 0 0 0.0.0.0:5347 0.0.0.0: * LISTEN 31662/router
tcp 0 0 0.0.0.0:5222 0.0.0.0: * LISTEN 13883/c2s
tcp 0 0 127.0.0.1:3306 0.0.0.0: * LISTEN 2892/mysqld
tcp 0 0 0.0.0.0:5269 0.0.0.0: * LISTEN 13886/s2s

… ..

root @ laptop: ~ #

** Ora registrare l’utente “jabberd@laptop.ubuntu.me” e password “segreta” con Jabber client di messaggistica istantanea

root @ laptop: / usr/local/jabberd-2.2.9 # tail-f var/log/c2s.log

Mon Oct 12 00:43:15 2009 [bando] [8] registrazione riuscito, chiedendo la creazione di utenti: jid = jabberd@laptop.ubuntu.me
Mon Oct 12 00:43:15 2009 [bando] [8] autenticazione SASL riuscito: = meccanismo DIGEST-MD5; authzid = jabberd@laptop.ubuntu.me
Mon Oct 12 00:43:15 2009 [bando] [8] vincolati: JID = jabberd@laptop.ubuntu.me / Telepathy
Mon Oct 12 00:44:20 2009 [bando] [9] [192.168.0.1, port = 48307] Connect

* Controllo di entrata DB —

mysql> SELECT * FROM attivi;
+———+——+—-+
| Raccolta-proprietario | object-sequenza | tempo |
+———+——+—-+
| Jabberd@laptop.ubuntu.me | 1 | 1255288395 |
+———+——+—-+
1 row in set (0.00 sec)

mysql> SELECT * FROM authreg;
+—-+——+—-+
| Username | password | regno |
+—-+——+—-+
| Jabberd | segreto | laptop.ubuntu.me |
+—-+——+—-+
1 row in set (0.00 sec)

mysql>

=> Test completato con successo ….

Passo 9] Jabberd2 Configurazione di SSL / TLS Connections —

Configurare Let’s jabberd2 per SSL / TLS connessione. Jabberd2 è progettato per fornire per SSL / TLS le connessioni non solo tra i client Jabber e il server, ma anche tra i componenti del server jabberd (sm, S2S e C2S) e il router jabberd. Un certificato SSL unico può essere utilizzato per queste due funzioni (client Jabber per jabberd e componente jabberd al router), o due chiavi separate possono essere utilizzati.

* Self Genera firmato certificato SSL …

root @ laptop: / usr/local/jabberd-2.2.9 # openssl req-new-x509-RSA newkey: 1024-days 365-privkey.pem keyout-out server.pem
Generazione di una chiave a 1024 bit RSA private
.++++++
… ..++++++
nuova scrittura chiave privata per ‘privkey.pem’
Enter PEM pass phrase:
….
Nome comune (ad esempio, YOUR name) []: laptop.ubuntu.me
root @ laptop: / usr/local/jabberd-2.2.9 #

* Rimuovere Passphrase dalla chiave privata

root @ laptop: / usr/local/jabberd-2.2.9 # openssl rsa-in privkey.pem-out privkey.pem

** Combina la privata e una pubblica ed eliminare la chiave privata

root @ laptop: / usr/local/jabberd-2.2.9 # privkey.pem cat>> server.pem

root @ laptop: / usr/local/jabberd-2.2.9 privkey.pem # rm

* Cambia il permesso …

root @ laptop: / usr/local/jabberd-2.2.9 # chown Jabber: Jabber / usr/local/jabberd-2.2.9/server.pem
root @ laptop: / usr/local/jabberd-2.2.9 # ls-l / usr/local/jabberd-2.2.9
Totale 24
drwxr-xr-x 2 Jabber Jabber 4096 2009-10-11 22:17 bin
drwxr-xr-x 3 Jabber Jabber 4096 2009-10-12 01:03 etc
drwxr-xr-x 3 Jabber Jabber 4096 2009-10-11 20:16 lib
-rw-r-r-1 Jabber Jabber 2217 2009/10/12 01:17 server.pem
drwxr-xr-x 3 Jabber Jabber 4096 2009-10-11 20:16 parti
drwxr-xr-x 4 Jabber Jabber 4096 2009-10-12 00:20 var
root @ laptop: / usr/local/jabberd-2.2.9 #

root @ laptop: / usr/local/jabberd-2.2.9 # vi / usr/local/jabberd-2.2.9/etc/c2s.xml
<ssl-port> 5223 </ port ssl->
<pemfile> / <usr/local/jabberd-2.2.9/server.pem / pemfile>

root @ laptop: / usr/local/jabberd-2.2.9 # vi / usr/local/jabberd-2.2.9/etc/s2s.xml

<pemfile> / <usr/local/jabberd-2.2.9/server.pem / pemfile>

root @ laptop: / usr/local/jabberd-2.2.9 # vi / usr/local/jabberd-2.2.9/etc/sm.xml

<pemfile> / <usr/local/jabberd-2.2.9/server.pem / pemfile>

<pemfile> / <usr/local/jabberd-2.2.9/server.pem / pemfile>

** Ora riavviare il server e il registro di controllo …

root @ laptop: / usr/local/jabberd-2.2.9 # tail-f var/log/c2s.log

Mon Oct 12 01:28:57 2009 [bando] connessione al router stabilito
Mon Oct 12 01:28:57 2009 [bando] [0.0.0.0, port = 5.222] di ascolto per le connessioni
Mon Oct 12 01:28:57 2009 [bando] [0.0.0.0, port = 5.223] di ascolto per le connessioni SSL

* Mentre la registrazione dell’utente ~

1) Richiesto SSL / TLS
2) Forza antica SSL (5223 port)

Si prega di attivare queste due impostazioni e deselezionare “Allow plaintext auth flussi unecrypted”

NOTA ~ Mentre il login prima volta (in modalità di registrazione automatica) Assicurarsi di controllo “Crea nuovo account sul server” checkbox in Pidgin (in basso)

** It works!

Step 10] script di avvio init.d per Jabberd2 e Mu-Conferenza —

root @ laptop: ~ # / etc/init.d/jabberd2 start
Avvio del Jabberd2 IM Server …
router 11.095 | mq 11.099 | S2S 11.102 | C2S 11.106 | mu-conf 11.149

Fatto.
root @ laptop: ~ # / etc/init.d/jabberd2 status
Jabberd2 IM Server Status —
Router – 11.095 | mq – 11.099 | S2S – 11.102 | C2S – 11.106 | mu-conf 11.149
root @ laptop: ~ #

* Ora controllare l’impostazione di rete …

root @ laptop: ~ # netstat-nlp

Recv proto-Q Send-Q Local Address Foreign Address Stato PID / Program name
tcp 0 0 0.0.0.0:5347 0.0.0.0: * LISTEN 11095/router
tcp 0 0 0.0.0.0:5222 0.0.0.0: * LISTEN 11106/c2s
tcp 0 0 0.0.0.0:5223 0.0.0.0: * LISTEN 11106/c2s
tcp 0 0 127.0.0.1:3306 0.0.0.0: * LISTEN 2899/mysqld
tcp 0 0 0.0.0.0:5269 0.0.0.0: * LISTEN 11102/s2s

root @ laptop: ~ # / etc/init.d/jabberd2 stop
Fermare i Jabberd2 IM Server …
Fatto.
root @ laptop: ~ #

** Vuoi vedere lo script ~

root @ laptop: ~ # cat / etc/init.d/jabberd2
#! / bin / bash

# # Jabberd2 IM Server
# # Jabber User / Group – Jabber / Jabber
# # Comando per srart ~ Jabber su-l-s / bin / bash-c “$ (BASE_PATH) / bin / jabberd-b”
# #
# C2S
BASE_PATH = “/ usr/local/jabberd-2.2.9”
c2s_pid = “$ () BASE_PATH / var/run/c2s.pid”
# S2S
s2s_pid = “$ () BASE_PATH / var/run/s2s.pid”
# sm
sm_pid = “$ (BASE_PATH) / var / run / sm.pid”
# router
router_pid = “$ (BASE_PATH) / var / run / router.pid”
# Mu-conferenza
mu_conf_pid = “$ (BASE_PATH) / var / run / mu-conference.pid”

case “$ 1” in

start)
# # Controllo se Jabberd2 è in esecuzione o meno
if [-f $ () c2s_pid], poi
c2spid = $ (cat $ () c2s_pid)
echo “Jabberd2 IM Server ~ ‘C2S’ è in esecuzione (pid $ () c2spid)”
elif [-f $ () s2s_pid], poi
s2spid = $ (cat $ () s2s_pid)
echo “Jabberd2 IM Server ~ ‘S2S’ è in esecuzione (pid $ () s2spid)”
elif [-f $ () sm_pid], poi
smpid = $ (cat $ () sm_pid)
echo “Jabberd2 IM Server ~ ‘sm’ è in esecuzione (pid $ () smpid)”
elif [-f $ () router_pid], poi
routerpid = $ (cat $ () router_pid)
echo “Jabberd2 IM Server ~ ‘router’ è in esecuzione (pid $ () routerpid)”
altro
echo “Avvio del Jabberd2 IM Server …”
jabber su-l-s / bin / bash-c “$ (BASE_PATH) / bin / jabberd-b”
jabber su-l-s / bin / bash-c “$ (BASE_PATH) / bin / mu-conference-B-c $ (BASE_PATH) / etc / mu-conference.xml”> / dev / null 2> & 1
echo “router $ (cat $ () router_pid) | sm $ (cat $ () sm_pid) | S2S $ (cat $ () s2s_pid) | C2S $ (cat $ () c2s_pid) | mu-conf $ (cat $ ( mu_conf_pid)) ”
echo “…”
echo “Fatto”.
FI
;;

stop)
echo “fermare i Jabberd2 IM Server …”
if [-f $ () sm_pid], poi
kill -9 $ (cat $ () sm_pid)
FI
if [-f $ () router_pid], poi
kill -9 $ (cat $ () router_pid)
FI
if [-f $ () c2s_pid], poi
kill -9 $ (cat $ () c2s_pid)> / dev / null 2> & 1
FI
if [-f $ () s2s_pid], poi
kill -9 $ (cat $ (s2s_pid)) $ (cat $ () mu_conf_pid)> / dev / null 2> & 1
FI
# #
killall -9-u Jabber
rm-f $ (router_pid) $ (sm_pid) $ (s2s_pid) $ (c2s_pid) $ (mu_conf_pid)> / dev / null 2> & 1
echo “Fatto”.
;;

status)
echo “Jabberd2 IM status Server -”
if [-f $ () c2s_pid], poi
c2spid = $ (cat $ () c2s_pid)
FI
if [-f $ () s2s_pid], poi
s2spid = $ (cat $ () s2s_pid)
FI
if [-f $ () sm_pid], poi
smpid = $ (cat $ () sm_pid)
FI
if [-f $ () router_pid], poi
routerpid = $ (cat $ () router_pid)
FI
if [-f $ () router_pid], poi
mupid = $ (cat $ () mu_conf_pid)
FI
echo “router – $ () routerpid | sm – $ () smpid | S2S – $ () s2spid | C2S – c2spid $ () | mu-conf mupid $ ()”
;;
*)
echo “Utilizzo: $ 0 (start | stop | status)”
exit 1
esac
exit 0
# FATTO
root @ laptop: ~ #

Grazie,
Arun Bagul