Missatgeria instantània amb Prosody en Debian Squeeze

Prosody

Hola Amics !. Avui els presento a un modern i flexible servidor Jabber / XMPP, Escrit en el llenguatge lua i antigament conegut com Lxmppd. Té les característiques de ser un sistema múltiple plataforma, de molt baix consum de recursos, fàcil d'usar, i extensible. I sense més dilació, ¡entrem en matèria !. Potser semblin molts aspectes, però realment són senzills i curts. A continuació veurem:

  • servidor base
  • Instal·lem paquets necessaris
  • Aprenem a configurar
  • Configurem paràmetres globals
  • Creem i configurem el host virtual
  • Generem els certificats SSL / TLS
  • Habilitem el host
  • Creem el primer usuari
  • Registrem el nostre Prosody en un DNS
  • Vam comprovar tot

servidor base
El baix consum de recursos ens permet instal·lar a l'Prosody fins i tot en la nostra pròpia estació de treball i brindar el servei de XAT de la vostra.

Instal·lem paquets necessaris
Per familiaritzar-nos amb el Prosody, utilitzarem els paquet oficials que vénen en el repositori de l'Squeeze:

aptitude install Prosody liblua5.1-sec0

Aprenem a configurar
Llegim la documentació acompanyant /usr/share/doc/prosody/doc/coding_style.txt, Per familiaritzar-nos amb el format utilitzat en els arxius de les configuracions. Anem a la carpeta / Etc / Prosody i fem una llista dels arxius i directoris existents. Els noms de cada carpeta o arxiu són intuïtius i denoten clarament perquè s'utilitzen:

  • CERTs: Directori on s'emmagatzemaran els certificats SSL / TLS i les seves claus privades.
  • conf.avail: Directori que conté els fitxers de configuració dels hosts virtuals que declarem com a disponibles. Funciona molt semblant al vist en posts anteriors relatius a servidors web, com el cas de la carpeta sites-available de l'Nginx.
  • conf.d: Carpeta on es guarden els enllaços directes de hosts virtuals declarats en conf.avil i que volem habilitar.
  • prosody.cfg.lua: Arxiu principal de la configuració de l'Prosody.
  • README: Arxiu que ens dóna una "pista" per seguir endavant. No deixi de llegir-lo !.

Amb el que s'ha llegit fins ara, podem intentar una configuració inicial mínima.

Configurem els paràmetres Globals
Estudiem amb deteniment l'arxiu principal de configuració/etc/prosody/prosody.cfg.lua, A el qual li vaig fer una traducció lliure i que podem descarregar-ho a al final. Salvem el fitxer original instal·lat mitjançant la següent comanda:

cp /etc/prosody/prosody.cfg.lua /etc/prosody/prosody.cfg.lua.original

Buidem el fitxer de configuració. amb el nano, Vam editar el prosody.cfg.lua ja buidat, i enganxem el contingut de l'arxiu d'exemple descarregat. El modifiquem acord amb les nostres necessitats, i guardem amb l'habitual Ctl + o. Posteriorment vam comprovar la sintaxi de l'arxiu de configuració:

cp / dev / null /etc/prosody/prosody.cfg.lua nano /etc/prosody/prosody.cfg.lua luac -p /etc/prosdy/prosody.cfg.lua

I si no ens torna cap missatge, és que tot marxa bé.

Creem i configurem el Host Virtual
L'arxiu del nostre amfitrió virtual, el crearem en el directori /etc/prosody/conf.avail/amb el nom de l'amfitrió, més l'extensió .conf.lua, I el crearem a partir d'l'arxiuexample.com.cfg.lua existent en aquesta carpeta:

mv /etc/prosody/conf.avail/example.com.cfg.lua /etc/prosody/conf.avail/web.amigos.cu.cfg.lua nano /etc/prosody/conf.avail/web.amigos.cu .cfg.lua

Modifiquem el fitxer amb els paràmetres correctes d'acord a les nostres necessitats. Podem descarregar una versió consistent amb aquest exemple a la fi de l'post. No oblidi eliminar la línia enabled = false - Elimineu aquesta línia per habilitar aquest sistema principal.

Generem els certificats SSL / TLS
A l'executar la comanda de generació dels certificats, ens preguntaran dades relatives a la nostra empresa.

cd / etc / Prosody / certs openssl req -NEW -x509 -days 365 -nodes out "web.amigos.cu.crt" -keyout "web.amigos.cu.key"

Vam comprovar que els certificats van ser generats correctament mitjançant ls-l.

