Fii liber - Mesagerie http://fii-liber.ro/taguri/mesagerie ro Cum se instalează un server XMPP http://fii-liber.ro/content/cum-se-instaleaz%C4%83-un-server-xmpp <div class="field field-name-body field-type-text-with-summary field-label-hidden"><div class="field-items"><div class="field-item even" property="content:encoded"><h3><b>Introducere</b></h3> <p><a href="http://fii-liber.ro/sites/default/files//200px-Logo_XMPP.svg_.png" title="" class="colorbox colorbox-insert-image" rel="gallery-all"><img style="float: right;" typeof="foaf:Image" src="http://fii-liber.ro/sites/default/files//styles/thumbnail/public/200px-Logo_XMPP.svg_.png" alt="" title="" class="image-thumbnail" /></a></p> <p><a href="http://xmpp.org/">XMPP</a> (<i>Extensible Messaging and Presence Protocol</i>, în traducere: <i>Protocolul Extensibil de Mesagerie și Prezență</i>), anterior cunoscut ca Jabber, este un protocol de <a href="http://ro.wikipedia.org/wiki/Mesagerie_instantanee">mesagerie instantanee</a> și totodată un <a href="http://ro.wikipedia.org/wiki/Standard_deschis">standard deschis</a>. El a fost conceput să fie extensibil și acest lucru le-a permis contribuitorilor să adauge suportul pentru comunicațiile audio și video. Mai mult decât atât, el oferă utilizatorilor posibilitatea de a comunica descentralizat, cu alte cuvinte, un utilizator înregistrat pe un server XMPP poate comunica cu utilizatori de pe alte servere. </p> <p>Există <a href="http://xmpp.org/xmpp-software/servers/">o mulțime</a> de programe libere (pe partea de server) care implementează protocolul XMPP, dar în ghidul acesta vom descrie pas cu pas cum se instalează unul din ele. Am ales serverul liber <a href="http://www.process-one.net/en/ejabberd/">ejabberd</a> deoarece experiența ne-a arătat că instalarea și configurarea sunt mai simple decât în cazul altor servere. Facem observația că comenzile din acest ghid au fost testate pe un sistem <a href="http://trisquel.info">Trisquel GNU/Linux</a>, bazat pe Ubuntu/Debian. Ejbberd, scris în Erlang, este folosit pe multe servere publice ce oferă servicii de mesagerie bazată pe XMPP, dar oricine își poate instala acest serviciu pe serverul personal și poate comunica prin intermediul lui cu alte servere mai cunoscute (ca Gtalk sau Facebook).</p> <!--break--><h3><b>Instalarea serverului ejabberd</b></h3> <p>Vă recomandăm să faceți mai întâi o actualizare a sistemului:</p> <p><code>$ sudo aptitude update</code><br /><code>$ sudo aptitude upgrade</code></p> <p>Instalați apoi programul ejabberd cu ajutorul comenzii</p> <p><code>$ sudo aptitude install ejabberd</code></p> <h3><b>Configurare</b></h3> <p>În fișierul principal de configurare al serverului (care se află la <code>/etc/ejabberd/ejabberd.cfg</code>) este necesar să specificați care vor fi administratorii. Deschizând acest fișier, veți găsi:</p> <p><code>%% Admin user<br /> {acl, admin, {user, "", "localhost"}}.</code></p> <p>Pentru a adăuga un administator „admin” modificați linia:</p> <p><code>{acl, admin, {user, "admin", "exemplu.org"}}.</code></p> <p>Adresa „exemplu.org” reprezintă o adresă la care poate fi accesat serverul. Dacă doriți mai mulți administratori, este suficient să adăugați linii similare (fiți atenți la sintaxă):</p> <p><code>{acl, admin, {user, "admin", "exemplu.org"}}.</code><br /><code>{acl, admin, {user, "admin1", "exemplu.org"}}.</code><br /><code>{acl, admin, {user, "admin2", "jurnalpersonal.org"}}.</code></p> <p>Veți observa că am adăugat doi administratori pentru adresa „exemplu.org” și unul pentru „jurnalpersonal.org”, dar acolo trebuie trecute adresele pe care le aveți. </p> <p>Tot în acel fișier de configurare găsiți linia:</p> <p><code>{hosts, ["localhost"]}.</code></p> <p>care vă sugerează că acolo pot fi trecute adresele la care doriți să oferiți serviciul XMPP. Deci edităm linia în felul următor:</p> <p><code>{hosts, ["localhost", "exemplu.org", "jurnalpersonal.org"] }.</code></p> <p>Acum reporniți serverul XMPP cu ajutorul comenzii</p> <p><code>$ sudo invoke-rc.d restart ejabberd</code></p> <p>În loc de parametrul <code>restart</code> mai puteți folosi opțiunile <code>stop</code> și <code>start</code>, care oprește, respectiv pornește serverul.</p> <h3><b>Adaugarea de utilizatori</b></h3> <p>Am putea folosi un client XMPP (cum sunt <a href="http://pidgin.im">Pidgin</a>, <a href="http://live.gnome.org/Empathy">Empathy</a> și <a href="http://yateclient.yate.ro">YateClient</a>) pentru a ne înregistra, însă serverul este implicit configurat să nu permită acest lucru. Dacă doriți să permiteți utilizatorilor să se înregistreze folosind clientul, atunci linia <code>{access, register, [{deny, all}]}.</code> din fișierul de configurare trebuie să arate în felul următor:</p> <p> <code>{access, register, [{allow, all}]}.</code></p> <p>Pentru a adăuga un utilizator vom folosi comanda:</p> <p><code>ejabberdctl register [numele utilizatorului] exemplu.org [parola]</code> </p> <p>Atunci când în fișierul de configurare am specificat care vor fi administratorii, aceștia nu au devenit automat utilizatori înregistrați pe server. Pentru a-i înregistra, folosim comanda de mai sus:</p> <p><code>ejabberdctl register admin exemplu.org 111</code><br /><code>ejabberdctl register admin1 exemplu.org 222</code><br /><code>ejabberdctl register admin2 jurnalpersonal.org 333</code></p> <p>Am înregistrat trei utilizatori: <code>admin@exemplu.org</code>, <code>admin1@exemplu.org</code> și <code>admin2@jurnalpersonal.org</code>, cu parolele <code>111</code>, <code>222</code> și respectiv <code>333</code>. Mai mulți utilizatori îi înregistrăm la fel, iar pe unii din ei, la dorință, îi putem specifica ca administratori în fișierul de configurare. Pentru a elimina, spre exemplu, utilizatorul <code>admin2</code> folosim comanda:</p> <p><code>ejabberdctl unregister admin2 jurnalpersonal.org</code></p> <p>Ejabberd oferă și un panou de administrare, care poate fi accesat la adresa<br /><code>http://localhost:5280/admin/</code> sau, spre exemplu, <code>http://jurnalpersonal.org:5280/admin/</code>. Vă autentificați cu <code>admin</code>, <code>admin1</code> sau <code>admin2</code>. </p> <h3><b>Comunicarea cu alte servere</b></h3> <p>Ca serverul dvs. să poată comunica și cu alte servere XMPP din rețea este necesar să setați înregistrările SRV ale adresei (în cazul nostru <code>exemplu.org</code> și <code>jurnalpersonal.org</code>) pentru care ați lansat serviciul XMPP: </p> <p> _xmpp-server Protocol: TCP Port: 5269<br /> _xmpp-client Protocol: TCP Port: 5222<br /> _jabber Protocol: TCP Port: 5269</p> <p>Nu uitați să deschideți porturile 5269, 5222 și 5280 pentru panoul de administrare. Conversații plăcute! :-)</p> </div></div></div><div class="field field-name-taxonomy-vocabulary-1 field-type-taxonomy-term-reference field-label-above clearfix"><h3 class="field-label">Meniu: </h3><ul class="links"><li class="taxonomy-term-reference-0"><a href="/ghiduri" typeof="skos:Concept" property="rdfs:label skos:prefLabel">Ghiduri</a></li></ul></div><div class="field field-name-taxonomy-vocabulary-3 field-type-taxonomy-term-reference field-label-above clearfix"><h3 class="field-label">Etichete: </h3><ul class="links"><li class="taxonomy-term-reference-0"><a href="/taxonomy/term/184" typeof="skos:Concept" property="rdfs:label skos:prefLabel">jabber</a></li><li class="taxonomy-term-reference-1"><a href="/taguri/mesagerie" typeof="skos:Concept" property="rdfs:label skos:prefLabel">Mesagerie</a></li><li class="taxonomy-term-reference-2"><a href="/taxonomy/term/160" typeof="skos:Concept" property="rdfs:label skos:prefLabel">Descentralizare</a></li><li class="taxonomy-term-reference-3"><a href="/taxonomy/term/183" typeof="skos:Concept" property="rdfs:label skos:prefLabel">xmpp</a></li></ul></div> Tue, 14 Feb 2012 15:05:43 +0000 Iurie Nistor 164 at http://fii-liber.ro http://fii-liber.ro/content/cum-se-instaleaz%C4%83-un-server-xmpp#comments