Mesagerie instantă cu Prosody pe Debian Squeeze

prozodie

Bună prieteni!. Astăzi vă prezint un server modern și flexibil Jabber / XMPP, scris în limba Lua și cunoscut anterior ca Lxmppd. Are caracteristicile de a fi un sistem cu mai multe platforme, cu un consum foarte mic de resurse, ușor de utilizat și extensibil. Și fără alte întrebări, să trecem la treabă! Pot părea multe aspecte, dar sunt într-adevăr simple și scurte. Vom vedea acum:

  • Server de bază
  • Instalăm pachetele necesare
  • Să învățăm să configurăm
  • Configurăm parametrii globali
  • Creăm și configurăm gazda virtuală
  • Generăm certificate SSL / TLS
  • Activăm gazda
  • Creăm primul utilizator
  • Ne înregistrăm Prosodia într-un DNS
  • Verificăm totul

Server de bază
Consumul redus de resurse ne permite să instalăm Prosody chiar în propria noastră stație de lucru și să oferim serviciul de chat de la acesta.

Instalăm pachetele necesare
Pentru a ne familiariza cu Prosody, vom folosi pachetele oficiale care vin în depozitul Squeeze:

aptitude install prosody liblue5.1-sec0

Să învățăm să configurăm
Să citim documentația însoțitoare /usr/share/doc/prosody/doc/coding_style.txt, pentru a ne familiariza cu formatul utilizat în fișierele de configurare. Să mergem la dosar / etc / prozodie și listăm fișierele și directoarele existente. Numele fiecărui folder sau fișier sunt intuitive și indică în mod clar pentru ce sunt utilizate:

  • certificate: Director unde vor fi stocate certificatele SSL / TLS și cheile lor private.
  • conf.disponibil: Director care conține fișierele de configurare ale gazdelor virtuale pe care le declarăm disponibile. Funcționează foarte asemănător cu ceea ce s-a văzut în postările anterioare legate de serverele web, ca în cazul folderului Nginx disponibil pentru site-uri.
  • conf.d: Dosar în care au fost declarate linkurile directe ale gazdelor virtuale conf.avil și pe care vrem să le permitem.
  • prozodie.cfg.lua: fișierul principal al configurației Prosody.
  • README: Fișier care ne oferă un „indiciu” pentru a merge mai departe. Nu încetați să-l citiți!

Cu ceea ce am citit până acum, putem încerca o configurație inițială minimă.

Configurăm parametrii globali
Studiem cu atenție fișierul principal de configurare/etc/prosody/prosody.cfg.lua, la care am făcut o traducere gratuită și pe care o putem descărca la final. Să salvăm fișierul original instalat folosind următoarea comandă:

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

Golim fișierul de configurare. Cu nano, edităm fișierul prozodie.cfg.lua deja golit și lipiți conținutul fișierului de exemplu descărcat. Îl modificăm în funcție de nevoile noastre și economisim cu cele obișnuite ctl + sau. Mai târziu verificăm sintaxa fișierului de configurare:

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

Și dacă nu trimiteți niciun mesaj, este că totul este în regulă.

Creăm și configurăm gazda virtuală
Fișierul gazdei noastre virtuale, îl vom crea în director /etc/prosody/conf.avail/cu numele gazdei, plus extensia .conf.lua, și îl vom crea din fișierexemplu.com.cfg.lua existent în acel folder:

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

Modificăm fișierul cu parametrii corecți în funcție de nevoile noastre. Putem descărca o versiune conformă cu acest exemplu la sfârșitul postării. Nu uitați să ștergeți linia enabled = false - Eliminați această linie pentru a activa această gazdă.

Generăm certificate SSL / TLS
La executarea comenzii pentru generarea certificatelor, aceștia ne vor cere informații legate de compania noastră.

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

Verificăm dacă certificatele au fost generate corect de către ls -l.

Activăm gazda
Pentru a activa gazda declarată în /etc/prosody/conf.avail/web.amigos.cu.cfg.lua, trebuie să creăm o legătură simbolică a fișierului respectiv în dosar conf.d. Apoi, trebuie să repornim serviciul:

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

varful: Deschideți o consolă dedicată pentru a vizualiza mesajele jurnalului Prosody folosind comanda coada -f /var/log/prosody/prosody.log. Dacă ultima linie spune „S-a demonizat cu succes la PID ####”, apoi totul funcționează la Kilo! Dacă se întâmplă să primiți un mesaj de eroare, este posibil să trebuiască să ucideți manual procesul "Lua" care rulează ÎNAINTE să reporniți Prosodia. Pentru a cunoaște pid del Lua, fugips -e | grep lua. Pentru a ucide procesul, kill -kill #pid of lua.