Habilitem el host
Per habilitar el host declarat en /etc/prosody/conf.avail/web.amigos.cu.cfg.lua, Hem de crear un enllaç simbòlic d'aquest arxiu a la carpeta conf.d. Després hem reiniciar el servei:

ln -s /etc/prosody/conf.avail/web.amigos.cu.cfg.lua /etc/prosody/conf.d/web.amigos.cu.cfg.lua /etc/init.d/prosody restart

Punta: Obriu una consola dedicada a veure els missatges de l'log de l'Prosody mitjançant la comanda tail -f /var/log/prosody/prosody.log. Si l'última línia diu "Successfully daemonized to PID ####", Llavors Tot funciona a l'Kilo !. Si per casualitat li dóna un missatge d'error, pot ser que hagi de matar manualment el procés "Lua" que aquest en execució ABANS DE tornar a reiniciar el Prosody. Per conèixer el pid de l'Lua, executeups -e | grep lua. Per matar el procés, kill -kill #pid de l'lua.

Creem el primer usuari
Per crear usuaris utilitzem la comanda prosodyctl de la següent manera:

prosodyctl adduser admin@web.amigos.cu

La comanda ens preguntarà pel "Password" de l'usuari. Observi que vam crear a l'usuari "Admin", El qual declarem com Administrador de l'Prosody a l'arxiu de configuració global prosody.cfg.lua.

RECOMANEM NO utilitzeu la comanda prosodyctl per aturar, iniciar, o reiniciar el servei, sinó que ho faci pels mètodes tradicionals com ara:

/etc/init.d/prosody {start | stop | restart | reload} invoke-rc.d Prosody {start | stop | restart | reload} service Prosody {start | stop | restart | reload}

Registrem el nostre Prosody en un DNS
El servei de missatgeria instantània descansa fortament en el servei DNS. Cada usuari s'identifica per la seva direcció o JID en la forma d' usuari @ domini, On el domini indica el servidor en el qual està emmagatzemada compte. Amb l'objectiu que l'usuari es connecti i entreu cal trobar l'adreça IP de servidor. De forma similar els servidors remots necessiten contactar amb el usuari @ domini per passar-li un missatge. Per tant, cal que el servidor Prosody tingui un registre tipus A al servidor DNS de la nostra LAN. Per exemple:

192.168.10.20 IN A web.amigos.cu.

Vam comprovar tot
Ja tenim en execució al nostre servidor Prosody. 'Chateemos doncs !. Instal·leu el Pidgin o el Psi, o esculli el client XMPP de la seva preferència i connecteu-vos a servidor. Si ho aconsegueix, és que llavors va seguir a peu de la lletra el contingut d'aquest article. Sinó, pregunteu, que per això es van fer els blocs com aquest. Ahhh !, si vol xatejar des d'una consola, instal l'Finch.

Confeccionem un paquet amb la documentació de el lloc oficial de l'Prosody la qual esperem sigui d'utilitat. Els que vulguin descarregar els paquets directament de l'repositori de l'Prosody, visitar Repositori de paquets de l'Prosody.

A tots, molt bona sort i feliç Xat!

Descarregar fitxers d'exemple

Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   eliotime3000 va dir

    Bona proposta. A veure si em dono temps com per fer un client de missatgeria instantània.

    1.    ILAV va dir

      ¿Un altre client XMPP? Home, no crec que sigui necessari a no ser, que ho facis per aprendre i t'ho proposes com a meta. Ja estan Pidgin, Kopete, KDE-Telephaty, Empathy, PSI ... en fi.

      1.    caçador va dir

        Bé, tant com un altre client no crec però seria divertit jugar amb l'API XMPP i enviar missatges des d'aplicacions.

      2.    Rots87 va dir

        estaria bé si per exemple necessites fer una mena de xat per a una xarxa interrna o alguna cosa semblant

      3.    Braybaut va dir

        Si això és veritat, però aquest tutorial serveix per implementar un client XMPP en xarxes Lliures

        1.    caçador va dir

          Aquest tutorial és per al servidor, clients lliures ja hi ha uns quants.

      4.    eliotime3000 va dir

        Per a Windows, serviria molt (a falta de el mític Messenger, seria bo fer un de millor, ¿no és així?).

  2.   Federico A. Valdés Toujague va dir

    Moltes Gràcies a TOTS pels seus comentaris. El meu somni és tenir un client web per xatejar en la meva LAN. Vaig instal·lar el ejabberd amb el JwChat i com la interfície en Squeeze era de pal (i lletja i amb bugs), ni ho vaig provar. Vaig provar amb el lloc web Yaws i el seu client web Yaws-xat i no el vaig poder començar a caminar adequadament. Em van descarregar el PHPFreeChat i res. Amb el Drupal 6 de l'Lenny vaig tractar de configurar els connectors per al xat i em vaig cansar en aquest llavors, fa diversos anys ja. Somio no dependre de la instal·lació de clients i xatejar amb un navegador res més. El Repte està llançat.

    1.    eliotime3000 va dir

      De res, col·lega. A veure si aconsegueixo acabar de descarregar-me el DVD1 de Wheezy per fer un Estatut sobre com instal·lar el ZPanelX en la nova versió de Debian Stable (espero que els desenvolupadors de l'ZPanel no abandonin el suport d'Ubuntu 12.04 LTS, perquè si no, no podria fer una instal·lació automatitzada d'aquest panell de control que em va semblar fantàstic quan ho vaig provar en Windows).

  3.   Nou a Debian va dir

    Hola, si em · li el Debian 7 fa una estona. No obstant això no tinc internet, em diu que em falta el microprogramari. És un usb tp link tl-wn321g. Puc descarregar-des de Windows? Perdonin que pregunti aquí és que no vull registrar-me a cap fòrum de debian, a més no es molt bé anglès.

    1.    eliotime3000 va dir

      Si el TP-Link té el chipset de Altheros, hauria de reconèixer sense complicacions.

      Busca si el model de la teva USB TP-Link té el chipset Altheros, a més d'anotar l'identificador de maquinari.

    2.    comentarista va dir

      Si vols descarrega la iso aquí, són isos debian però vénen amb drivers i firmware no lliures.

      http://live.debian.net/cdimage/release/7.0.0+nonfree/i386/iso-hybrid/

  4.   Rots87 va dir

    jo voldria una bona tut sobre asterisk jejeje

    1.    Juli Cèsar va dir

      Et recomano que comencis per usar Trixbox CE o Elastix tots dos són basats en Asterisk

      http://www.elastix.org/

      http://www.trixbox.com/

  5.   MSX va dir

    Molt bona guia, moltes gràcies 🙂

  6.   Alexandria va dir

    Excel·lent, moltíssimes gràcies m'ha estat molt útil.

  7.   @Jlcmux va dir

    El provaré a la Xarxa Lliure tipus Mesh que estem implementant a la meva ciutat. Després els explico com em va amb això.

    Salutacions.!

  8.   @Jlcmux va dir

    Que pena. Em vaig quedar en l'últim pas. On configurar el dels DNS? Que pena ser l'únic que pregunta això jaja

  9.   PICCORO Lenz McKay va dir

    Tinc algunes preguntes, interessantíssimes:

    Has sabut o hi ha experiència per a una instalacion en produccion de Prosody per a 3000 usuaris on concurrentment hi ha connectats al menys 1000 xatejant a l'msmo temps?

    Suport de: transferència fitxers, VIP, i aquest el mes important registre de converses?

    ENTORN: 3mil usuaris, amb reg web desconnectat i scripts via servidor invocats a través de gambes CGI per registre i manipulacion d'usuaris, en un 8 nuclis DELL T110 amb 8Gb de ram d'ús exclusivooo per ejabberd en lenny amb Erland portat i ejabberd

    es em punxa la pilota, després d'acomodar-moltíssims problemes en el ejabberd, em trobo amb això, en veritat això em fa sentir com que vaig perdre el meu temps ..

    1.    Federico A. Valdés Toujague va dir

      Els meus salutacions PICCORO Lenz McKay !!!. Mira, et recomano visiteu el lloc oficial de l'Prosody http://prosody.im, I ampliïs la informació. No tinc experiència sobre 1000 clients xatejant a el mateix temps amb el Prosody. I no crec hagis perdut el teu temps amb el ejabberd. És una decisió que vas prendre en època de l'Lenny. De passada et confesso que el ejabberd, va ser el primer que vaig instal·lar en el meu lan empresarial, on per ventura xatejaven a l'uníson, 50 o 60 usuaris. El servidor ni s'assabentava, i això que tenia només 512 megues de RAM. 🙂 I sip, treball em va costar configurar-lo adequadament. El Prosody és molt senzill, però et convido a que esbrinis més sobre les seves potencialitats. No és que dubti d'ell, sinó que no tinc l'experiència que tu necessites.