Creăm primul utilizator
Pentru a crea utilizatori folosim comanda prosodictl după cum urmează:

prosodyctl adduser admin@web.amigos.cu

Comanda ne va cere "Parola" a utilizatorului. Observați că creăm utilizatorul „Administrator”, pe care îl declarăm ca administrator de prosodie în fișierul de configurare globală prozodie.cfg.lua.

RECOMANDĂM NU folosiți comanda prosodictl pentru a opri, porni sau reporni serviciul, dar faceți-l prin metode tradiționale precum:

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

Ne înregistrăm Prosodia într-un DNS
Serviciul de mesagerie instant se bazează în mare măsură pe serviciul DNS. Fiecare utilizator este identificat prin adresa sa sau JID în calea utilizator @ domeniu, unde domeniul indică serverul pe care este stocat contul. Pentru ca utilizatorul să se conecteze și să se conecteze, este necesar să găsiți adresa IP a serverului. În mod similar, serverele la distanță trebuie să contacteze utilizator @ domeniu pentru a vă transmite un mesaj. Prin urmare, este necesar ca serverul Prosody să aibă un tip de înregistrare A în serverul DNS al rețelei LAN. De exemplu:

192.168.10.20 IN To web.amigos.cu.

Verificăm totul
Avem deja serverul nostru Prosody care rulează. Să discutăm atunci! Instalați Pidgin sau Psi sau alegeți clientul XMPP la alegere și conectați-vă la server. Dacă reușește, este pentru că a urmat conținutul acestui articol până la scrisoare. Dacă nu, întrebați, pentru asta au fost create bloguri de acest gen. Ahhh, dacă doriți să discutați de pe o consolă, instalați Finch.

Am făcut un pachet cu documentația de pe site-ul oficial Prosody, care sperăm că va fi util. Cei care doresc să descarce pachetele direct din depozitul Prosody, vizitează Depozit de pachete Prosody.

Pentru toată lumea, noroc și chat fericit!

Descărcați fișiere eșantion

20 comentarii, lasă-le pe ale tale

Lasă comentariul tău

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

*

*

  1. Responsabil pentru date: Miguel Ángel Gatón
  2. Scopul datelor: Control SPAM, gestionarea comentariilor.
  3. Legitimare: consimțământul dvs.
  4. Comunicarea datelor: datele nu vor fi comunicate terților decât prin obligație legală.
  5. Stocarea datelor: bază de date găzduită de Occentus Networks (UE)
  6. Drepturi: în orice moment vă puteți limita, recupera și șterge informațiile.

  1.   eliotime3000 el a spus

    Bună sugestie. Să vedem dacă am timp să fac un client de mesagerie instantanee.

    1.    plin de viață el a spus

      Un alt client XMPP? Omule, nu cred că este necesar decât dacă o faci pentru a învăța și a-l stabili ca obiectiv. Sunt deja Pidgin, Kopete, KDE-Telephaty, Empathy, PSI ... oricum.

      1.    dhunter el a spus

        Ei bine, la fel de mult ca un alt client nu cred, dar ar fi distractiv să te joci cu API-ul XMPP și să trimiți mesaje din aplicații.

      2.    Putreze87 el a spus

        Ar fi bine dacă, de exemplu, trebuie să faceți un fel de chat pentru o rețea internă sau ceva similar

      3.    braybaut el a spus

        Dacă acest lucru este adevărat, dar acest tutorial este utilizat pentru a implementa un client XMPP în rețelele gratuite

        1.    dhunter el a spus

          Acest tutorial este pentru server, există deja câțiva clienți gratuiți.

      4.    eliotime3000 el a spus

        Pentru Windows, ar fi foarte util (în absența miticului Messenger, ar fi bine să-l faci unul mai bun, nu?).

  2.   Federico A. Valdes Toujague el a spus

    Vă mulțumesc tuturor pentru comentarii. Visul meu este să am un client web care să chat pe LAN-ul meu. Am instalat ejabberd cu JwChat și din moment ce interfața din Squeeze era lipicioasă (și urâtă și buggy), nici nu am încercat-o. Am încercat serverul web Yaws și clientul său web Yaws-chat și nu am reușit să funcționeze corect. Au descărcat PHPFreeChat și nimic. Cu Lenny's Drupal 6 am încercat să configurez pluginurile de chat și m-am săturat atunci, acum câțiva ani. Visez să nu mai depind de instalarea clienților și să vorbesc cu un browser nimic mai mult. Provocarea este lansată.

    1.    eliotime3000 el a spus

      Bine ai venit, prietene. Să vedem dacă pot termina descărcarea Wheezy DVD1 pentru a face un tutorial despre cum să instalez ZPanelX în noua versiune Debian Stable (sper că dezvoltatorii ZPanel nu abandonează suportul Ubuntu 12.04 LTS, pentru că altfel nu aș putea face un instalarea automată a panoului de control pe care l-am găsit grozav când l-am testat pe Windows).

  3.   Nou pentru Debian el a spus

    Bună ziua, dacă am instalat Debian 7 în urmă cu puțin timp. Cu toate acestea, nu am internet, îmi spune că îmi lipsește firmware-ul. Este un link tp usb tl-wn321g. Îl pot descărca de pe Windows? Îmi pare rău să întreb aici este că nu vreau să mă înregistrez la niciun forum debian, de asemenea, nu știu foarte bine engleza.

    1.    eliotime3000 el a spus

      Dacă TP-Link are chipset-ul Altheros, ar trebui să îl recunoască fără complicații.

      Aflați dacă modelul dvs. TP-Link USB are chipset-ul Altheros, precum și notați ID-ul hardware.

    2.    comentator el a spus

      Dacă doriți să descărcați iso aici, acestea sunt debian isos, dar vin cu drivere și firmware non-gratuite.

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

  4.   Putreze87 el a spus

    Aș dori un tuto bun pe asterisc hehehe

    1.    Julio Cesar el a spus

      Vă recomandăm să începeți prin utilizarea Trixbox CE sau Elastix, ambele având la bază Asterisk

      http://www.elastix.org/

      http://www.trixbox.com/

  5.   MSX el a spus

    Ghid foarte bun, vă mulțumesc foarte mult 🙂

  6.   alejandrodez el a spus

    Excelent, vă mulțumesc foarte mult, a fost foarte util.

  7.   @Jlcmux el a spus

    O voi testa în rețeaua Mesh Free pe care o implementăm în orașul meu. Atunci îți voi spune ce mai fac cu asta.

    Salude.!

  8.   @Jlcmux el a spus

    Ce păcat. Am rămas în ultimul pas. Unde configurez DNS-ul? Ce rușine să fii singurul care întreabă acest haha

  9.   Piccolo Lenz McKay el a spus

    Am câteva întrebări foarte interesante:

    Ați știut sau există experiență pentru o instalare în producția de prosodie pentru 3000 de utilizatori în care sunt conectate simultan cel puțin 1000 de chaturi în același timp?

    Suport pentru: transfer de fișiere, VIP și acesta este cel mai important jurnal de conversații?

    MEDIU: 3 mii de utilizatori, cu reg web dezactivat și scripturi prin server invocate prin creveți CGI pentru înregistrarea și manipularea utilizatorului, într-un DELL T8 cu 110 nuclee cu 8 GB de ram pentru utilizare exclusivă sau pentru ejabberd în lenny cu port și erland și ejabberd

    Mingea se umflă, după ce am acomodat o mulțime de probleme în ejabberd, găsesc asta, într-adevăr asta mă face să simt că mi-am pierdut timpul ..

    1.    Federico A. Valdes Toujague el a spus

      Cu respect PICCORO Lenz McKAY !!!. Uite, îți recomand să vizitezi site-ul oficial al Prosody http://prosody.imși extindeți informațiile. Nu am experiență peste 1000 de clienți care discută în același timp cu Prosody. Și nu cred că ți-ai pierdut timpul cu Ejabberd. Este o decizie pe care ai luat-o pe vremea lui Lenny. Apropo, mărturisesc că Ejabberd a fost primul pe care l-am instalat pe lanul meu de afaceri, unde poate 50 sau 60 de utilizatori au discutat la unison. Serverul nici măcar nu știa despre asta și avea doar 512 megabytes de RAM. 🙂 Și da, mi-a fost greu să-l configurez corect. Prosodia este foarte simplă, dar vă invit să aflați mai multe despre potențialitățile sale. Nu mă îndoiesc de el, ci nu am experiența de care aveți nevoie.